packages feed

KiCS 0.8.7 → 0.8.8

raw patch · 333 files changed

+33732/−124 lines, 333 filesdep +ghc-pathsdep +networkdep +processdep ~curry-frontendbuild-type:Customsetup-changed

Dependencies added: ghc-paths, network, process, random, unix

Dependency ranges changed: curry-frontend

Files

KiCS.cabal view
@@ -1,5 +1,5 @@ Name:          KiCS-Version:       0.8.7+Version:       0.8.8 Cabal-Version: >= 1.6 Author:        Bernd Braßel Maintainer:    Bernd Braßel@@ -7,14 +7,22 @@ License:       OtherLicense License-File:  LICENSE Category:      Compiler-build-type:    Simple+build-type:    Custom Synopsis:      A compiler from Curry to Haskell Description:   This package builds the Curry to Haskell compiler "kics".-               Note, that you need a functional curry module-               "Prelude.curry" to get started.-               The standard version of that file is contained-               in the package KiCS-libraries.+               This package also includes many Curry libraries.+               Have a look at the list of modules "Curry.Module.*" Stability:     experimental+extra-source-files: +   src/lib/Curry/Module/*.hs.include+Data-Dir:      src/lib/Curry/Module/.curry+Data-Files:    *.fcy+               *.fint+               *.efc+               *.acy+               *.uacy+               *.cy+                 Executable kics   main-is:        kics.hs@@ -27,29 +35,83 @@     old-time,     directory,     containers,+    ghc-paths,+    process,     curry-base >= 0.2.5,-    curry-frontend >= 0.2.5--Library-  hs-source-dirs: src-  Build-Depends:  -    syb-  Exposed-Modules:-    Curry.RunTimeSystem.Store,-    Curry.RunTimeSystem.BaseCurry,-    Curry.RunTimeSystem+    curry-frontend >= 0.2.6+  Other-Modules:     Curry.Compiler.Config     Curry.Compiler.CurryToHaskell     Curry.Compiler.SafeCalls     Curry.Compiler.Names     Curry.Compiler.ShowFlatCurry-  Other-Modules:     Curry.Compiler.KicsSubdir     Curry.Compiler.FunctionalProg     Curry.Compiler.ShowFunctionalProg     Curry.Compiler.PreTrans     Curry.Compiler.Simplification     Curry.Compiler.Brace++Library+  hs-source-dirs: src, src/lib+  Build-Depends:  +    base == 4.1.*,+    haskell98,+    directory,+    old-time,+    syb,+    network,+    process,+    unix,+    random+  Exposed-Modules:+    Curry.Files.KiCSPath+    Curry.RunTimeSystem++    Curry.Module.Prelude+    Curry.Module.Interactive+    Curry.Module.Char+    Curry.Module.Dequeue+    Curry.Module.Directory+    Curry.Module.FileGoodies+    Curry.Module.FiniteMap+    Curry.Module.Float+    Curry.Module.Global+    Curry.Module.GraphInductive+    Curry.Module.Integer+    Curry.Module.IO+    Curry.Module.IOExts+    Curry.Module.List+    Curry.Module.CSV+    Curry.Module.Maybe+    Curry.Module.AnsiCodes+    Curry.Module.Array+    Curry.Module.Parser+    Curry.Module.Pretty+    Curry.Module.Random+    Curry.Module.RandomExternal+    Curry.Module.RedBlackTree+    Curry.Module.SetRBT+    Curry.Module.Socket+    Curry.Module.Sort+    Curry.Module.StyledText+    Curry.Module.System+    Curry.Module.TableRBT+    Curry.Module.Time+    Curry.Module.ReadShowTerm+    Curry.Module.Meta+    Curry.Module.Read+    Curry.Module.EasyCheck+    Curry.Module.Assertion+    Curry.Module.Traversal+    Curry.Module.PropertyFile+    Curry.Module.Unsafe++  Other-Modules:+    Paths_KiCS+    Curry.RunTimeSystem.Store+    Curry.RunTimeSystem.BaseCurry+   
Setup.hs view
@@ -1,2 +1,70 @@+module Main where++import System.FilePath+ import Distribution.Simple-main = defaultMain+import Distribution.Simple.Setup as SS+import Distribution.Simple.Program+import Distribution.Simple.LocalBuildInfo+import Distribution.Simple.PreProcess+import Distribution.PackageDescription +import Distribution.Verbosity++import Curry.Files.CymakePath+import Curry.Files.KiCSPath++kics :: Program+kics = simpleProgram "kics"++cymake :: IO Program+cymake = do+  call <- getCymake+  return (simpleProgram (takeBaseName call))+            {programFindLocation = \_-> return (Just call)}++main :: IO ()+main = do+  cymakeProg <- cymake+  defaultMainWithHooks simpleUserHooks+    {hookedPrograms=kics:cymakeProg:hookedPrograms simpleUserHooks+    ,postConf=myPostConf+    ,hookedPreProcessors=[("curry",mkModule)]+    }++unflag = fromFlagOrDefault silent++requireProg :: SS.Flag Verbosity -> LocalBuildInfo -> IO Program -> IO ()+requireProg verb lbi prog = do+  p <- prog+  requireProgram (unflag verb) p AnyVersion (withPrograms lbi)+  return ()+ +callProg :: Verbosity -> LocalBuildInfo -> IO Program -> Args -> IO ()+callProg verb lbi prog args = do+  p <- prog+  rawSystemProgramConf verb p (withPrograms lbi) args+  +myPostConf :: Args -> ConfigFlags -> PackageDescription -> LocalBuildInfo -> IO ()+myPostConf args confFlags descrs lbi = do+  let require = requireProg (configVerbosity confFlags) lbi+  require (return kics)+  require cymake+  postConf simpleUserHooks args confFlags descrs lbi++mkModule :: BuildInfo -> LocalBuildInfo -> PreProcessor+mkModule buildInfo lbi = PreProcessor+  {platformIndependent = True+  ,runPreProcessor     = mkSimplePreProcessor (runKics lbi)}++runKics :: LocalBuildInfo -> FilePath -> FilePath -> Verbosity -> IO ()+runKics lbi infile outfile verb = do+  let call    = callProg deafening{-verb-} lbi+      datadir = takeDirectory infile+   -- nomake not supported+  mapM (\ format -> call cymake ["-e",'-':'-':format,"-i"++datadir,infile]) +       ["flat","extended-flat","acy","uacy","parse-only"] +  call (return kics) ["-nomake",--"-userlibpath","src/lib/Curry/Module/",+                      "-o",outfile,infile]+++
+ dist/build/Curry/Module/AnsiCodes.hs view
@@ -0,0 +1,233 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.AnsiCodes (module Curry.Module.AnsiCodes) where++import Curry.RunTimeSystem+import Curry.Module.Char+import Curry.Module.List+import Curry.Module.Prelude++++-- begin included++++-- end included++c_esc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_esc st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_cmd :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_cmd x1 st = (Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_esc(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('['))(Curry.Module.Prelude.List))(x1)(st))++++c_cursorPos :: (Curry t0,Curry t1) => t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_cursorPos x1 x2 st = Curry.Module.AnsiCodes.c_cmd(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x1)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(';'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('H'))(Curry.Module.Prelude.List))(st))(st))(st))(st)++++c_cursorHome :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_cursorHome st = Curry.Module.AnsiCodes.c_cmd((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('H'))(Curry.Module.Prelude.List))(st)++++c_moveCursor :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_moveCursor x1 x2 st = Curry.Module.AnsiCodes.c_cmd(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))(x1)(st))(st)++++c_cursorUp :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_cursorUp st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_moveCursor((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))(Curry.Module.Prelude.List)))++++c_cursorDown :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_cursorDown st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_moveCursor((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('B'))(Curry.Module.Prelude.List)))++++c_cursorFwd :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_cursorFwd st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_moveCursor((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))(Curry.Module.Prelude.List)))++++c_cursorBack :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_cursorBack st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_moveCursor((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('D'))(Curry.Module.Prelude.List)))++++c_saveCursor :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_saveCursor st = Curry.Module.AnsiCodes.c_cmd((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))(Curry.Module.Prelude.List))(st)++++c_restoreCursor :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_restoreCursor st = Curry.Module.AnsiCodes.c_cmd((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))(Curry.Module.Prelude.List))(st)++++c_clear :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_clear st = Curry.Module.AnsiCodes.c_cmd((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('2'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))(Curry.Module.Prelude.List)))(st)++++c_eraseLine :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_eraseLine st = Curry.Module.AnsiCodes.c_cmd((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))(Curry.Module.Prelude.List))(st)++++c_mode :: (Curry t0) => t0 -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_mode x1 x2 st = let {x3 = Curry.Module.AnsiCodes.c_cmd((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('0'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))(Curry.Module.Prelude.List)))(st)} in Curry.Module.AnsiCodes.c_cmd(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x1)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(x2)(Curry.Module.AnsiCodes.c_mode_case_3(x2)(x3)(Curry.Module.Prelude.c_apply(Curry.Module.AnsiCodes.c_isSuffixOf(x3)(st))(x2)(st))(st))(st))(st))(st))(st)++++c_isSuffixOf :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_isSuffixOf x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.List.c_isPrefixOf(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x1)(st))))(Curry.Module.Prelude.c_reverse(st))(st)++++c_bold :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bold st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)))++++c_underline :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_underline st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))++++c_revColors :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_revColors st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))++++c_concealed :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_concealed st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))++++c_black :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_black st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))++++c_red :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_red st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))++++c_green :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_green st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_yellow :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_yellow st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_blue :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_blue st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_magenta :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_magenta st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_cyan :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_cyan st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_white :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_white st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgBlack :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgBlack st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgRed :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgRed st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgGreen :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgGreen st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgYellow :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgYellow st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgBlue :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgBlue st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgMagenta :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgMagenta st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgCyan :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgCyan st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_bgWhite :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgWhite st = Curry.Module.Prelude.pf(Curry.Module.AnsiCodes.c_mode(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))++++c_ansiLength :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ansiLength x1 st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695(x1)(Curry.Module.Prelude.c_length(x1)(st))(st)++++c_ansiLength'46aux'4695 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ansiLength'46aux'4695 x1@Curry.Module.Prelude.List x2 st = x2+c_ansiLength'46aux'4695 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695_case_2(x2)(x3)(x4)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.AnsiCodes.c_esc(st))(st))(Curry.Module.Char.c_isDigit(Curry.Module.Prelude.op_33_33(x4)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(st)+c_ansiLength'46aux'4695 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.AnsiCodes.c_ansiLength'46aux'4695(x)(x2)(st))(i)(xs)(st)+c_ansiLength'46aux'4695 x x2 st = Curry.RunTimeSystem.patternFail("AnsiCodes.ansiLength.aux.95")(x)++++c_ansiLength'46aux'4695_case_2 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695(Curry.Module.Prelude.c_tail(Curry.Module.Prelude.c_tail(Curry.Module.Prelude.c_tail(Curry.Module.Prelude.c_tail(x4)(st))(st))(st))(st))(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(st))(st)+c_ansiLength'46aux'4695_case_2 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695_case_1(x2)(x3)(x4)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.AnsiCodes.c_esc(st))(st))(st)+c_ansiLength'46aux'4695_case_2 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.AnsiCodes.c_ansiLength'46aux'4695_case_2(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_ansiLength'46aux'4695_case_2 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("AnsiCodes.ansiLength.aux.95_case_2")(x)++++c_ansiLength'46aux'4695_case_1 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695(Curry.Module.Prelude.c_tail(Curry.Module.Prelude.c_tail(Curry.Module.Prelude.c_tail(x4)(st))(st))(st))(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(st))(st)+c_ansiLength'46aux'4695_case_1 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695_case_0(x2)(x4)(Curry.Module.Prelude.c_otherwise(st))(st)+c_ansiLength'46aux'4695_case_1 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.AnsiCodes.c_ansiLength'46aux'4695_case_1(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_ansiLength'46aux'4695_case_1 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("AnsiCodes.ansiLength.aux.95_case_1")(x)++++c_ansiLength'46aux'4695_case_0 x2 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.AnsiCodes.c_ansiLength'46aux'4695(x4)(x2)(st)+c_ansiLength'46aux'4695_case_0 x2 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.AnsiCodes.c_ansiLength'46aux'4695_case_0(x2)(x4)(x)(st))(i)(xs)(st)+c_ansiLength'46aux'4695_case_0 x2 x4 x st = Curry.RunTimeSystem.patternFail("AnsiCodes.ansiLength.aux.95_case_0")(x)++++c_mode_case_3 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_mode_case_3 x2 x3 x4@Curry.Module.Prelude.C_False st = x3+c_mode_case_3 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.AnsiCodes.c_mode_case_3(x2)(x3)(x)(st))(i)(xs)(st)+c_mode_case_3 x2 x3 x st = Curry.RunTimeSystem.patternFail("AnsiCodes.mode_case_3")(x)++
+ dist/build/Curry/Module/Array.hs view
@@ -0,0 +1,452 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Array (module Curry.Module.Array) where++import Curry.RunTimeSystem+import Curry.Module.Integer+import Curry.Module.Prelude++++-- begin included++++-- end included++data C_Array t0 = C_Array (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0)) (Curry.Module.Array.C_Entry t0)+  | C_ArrayFail Curry.RunTimeSystem.C_Exceptions+  | C_ArrayOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Array.C_Array t0))++data C_Entry t0 = C_Entry t0 (Curry.Module.Array.C_Entry t0) (Curry.Module.Array.C_Entry t0)+  | C_Empty+  | C_EntryFail Curry.RunTimeSystem.C_Exceptions+  | C_EntryOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Array.C_Entry t0))++instance (BaseCurry t0) => BaseCurry (Curry.Module.Array.C_Array t0) where+  nf f (Curry.Module.Array.C_Array x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Array.C_Array(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Array.C_Array x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Array.C_Array(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Array.C_ArrayOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.Array.C_Array(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(2)++  failed  = Curry.Module.Array.C_ArrayFail++  branching  = Curry.Module.Array.C_ArrayOr++  consKind (Curry.Module.Array.C_ArrayOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Array.C_ArrayFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Array.C_ArrayFail x) = x++  orRef (Curry.Module.Array.C_ArrayOr x _) = x++  branches (Curry.Module.Array.C_ArrayOr _ x) = x++++++instance (BaseCurry t0) => BaseCurry (Curry.Module.Array.C_Entry t0) where+  nf f (Curry.Module.Array.C_Entry x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Array.C_Entry(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Array.C_Entry x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Array.C_Entry(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Array.C_EntryOr(Curry.RunTimeSystem.mkRef(r)(3)(i))([Curry.Module.Array.C_Entry(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Array.C_Empty]))(3)++  failed  = Curry.Module.Array.C_EntryFail++  branching  = Curry.Module.Array.C_EntryOr++  consKind (Curry.Module.Array.C_EntryOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Array.C_EntryFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Array.C_EntryFail x) = x++  orRef (Curry.Module.Array.C_EntryOr x _) = x++  branches (Curry.Module.Array.C_EntryOr _ x) = x++++++instance (Curry t0) => Curry (Curry.Module.Array.C_Array t0) where+  strEq (Curry.Module.Array.C_Array x1 x2) (Curry.Module.Array.C_Array y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Array.C_Array x1 x2) (Curry.Module.Array.C_Array y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Array.C_Array x1 x2) st = Curry.Module.Array.C_Array(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))++  foldCurry f c (Curry.Module.Array.C_Array x1 x2) st = f(x1)(f(x2)(c)(st))(st)++  typeName _ = "Array"++  showQ d (Curry.Module.Array.C_Array x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Array.Array "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ _ (Curry.Module.Array.C_ArrayOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0) => Curry (Curry.Module.Array.C_Entry t0) where+  strEq (Curry.Module.Array.C_Entry x1 x2 x3) (Curry.Module.Array.C_Entry y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq Curry.Module.Array.C_Empty Curry.Module.Array.C_Empty st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Array.C_Entry x1 x2 x3) (Curry.Module.Array.C_Entry y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq Curry.Module.Array.C_Empty Curry.Module.Array.C_Empty st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Array.C_Entry x1 x2 x3) st = Curry.Module.Array.C_Entry(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))+  propagate f Curry.Module.Array.C_Empty st = Curry.Module.Array.C_Empty++  foldCurry f c (Curry.Module.Array.C_Entry x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)+  foldCurry f c Curry.Module.Array.C_Empty st = c++  typeName _ = "Entry"++  showQ d (Curry.Module.Array.C_Entry x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Array.Entry "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ _ Curry.Module.Array.C_Empty = Prelude.showString("Array.Empty")+  showQ _ (Curry.Module.Array.C_EntryOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Array.C_Array t0) where+  showsPrec d (Curry.Module.Array.C_Array x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Array "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec _ (Curry.Module.Array.C_ArrayOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Array.C_Entry t0) where+  showsPrec d (Curry.Module.Array.C_Entry x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Entry "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec _ Curry.Module.Array.C_Empty = Prelude.showString("Empty")+  showsPrec _ (Curry.Module.Array.C_EntryOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0) => Read (Curry.Module.Array.C_Array t0) where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Array.C_Array(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Array")("Array")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r)++++++instance (Read t0) => Read (Curry.Module.Array.C_Entry t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Array.C_Entry(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Array")("Entry")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Array.C_Empty)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Array")("Empty")(r)])(r))++++++c_emptyErrorArray :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0+c_emptyErrorArray st = Curry.Module.Array.c_emptyDefaultArray(Curry.Module.Prelude.pf(Curry.Module.Array.c_errorArray))(st)++++c_errorArray :: (Curry t0) => Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0+c_errorArray x1 st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x1)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('z'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))(Curry.Module.Prelude.List)))))))))))))))))(st))(st))(st)++++c_emptyDefaultArray :: (Curry t0) => (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0+c_emptyDefaultArray x1 st = Curry.Module.Array.C_Array(x1)(Curry.Module.Array.C_Empty)++++op_47_47 :: (Curry t0) => (Curry.Module.Array.C_Array t0) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0+op_47_47 x1@(Curry.Module.Array.C_Array x3 x4) x2 st = Curry.Module.Array.C_Array(x3)(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Array.c_'47'47'46_'35lambda2(x3)))(x4)(x2)(st))+op_47_47 (Curry.Module.Array.C_ArrayOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.op_47_47(x)(x2)(st))(i)(xs)(st)+op_47_47 x x2 st = Curry.RunTimeSystem.patternFail("Array.//")(x)++++c_'47'47'46_'35lambda2 :: (Curry t72) => (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t72)) -> (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t72) -> (Curry.Module.Array.C_Entry t72) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Entry t72+c_'47'47'46_'35lambda2 x1 x2@(Curry.Module.Prelude.T2 x4 x5) x3 st = Curry.Module.Array.c_at(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x3)(x4)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(x5)))(st)+c_'47'47'46_'35lambda2 x1 (Curry.Module.Prelude.T2Or i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_'47'47'46_'35lambda2(x1)(x)(x3)(st))(i)(xs)(st)+c_'47'47'46_'35lambda2 x1 x x3 st = Curry.RunTimeSystem.patternFail("Array.//._#lambda2")(x)++++c_update :: (Curry t0) => (Curry.Module.Array.C_Array t0) -> Curry.Module.Prelude.C_Int -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0+c_update x1@(Curry.Module.Array.C_Array x4 x5) x2 x3 st = Curry.Module.Array.C_Array(x4)(Curry.Module.Array.c_at(Curry.Module.Prelude.c_apply(x4)(x2)(st))(x5)(x2)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(x3)))(st))+c_update (Curry.Module.Array.C_ArrayOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_update(x)(x2)(x3)(st))(i)(xs)(st)+c_update x x2 x3 st = Curry.RunTimeSystem.patternFail("Array.update")(x)++++c_applyAt :: (Curry t0) => (Curry.Module.Array.C_Array t0) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0+c_applyAt x1@(Curry.Module.Array.C_Array x4 x5) x2 x3 st = Curry.Module.Array.C_Array(x4)(Curry.Module.Array.c_at(Curry.Module.Prelude.c_apply(x4)(x2)(st))(x5)(x2)(x3)(st))+c_applyAt (Curry.Module.Array.C_ArrayOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_applyAt(x)(x2)(x3)(st))(i)(xs)(st)+c_applyAt x x2 x3 st = Curry.RunTimeSystem.patternFail("Array.applyAt")(x)++++c_at :: (Curry t0) => t0 -> (Curry.Module.Array.C_Entry t0) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Entry t0+c_at x1 x2@Curry.Module.Array.C_Empty x3 x4 st = Curry.Module.Array.c_at_case_14(x1)(x3)(x4)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Zero)(st))(st)+c_at x1 x2@(Curry.Module.Array.C_Entry x5 x6 x7) x3 x4 st = Curry.Module.Array.c_at_case_11(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Zero)(st))(st)+c_at x1 (Curry.Module.Array.C_EntryOr i xs) x3 x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at(x1)(x)(x3)(x4)(st))(i)(xs)(st)+c_at x1 x x3 x4 st = Curry.RunTimeSystem.patternFail("Array.at")(x)++++op_33 :: (Curry t0) => (Curry.Module.Array.C_Array t0) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0+op_33 x1@(Curry.Module.Array.C_Array x3 x4) x2 st = Curry.Module.Array.c_from(Curry.Module.Prelude.c_apply(x3)(x2)(st))(x4)(x2)(st)+op_33 (Curry.Module.Array.C_ArrayOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.op_33(x)(x2)(st))(i)(xs)(st)+op_33 x x2 st = Curry.RunTimeSystem.patternFail("Array.!")(x)++++c_from :: (Curry t0) => t0 -> (Curry.Module.Array.C_Entry t0) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0+c_from x1 x2@Curry.Module.Array.C_Empty x3 st = x1+c_from x1 x2@(Curry.Module.Array.C_Entry x4 x5 x6) x3 st = Curry.Module.Array.c_from_case_8(x1)(x3)(x4)(x5)(x6)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Zero)(st))(st)+c_from x1 (Curry.Module.Array.C_EntryOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_from(x1)(x)(x3)(st))(i)(xs)(st)+c_from x1 x x3 st = Curry.RunTimeSystem.patternFail("Array.from")(x)++++c_split :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t0)+c_split x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_split x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Array.c_split_case_5(x2)(x3)(st)+c_split (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_split(x)(st))(i)(xs)(st)+c_split x st = Curry.RunTimeSystem.patternFail("Array.split")(x)++++c_split'46_'35selFP3'35xs :: (Curry t126) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t126) (Curry.Module.Prelude.List t126)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t126+c_split'46_'35selFP3'35xs x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_split'46_'35selFP3'35xs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_split'46_'35selFP3'35xs(x)(st))(i)(xs)(st)+c_split'46_'35selFP3'35xs x st = Curry.RunTimeSystem.patternFail("Array.split._#selFP3#xs")(x)++++c_split'46_'35selFP4'35ys :: (Curry t126) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t126) (Curry.Module.Prelude.List t126)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t126+c_split'46_'35selFP4'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_split'46_'35selFP4'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_split'46_'35selFP4'35ys(x)(st))(i)(xs)(st)+c_split'46_'35selFP4'35ys x st = Curry.RunTimeSystem.patternFail("Array.split._#selFP4#ys")(x)++++c_listToDefaultArray :: (Curry t0) => (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0)+c_listToDefaultArray x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Array.C_Array(x1)))(Curry.Module.Prelude.pf(Curry.Module.Array.c_listToArray))(st)++++c_listToErrorArray :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0)+c_listToErrorArray st = Curry.Module.Array.c_listToDefaultArray(Curry.Module.Prelude.pf(Curry.Module.Array.c_errorArray))(st)++++c_listToArray :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Entry t0+c_listToArray x1@Curry.Module.Prelude.List st = Curry.Module.Array.C_Empty+c_listToArray x1@((Curry.Module.Prelude.:<) x2 x3) st = let {x4 = Curry.Module.Array.c_split(x3)(st)} in Curry.Module.Array.C_Entry(x2)(Curry.Module.Array.c_listToArray(Curry.Module.Array.c_listToArray'46_'35selFP6'35ys(x4)(st))(st))(Curry.Module.Array.c_listToArray(Curry.Module.Array.c_listToArray'46_'35selFP7'35zs(x4)(st))(st))+c_listToArray (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_listToArray(x)(st))(i)(xs)(st)+c_listToArray x st = Curry.RunTimeSystem.patternFail("Array.listToArray")(x)++++c_listToArray'46_'35selFP6'35ys :: (Curry t137) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t137) (Curry.Module.Prelude.List t137)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t137+c_listToArray'46_'35selFP6'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_listToArray'46_'35selFP6'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_listToArray'46_'35selFP6'35ys(x)(st))(i)(xs)(st)+c_listToArray'46_'35selFP6'35ys x st = Curry.RunTimeSystem.patternFail("Array.listToArray._#selFP6#ys")(x)++++c_listToArray'46_'35selFP7'35zs :: (Curry t137) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t137) (Curry.Module.Prelude.List t137)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t137+c_listToArray'46_'35selFP7'35zs x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_listToArray'46_'35selFP7'35zs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_listToArray'46_'35selFP7'35zs(x)(st))(i)(xs)(st)+c_listToArray'46_'35selFP7'35zs x st = Curry.RunTimeSystem.patternFail("Array.listToArray._#selFP7#zs")(x)++++c_combine :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t2))) -> (Curry.Module.Array.C_Array t0) -> (Curry.Module.Array.C_Array t1) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t2+c_combine x1 x2@(Curry.Module.Array.C_Array x4 x5) x3 st = Curry.Module.Array.c_combine_case_4(x1)(x4)(x5)(x3)(st)+c_combine x1 (Curry.Module.Array.C_ArrayOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_combine(x1)(x)(x3)(st))(i)(xs)(st)+c_combine x1 x x3 st = Curry.RunTimeSystem.patternFail("Array.combine")(x)++++c_combine'46_'35lambda3 :: (Curry t252,Curry t255,Curry t263) => (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t252)) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t255)) -> (Curry.Module.Prelude.Prim (t252 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t255 -> Curry.RunTimeSystem.State -> t263))) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t263+c_combine'46_'35lambda3 x1 x2 x3 x4 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(Curry.Module.Prelude.c_apply(x1)(x4)(st))(st))(Curry.Module.Prelude.c_apply(x2)(x4)(st))(st)++++c_comb :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t2))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0)) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t1)) -> (Curry.Module.Array.C_Entry t0) -> (Curry.Module.Array.C_Entry t1) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Entry t2+c_comb x1 x2 x3 x4@Curry.Module.Array.C_Empty x5 x6 x7 st = Curry.Module.Array.c_comb_case_3(x1)(x2)(x3)(x6)(x7)(x5)(st)+c_comb x1 x2 x3 x4@(Curry.Module.Array.C_Entry x11 x12 x13) x5 x6 x7 st = Curry.Module.Array.c_comb_case_2(x1)(x2)(x3)(x6)(x7)(x11)(x12)(x13)(x5)(st)+c_comb x1 x2 x3 (Curry.Module.Array.C_EntryOr i xs) x5 x6 x7 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_comb(x1)(x2)(x3)(x)(x5)(x6)(x7)(st))(i)(xs)(st)+c_comb x1 x2 x3 x x5 x6 x7 st = Curry.RunTimeSystem.patternFail("Array.comb")(x)++++c_combineSimilar :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.Array.C_Array t0) -> (Curry.Module.Array.C_Array t0) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Array t0+c_combineSimilar x1 x2@(Curry.Module.Array.C_Array x4 x5) x3 st = Curry.Module.Array.c_combineSimilar_case_1(x1)(x4)(x5)(x3)(st)+c_combineSimilar x1 (Curry.Module.Array.C_ArrayOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_combineSimilar(x1)(x)(x3)(st))(i)(xs)(st)+c_combineSimilar x1 x x3 st = Curry.RunTimeSystem.patternFail("Array.combineSimilar")(x)++++c_combSim :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.Array.C_Entry t0) -> (Curry.Module.Array.C_Entry t0) -> Curry.RunTimeSystem.State -> Curry.Module.Array.C_Entry t0+c_combSim x1 x2@Curry.Module.Array.C_Empty x3 st = x3+c_combSim x1 x2@(Curry.Module.Array.C_Entry x4 x5 x6) x3 st = Curry.Module.Array.c_combSim_case_0(x1)(x2)(x4)(x5)(x6)(x3)(st)+c_combSim x1 (Curry.Module.Array.C_EntryOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_combSim(x1)(x)(x3)(st))(i)(xs)(st)+c_combSim x1 x x3 st = Curry.RunTimeSystem.patternFail("Array.combSim")(x)++++c_foldArray :: (Curry t0,Curry t1) => t0 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Array.C_Array t1) -> Curry.RunTimeSystem.State -> t0+c_foldArray x1 x2 x3@(Curry.Module.Array.C_Array x4 x5) st = Curry.Module.Array.c_foldEntries(x1)(x2)(x5)(st)+c_foldArray x1 x2 (Curry.Module.Array.C_ArrayOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_foldArray(x1)(x2)(x)(st))(i)(xs)(st)+c_foldArray x1 x2 x st = Curry.RunTimeSystem.patternFail("Array.foldArray")(x)++++c_foldEntries :: (Curry t0,Curry t1) => t0 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Array.C_Entry t1) -> Curry.RunTimeSystem.State -> t0+c_foldEntries x1 x2 x3@Curry.Module.Array.C_Empty st = x1+c_foldEntries x1 x2 x3@(Curry.Module.Array.C_Entry x4 x5 x6) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(Curry.Module.Array.c_foldEntries(x1)(x2)(x5)(st))(st))(Curry.Module.Array.c_foldEntries(x1)(x2)(x6)(st))(st)+c_foldEntries x1 x2 (Curry.Module.Array.C_EntryOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_foldEntries(x1)(x2)(x)(st))(i)(xs)(st)+c_foldEntries x1 x2 x st = Curry.RunTimeSystem.patternFail("Array.foldEntries")(x)++++c_arrayToList :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Array.C_Array t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_arrayToList st = Curry.Module.Prelude.pf(Curry.Module.Array.c_foldArray(Curry.Module.Prelude.List)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.Array.c_arrayToList'46_'35lambda4)))++++c_arrayToList'46_'35lambda4 :: (Curry t345) => t345 -> (Curry.Module.Prelude.List t345) -> (Curry.Module.Prelude.List t345) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t345+c_arrayToList'46_'35lambda4 x1 x2 x3 st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.op_43_43(x2)(x3)(st))++++c_combSim_case_0 x1 x2 x4 x5 x6 x3@Curry.Module.Array.C_Empty st = x2+c_combSim_case_0 x1 x2 x4 x5 x6 x3@(Curry.Module.Array.C_Entry x7 x8 x9) st = Curry.Module.Array.C_Entry(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x7)(st))(Curry.Module.Array.c_combSim(x1)(x5)(x8)(st))(Curry.Module.Array.c_combSim(x1)(x6)(x9)(st))+c_combSim_case_0 x1 x2 x4 x5 x6 (Curry.Module.Array.C_EntryOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_combSim_case_0(x1)(x2)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_combSim_case_0 x1 x2 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("Array.combSim_case_0")(x)++++c_combineSimilar_case_1 x1 x4 x5 x3@(Curry.Module.Array.C_Array x6 x7) st = Curry.Module.Array.C_Array(x4)(Curry.Module.Array.c_combSim(x1)(x5)(x7)(st))+c_combineSimilar_case_1 x1 x4 x5 (Curry.Module.Array.C_ArrayOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_combineSimilar_case_1(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_combineSimilar_case_1 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("Array.combineSimilar_case_1")(x)++++c_comb_case_2 x1 x2 x3 x6 x7 x11 x12 x13 x5@Curry.Module.Array.C_Empty st = Curry.Module.Array.C_Entry(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x11)(st))(Curry.Module.Prelude.c_apply(x3)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.op_43(x6)(x7)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st))(Curry.Module.Array.c_comb(x1)(x2)(x3)(x12)(Curry.Module.Array.C_Empty)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x6)(st))(x7)(st))(Curry.Module.Array.c_comb(x1)(x2)(x3)(x13)(Curry.Module.Array.C_Empty)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x6)(st))(Curry.Module.Prelude.op_43(x7)(x6)(st))(st))+c_comb_case_2 x1 x2 x3 x6 x7 x11 x12 x13 x5@(Curry.Module.Array.C_Entry x14 x15 x16) st = Curry.Module.Array.C_Entry(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x11)(st))(x14)(st))(Curry.Module.Array.c_comb(x1)(x2)(x3)(x12)(x15)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x6)(st))(x7)(st))(Curry.Module.Array.c_comb(x1)(x2)(x3)(x13)(x16)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x6)(st))(Curry.Module.Prelude.op_43(x7)(x6)(st))(st))+c_comb_case_2 x1 x2 x3 x6 x7 x11 x12 x13 (Curry.Module.Array.C_EntryOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_comb_case_2(x1)(x2)(x3)(x6)(x7)(x11)(x12)(x13)(x)(st))(i)(xs)(st)+c_comb_case_2 x1 x2 x3 x6 x7 x11 x12 x13 x st = Curry.RunTimeSystem.patternFail("Array.comb_case_2")(x)++++c_comb_case_3 x1 x2 x3 x6 x7 x5@Curry.Module.Array.C_Empty st = Curry.Module.Array.C_Empty+c_comb_case_3 x1 x2 x3 x6 x7 x5@(Curry.Module.Array.C_Entry x8 x9 x10) st = Curry.Module.Array.C_Entry(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.op_43(x6)(x7)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st))(x8)(st))(Curry.Module.Array.c_comb(x1)(x2)(x3)(Curry.Module.Array.C_Empty)(x9)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x6)(st))(x7)(st))(Curry.Module.Array.c_comb(x1)(x2)(x3)(Curry.Module.Array.C_Empty)(x10)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x6)(st))(Curry.Module.Prelude.op_43(x7)(x6)(st))(st))+c_comb_case_3 x1 x2 x3 x6 x7 (Curry.Module.Array.C_EntryOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_comb_case_3(x1)(x2)(x3)(x6)(x7)(x)(st))(i)(xs)(st)+c_comb_case_3 x1 x2 x3 x6 x7 x st = Curry.RunTimeSystem.patternFail("Array.comb_case_3")(x)++++c_combine_case_4 x1 x4 x5 x3@(Curry.Module.Array.C_Array x6 x7) st = Curry.Module.Array.C_Array(Curry.Module.Prelude.pf(Curry.Module.Array.c_combine'46_'35lambda3(x4)(x6)(x1)))(Curry.Module.Array.c_comb(x1)(x4)(x6)(x5)(x7)(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))+c_combine_case_4 x1 x4 x5 (Curry.Module.Array.C_ArrayOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_combine_case_4(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_combine_case_4 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("Array.combine_case_4")(x)++++c_split_case_5 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.List))(Curry.Module.Prelude.List)+c_split_case_5 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = let {x6 = Curry.Module.Array.c_split(x5)(st)} in Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x2)(Curry.Module.Array.c_split'46_'35selFP3'35xs(x6)(st)))((Curry.Module.Prelude.:<)(x4)(Curry.Module.Array.c_split'46_'35selFP4'35ys(x6)(st)))+c_split_case_5 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_split_case_5(x2)(x)(st))(i)(xs)(st)+c_split_case_5 x2 x st = Curry.RunTimeSystem.patternFail("Array.split_case_5")(x)++++c_from_case_8 x1 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_True st = x4+c_from_case_8 x1 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Array.c_from_case_7(x1)(x3)(x5)(x6)(Curry.Module.Integer.c_odd(x3)(st))(st)+c_from_case_8 x1 x3 x4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_from_case_8(x1)(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_from_case_8 x1 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("Array.from_case_8")(x)++++c_from_case_7 x1 x3 x5 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.Array.c_from(x1)(x5)(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st)+c_from_case_7 x1 x3 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Array.c_from_case_6(x1)(x3)(x6)(Curry.Module.Prelude.c_otherwise(st))(st)+c_from_case_7 x1 x3 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_from_case_7(x1)(x3)(x5)(x6)(x)(st))(i)(xs)(st)+c_from_case_7 x1 x3 x5 x6 x st = Curry.RunTimeSystem.patternFail("Array.from_case_7")(x)++++c_from_case_6 x1 x3 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.Array.c_from(x1)(x6)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)+c_from_case_6 x1 x3 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_from_case_6(x1)(x3)(x6)(x)(st))(i)(xs)(st)+c_from_case_6 x1 x3 x6 x st = Curry.RunTimeSystem.patternFail("Array.from_case_6")(x)++++c_at_case_11 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Array.C_Entry(Curry.Module.Prelude.c_apply(x4)(x5)(st))(x6)(x7)+c_at_case_11 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.Array.c_at_case_10(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Integer.c_odd(x3)(st))(st)+c_at_case_11 x1 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at_case_11(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_at_case_11 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Array.at_case_11")(x)++++c_at_case_10 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Array.C_Entry(x5)(Curry.Module.Array.c_at(x1)(x6)(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(x4)(st))(x7)+c_at_case_10 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.Array.c_at_case_9(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_at_case_10 x1 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at_case_10(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_at_case_10 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Array.at_case_10")(x)++++c_at_case_9 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Array.C_Entry(x5)(x6)(Curry.Module.Array.c_at(x1)(x7)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x4)(st))+c_at_case_9 x1 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at_case_9(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_at_case_9 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Array.at_case_9")(x)++++c_at_case_14 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Array.C_Entry(Curry.Module.Prelude.c_apply(x4)(x1)(st))(Curry.Module.Array.C_Empty)(Curry.Module.Array.C_Empty)+c_at_case_14 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Array.c_at_case_13(x1)(x3)(x4)(Curry.Module.Integer.c_odd(x3)(st))(st)+c_at_case_14 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at_case_14(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_at_case_14 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Array.at_case_14")(x)++++c_at_case_13 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Array.C_Entry(x1)(Curry.Module.Array.c_at(x1)(Curry.Module.Array.C_Empty)(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(x4)(st))(Curry.Module.Array.C_Empty)+c_at_case_13 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Array.c_at_case_12(x1)(x3)(x4)(Curry.Module.Prelude.c_otherwise(st))(st)+c_at_case_13 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at_case_13(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_at_case_13 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Array.at_case_13")(x)++++c_at_case_12 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Array.C_Entry(x1)(Curry.Module.Array.C_Empty)(Curry.Module.Array.c_at(x1)(Curry.Module.Array.C_Empty)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x4)(st))+c_at_case_12 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Array.c_at_case_12(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_at_case_12 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Array.at_case_12")(x)++
+ dist/build/Curry/Module/Assertion.hs view
@@ -0,0 +1,447 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Assertion (module Curry.Module.Assertion) where++import Curry.RunTimeSystem+import Curry.Module.IO+import Curry.Module.List+import Curry.Module.Prelude++++-- begin included++++-- end included++data C_Assertion t0 = C_AssertTrue (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool+  | C_AssertEqual (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) t0 t0+  | C_AssertValues (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) t0 (Curry.Module.Prelude.List t0)+  | C_AssertSolutions (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)) (Curry.Module.Prelude.List t0)+  | C_AssertIO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.C_IO t0) t0+  | C_AssertEqualIO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.C_IO t0) (Curry.Module.Prelude.C_IO t0)+  | C_AssertionFail Curry.RunTimeSystem.C_Exceptions+  | C_AssertionOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Assertion.C_Assertion t0))++data C_ProtocolMsg = C_TestModule (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+  | C_TestCase (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool+  | C_TestFinished+  | C_TestCompileError+  | C_ProtocolMsgFail Curry.RunTimeSystem.C_Exceptions+  | C_ProtocolMsgOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Assertion.C_ProtocolMsg)++instance (BaseCurry t0) => BaseCurry (Curry.Module.Assertion.C_Assertion t0) where+  nf f (Curry.Module.Assertion.C_AssertTrue x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Assertion.C_AssertTrue(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertEqual(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Assertion.C_AssertValues x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertValues(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertSolutions(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Assertion.C_AssertIO x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertIO(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertEqualIO(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Assertion.C_AssertTrue x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Assertion.C_AssertTrue(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertEqual(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Assertion.C_AssertValues x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertValues(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertSolutions(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Assertion.C_AssertIO x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertIO(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Assertion.C_AssertEqualIO(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Assertion.C_AssertionOr(Curry.RunTimeSystem.mkRef(r)(3)(i))([Curry.Module.Assertion.C_AssertTrue(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_AssertEqual(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_AssertValues(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_AssertSolutions(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_AssertIO(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_AssertEqualIO(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(3)++  failed  = Curry.Module.Assertion.C_AssertionFail++  branching  = Curry.Module.Assertion.C_AssertionOr++  consKind (Curry.Module.Assertion.C_AssertionOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Assertion.C_AssertionFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Assertion.C_AssertionFail x) = x++  orRef (Curry.Module.Assertion.C_AssertionOr x _) = x++  branches (Curry.Module.Assertion.C_AssertionOr _ x) = x++++++instance BaseCurry Curry.Module.Assertion.C_ProtocolMsg where+  nf f (Curry.Module.Assertion.C_TestModule x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Assertion.C_TestModule(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Assertion.C_TestCase x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Assertion.C_TestCase(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Assertion.C_TestModule x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Assertion.C_TestModule(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Assertion.C_TestCase x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Assertion.C_TestCase(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Assertion.C_ProtocolMsgOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.Assertion.C_TestModule(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_TestCase(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Assertion.C_TestFinished,Curry.Module.Assertion.C_TestCompileError]))(2)++  failed  = Curry.Module.Assertion.C_ProtocolMsgFail++  branching  = Curry.Module.Assertion.C_ProtocolMsgOr++  consKind (Curry.Module.Assertion.C_ProtocolMsgOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Assertion.C_ProtocolMsgFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Assertion.C_ProtocolMsgFail x) = x++  orRef (Curry.Module.Assertion.C_ProtocolMsgOr x _) = x++  branches (Curry.Module.Assertion.C_ProtocolMsgOr _ x) = x++++++instance (Curry t0) => Curry (Curry.Module.Assertion.C_Assertion t0) where+  strEq (Curry.Module.Assertion.C_AssertTrue x1 x2) (Curry.Module.Assertion.C_AssertTrue y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) (Curry.Module.Assertion.C_AssertEqual y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq (Curry.Module.Assertion.C_AssertValues x1 x2 x3) (Curry.Module.Assertion.C_AssertValues y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) (Curry.Module.Assertion.C_AssertSolutions y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq (Curry.Module.Assertion.C_AssertIO x1 x2 x3) (Curry.Module.Assertion.C_AssertIO y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) (Curry.Module.Assertion.C_AssertEqualIO y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Assertion.C_AssertTrue x1 x2) (Curry.Module.Assertion.C_AssertTrue y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) (Curry.Module.Assertion.C_AssertEqual y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq (Curry.Module.Assertion.C_AssertValues x1 x2 x3) (Curry.Module.Assertion.C_AssertValues y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) (Curry.Module.Assertion.C_AssertSolutions y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq (Curry.Module.Assertion.C_AssertIO x1 x2 x3) (Curry.Module.Assertion.C_AssertIO y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) (Curry.Module.Assertion.C_AssertEqualIO y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Assertion.C_AssertTrue x1 x2) st = Curry.Module.Assertion.C_AssertTrue(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) st = Curry.Module.Assertion.C_AssertEqual(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))+  propagate f (Curry.Module.Assertion.C_AssertValues x1 x2 x3) st = Curry.Module.Assertion.C_AssertValues(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))+  propagate f (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) st = Curry.Module.Assertion.C_AssertSolutions(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))+  propagate f (Curry.Module.Assertion.C_AssertIO x1 x2 x3) st = Curry.Module.Assertion.C_AssertIO(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))+  propagate f (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) st = Curry.Module.Assertion.C_AssertEqualIO(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))++  foldCurry f c (Curry.Module.Assertion.C_AssertTrue x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)+  foldCurry f c (Curry.Module.Assertion.C_AssertValues x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)+  foldCurry f c (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)+  foldCurry f c (Curry.Module.Assertion.C_AssertIO x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)+  foldCurry f c (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)++  typeName _ = "Assertion"++  showQ d (Curry.Module.Assertion.C_AssertTrue x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.AssertTrue "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ d (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.AssertEqual "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ d (Curry.Module.Assertion.C_AssertValues x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.AssertValues "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ d (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.AssertSolutions "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ d (Curry.Module.Assertion.C_AssertIO x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.AssertIO "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ d (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.AssertEqualIO "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ _ (Curry.Module.Assertion.C_AssertionOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Assertion.C_ProtocolMsg where+  strEq (Curry.Module.Assertion.C_TestModule x1) (Curry.Module.Assertion.C_TestModule y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Assertion.C_TestCase x1 x2) (Curry.Module.Assertion.C_TestCase y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq Curry.Module.Assertion.C_TestFinished Curry.Module.Assertion.C_TestFinished st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.Assertion.C_TestCompileError Curry.Module.Assertion.C_TestCompileError st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Assertion.C_TestModule x1) (Curry.Module.Assertion.C_TestModule y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Assertion.C_TestCase x1 x2) (Curry.Module.Assertion.C_TestCase y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq Curry.Module.Assertion.C_TestFinished Curry.Module.Assertion.C_TestFinished st = Curry.Module.Prelude.C_True+  eq Curry.Module.Assertion.C_TestCompileError Curry.Module.Assertion.C_TestCompileError st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Assertion.C_TestModule x1) st = Curry.Module.Assertion.C_TestModule(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Assertion.C_TestCase x1 x2) st = Curry.Module.Assertion.C_TestCase(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f Curry.Module.Assertion.C_TestFinished st = Curry.Module.Assertion.C_TestFinished+  propagate f Curry.Module.Assertion.C_TestCompileError st = Curry.Module.Assertion.C_TestCompileError++  foldCurry f c (Curry.Module.Assertion.C_TestModule x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Assertion.C_TestCase x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c Curry.Module.Assertion.C_TestFinished st = c+  foldCurry f c Curry.Module.Assertion.C_TestCompileError st = c++  typeName _ = "ProtocolMsg"++  showQ d (Curry.Module.Assertion.C_TestModule x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.TestModule "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Assertion.C_TestCase x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Assertion.TestCase "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ _ Curry.Module.Assertion.C_TestFinished = Prelude.showString("Assertion.TestFinished")+  showQ _ Curry.Module.Assertion.C_TestCompileError = Prelude.showString("Assertion.TestCompileError")+  showQ _ (Curry.Module.Assertion.C_ProtocolMsgOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Assertion.C_Assertion t0) where+  showsPrec d (Curry.Module.Assertion.C_AssertTrue x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertTrue "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec d (Curry.Module.Assertion.C_AssertEqual x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertEqual "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec d (Curry.Module.Assertion.C_AssertValues x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertValues "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec d (Curry.Module.Assertion.C_AssertSolutions x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertSolutions "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec d (Curry.Module.Assertion.C_AssertIO x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertIO "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec d (Curry.Module.Assertion.C_AssertEqualIO x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertEqualIO "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec _ (Curry.Module.Assertion.C_AssertionOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Assertion.C_ProtocolMsg where+  showsPrec d (Curry.Module.Assertion.C_TestModule x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("TestModule "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Assertion.C_TestCase x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("TestCase "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec _ Curry.Module.Assertion.C_TestFinished = Prelude.showString("TestFinished")+  showsPrec _ Curry.Module.Assertion.C_TestCompileError = Prelude.showString("TestCompileError")+  showsPrec _ (Curry.Module.Assertion.C_ProtocolMsgOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0) => Read (Curry.Module.Assertion.C_Assertion t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_AssertTrue(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("AssertTrue")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_AssertEqual(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("AssertEqual")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_AssertValues(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("AssertValues")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_AssertSolutions(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("AssertSolutions")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_AssertIO(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("AssertIO")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_AssertEqualIO(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("AssertEqualIO")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r))))))++++++instance Read Curry.Module.Assertion.C_ProtocolMsg where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_TestModule(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("TestModule")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Assertion.C_TestCase(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("TestCase")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Assertion.C_TestFinished)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("TestFinished")(r)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Assertion.C_TestCompileError)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Assertion")("TestCompileError")(r)])(r))))++++++c_seqStrActions :: (Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_seqStrActions x1 x2 st = Curry.Module.Prelude.op_62_62_61(x1)(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_seqStrActions'46_'35lambda2(x2)))(st)++++c_seqStrActions'46_'35lambda2 :: (Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_seqStrActions'46_'35lambda2 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.op_62_62_61(x1)(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_seqStrActions'46_'35lambda2'46_'35lambda3(x4)(x3)))(st)+c_seqStrActions'46_'35lambda2 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_seqStrActions'46_'35lambda2(x1)(x)(st))(i)(xs)(st)+c_seqStrActions'46_'35lambda2 x1 x st = Curry.RunTimeSystem.patternFail("Assertion.seqStrActions._#lambda2")(x)++++c_seqStrActions'46_'35lambda2'46_'35lambda3 :: Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_seqStrActions'46_'35lambda2'46_'35lambda3 x1 x2 x3@(Curry.Module.Prelude.T2 x4 x5) st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43(x2)(x4)(st))(Curry.Module.Prelude.op_38_38(x1)(x5)(st)))(st)+c_seqStrActions'46_'35lambda2'46_'35lambda3 x1 x2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_seqStrActions'46_'35lambda2'46_'35lambda3(x1)(x2)(x)(st))(i)(xs)(st)+c_seqStrActions'46_'35lambda2'46_'35lambda3 x1 x2 x st = Curry.RunTimeSystem.patternFail("Assertion.seqStrActions._#lambda2._#lambda3")(x)++++c_checkAssertion :: (Curry t0) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Assertion.C_Assertion t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertion x1 x2@(Curry.Module.Assertion.C_AssertTrue x3 x4) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_catchFail(Curry.Module.Assertion.c_checkAssertTrue(x3)(x4)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x3)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st))(st))(x1)(st)+c_checkAssertion x1 x2@(Curry.Module.Assertion.C_AssertEqual x5 x6 x7) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_catchFail(Curry.Module.Assertion.c_checkAssertEqual(x5)(x6)(x7)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x5)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st))(st))(x1)(st)+c_checkAssertion x1 x2@(Curry.Module.Assertion.C_AssertValues x8 x9 x10) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_catchFail(Curry.Module.Assertion.c_checkAssertValues(x8)(x9)(x10)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x8)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st))(st))(x1)(st)+c_checkAssertion x1 x2@(Curry.Module.Assertion.C_AssertSolutions x11 x12 x13) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_catchFail(Curry.Module.Assertion.c_checkAssertSolutions(x11)(x12)(x13)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x11)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st))(st))(x1)(st)+c_checkAssertion x1 x2@(Curry.Module.Assertion.C_AssertIO x14 x15 x16) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_catchFail(Curry.Module.Assertion.c_checkAssertIO(x14)(x15)(x16)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x14)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st))(st))(x1)(st)+c_checkAssertion x1 x2@(Curry.Module.Assertion.C_AssertEqualIO x17 x18 x19) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_catchFail(Curry.Module.Assertion.c_checkAssertEqualIO(x17)(x18)(x19)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x17)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st))(st))(x1)(st)+c_checkAssertion x1 (Curry.Module.Assertion.C_AssertionOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertion(x1)(x)(st))(i)(xs)(st)+c_checkAssertion x1 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertion")(x)++++c_checkAssertTrue :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertTrue x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(Curry.Module.Prelude.C_True))(st)+c_checkAssertTrue x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))(st))(st))(Curry.Module.Prelude.C_False))(st)+c_checkAssertTrue x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertTrue(x1)(x)(st))(i)(xs)(st)+c_checkAssertTrue x1 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertTrue")(x)++++c_checkAssertEqual :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertEqual x1 x2 x3 st = Curry.Module.Assertion.c_checkAssertEqual_case_5(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x2)(x3)(st))(st)++++c_checkAssertValues :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertValues x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_getSearchTree(x2)(st))(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_checkAssertValues'46_'35lambda4(x1)(x3)))(st)++++c_checkAssertValues'46_'35lambda4 :: (Curry t42) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List t42) -> (Curry.Module.Prelude.C_SearchTree t42) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertValues'46_'35lambda4 x1 x2 x3 st = let {x4 = Curry.Module.Prelude.c_allValuesB(x3)(st)} in Curry.Module.Assertion.c_checkAssertValues'46_'35lambda4_case_4(x1)(x2)(x4)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.c_null(Curry.Module.List.op_92_92(x4)(x2)(st))(st))(Curry.Module.Prelude.c_null(Curry.Module.List.op_92_92(x2)(x4)(st))(st))(st))(st)++++c_checkAssertSolutions :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertSolutions x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_getSearchTree(Curry.RunTimeSystem.freeF(\ x4 -> Curry.Module.Prelude.T2(x4)(Curry.Module.Prelude.c_apply(x2)(x4)(st))))(st))(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_checkAssertSolutions'46_'35lambda5(x1)(x3)))(st)++++c_checkAssertSolutions'46_'35lambda5 :: (Curry t73) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List t73) -> (Curry.Module.Prelude.C_SearchTree (Curry.Module.Prelude.T2 t73 Curry.Module.Prelude.C_Success)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertSolutions'46_'35lambda5 x1 x2 x3 st = let {x4 = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))(Curry.Module.Prelude.c_allValuesB(x3)(st))(st)} in Curry.Module.Assertion.c_checkAssertSolutions'46_'35lambda5_case_3(x1)(x2)(x4)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.c_null(Curry.Module.List.op_92_92(x4)(x2)(st))(st))(Curry.Module.Prelude.c_null(Curry.Module.List.op_92_92(x2)(x4)(st))(st))(st))(st)++++c_checkAssertIO :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.C_IO t0) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertIO x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(x2)(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_checkAssertIO'46_'35lambda6(x1)(x3)))(st)++++c_checkAssertIO'46_'35lambda6 :: (Curry t104) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t104 -> t104 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertIO'46_'35lambda6 x1 x2 x3 st = Curry.Module.Assertion.c_checkAssertIO'46_'35lambda6_case_2(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x3)(x2)(st))(st)++++c_checkAssertEqualIO :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.C_IO t0) -> (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertEqualIO x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(x2)(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_checkAssertEqualIO'46_'35lambda7(x3)(x1)))(st)++++c_checkAssertEqualIO'46_'35lambda7 :: (Curry t127) => (Curry.Module.Prelude.C_IO t127) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t127 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertEqualIO'46_'35lambda7 x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(x1)(Curry.Module.Prelude.pf(Curry.Module.Assertion.c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8(x2)(x3)))(st)++++c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8 :: (Curry t127) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t127 -> t127 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8 x1 x2 x3 st = Curry.Module.Assertion.c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8_case_1(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x2)(x3)(st))(st)++++c_writeAssertResult :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeAssertResult x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.Assertion.c_writeAssertResult_case_0(x2)(x3)(st)+c_writeAssertResult (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_writeAssertResult(x)(st))(i)(xs)(st)+c_writeAssertResult x st = Curry.RunTimeSystem.patternFail("Assertion.writeAssertResult")(x)++++c_doSend :: (Curry t0) => Curry.Module.IO.C_Handle -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_doSend x1 x2 st = Curry.Module.IO.c_hPutStrLn(x1)(Curry.Module.Prelude.c_show(x2)(st))(st)++++c_showTestMod :: Curry.Module.IO.C_Handle -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_showTestMod x1 x2 st = Curry.Module.Assertion.c_doSend(x1)(Curry.Module.Assertion.C_TestModule(x2))(st)++++c_showTestCase :: Curry.Module.IO.C_Handle -> (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Prelude.C_Bool)+c_showTestCase x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.op_62_62(Curry.Module.Assertion.c_doSend(x1)(Curry.Module.Assertion.C_TestCase(x3)(x4))(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(x3)(x4))(st))(st)+c_showTestCase x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_showTestCase(x1)(x)(st))(i)(xs)(st)+c_showTestCase x1 x st = Curry.RunTimeSystem.patternFail("Assertion.showTestCase")(x)++++c_showTestEnd :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_showTestEnd x1 st = Curry.Module.Assertion.c_doSend(x1)(Curry.Module.Assertion.C_TestFinished)(st)++++c_showTestCompileError :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_showTestCompileError x1 st = Curry.Module.Assertion.c_doSend(x1)(Curry.Module.Assertion.C_TestCompileError)(st)++++c_writeAssertResult_case_0 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_putStrLn(Curry.Module.Prelude.op_43_43(x2)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))(st))(st)+c_writeAssertResult_case_0 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_putStrLn(Curry.Module.Prelude.op_43_43(x2)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('!'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))(st))(st)+c_writeAssertResult_case_0 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_writeAssertResult_case_0(x2)(x)(st))(i)(xs)(st)+c_writeAssertResult_case_0 x2 x st = Curry.RunTimeSystem.patternFail("Assertion.writeAssertResult_case_0")(x)++++c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8_case_1 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(Curry.Module.Prelude.C_True))(st)+c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8_case_1 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('1'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('2'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x3)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))(st))(st))(st))(st))(st))(st))(st))(st))(Curry.Module.Prelude.C_False))(st)+c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8_case_1 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8_case_1(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_checkAssertEqualIO'46_'35lambda7'46_'35lambda8_case_1 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertEqualIO._#lambda7._#lambda8_case_1")(x)++++c_checkAssertIO'46_'35lambda6_case_2 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(Curry.Module.Prelude.C_True))(st)+c_checkAssertIO'46_'35lambda6_case_2 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x3)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))(st))(st))(st))(st))(st))(st))(st))(st))(Curry.Module.Prelude.C_False))(st)+c_checkAssertIO'46_'35lambda6_case_2 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertIO'46_'35lambda6_case_2(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_checkAssertIO'46_'35lambda6_case_2 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertIO._#lambda6_case_2")(x)++++c_checkAssertSolutions'46_'35lambda5_case_3 x1 x2 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(Curry.Module.Prelude.C_True))(st)+c_checkAssertSolutions'46_'35lambda5_case_3 x1 x2 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x4)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(st))(st))(st))(st))(st))(st))(Curry.Module.Prelude.C_False))(st)+c_checkAssertSolutions'46_'35lambda5_case_3 x1 x2 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertSolutions'46_'35lambda5_case_3(x1)(x2)(x4)(x)(st))(i)(xs)(st)+c_checkAssertSolutions'46_'35lambda5_case_3 x1 x2 x4 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertSolutions._#lambda5_case_3")(x)++++c_checkAssertValues'46_'35lambda4_case_4 x1 x2 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(Curry.Module.Prelude.C_True))(st)+c_checkAssertValues'46_'35lambda4_case_4 x1 x2 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x4)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(st))(st))(st))(st))(st))(st))(Curry.Module.Prelude.C_False))(st)+c_checkAssertValues'46_'35lambda4_case_4 x1 x2 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertValues'46_'35lambda4_case_4(x1)(x2)(x4)(x)(st))(i)(xs)(st)+c_checkAssertValues'46_'35lambda4_case_4 x1 x2 x4 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertValues._#lambda4_case_4")(x)++++c_checkAssertEqual_case_5 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(Curry.Module.Prelude.C_True))(st)+c_checkAssertEqual_case_5 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T2(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('L'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x3)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(st))(st))(st))(st))(st))(st))(Curry.Module.Prelude.C_False))(st)+c_checkAssertEqual_case_5 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Assertion.c_checkAssertEqual_case_5(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_checkAssertEqual_case_5 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Assertion.checkAssertEqual_case_5")(x)++
+ dist/build/Curry/Module/CSV.hs view
@@ -0,0 +1,192 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.CSV (module Curry.Module.CSV) where++import Curry.RunTimeSystem+import Curry.Module.List+import Curry.Module.Prelude++++-- begin included++++-- end included++c_writeCSVFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeCSVFile x1 x2 st = Curry.Module.Prelude.c_writeFile(x1)(Curry.Module.CSV.c_showCSV(x2)(st))(st)++++c_showCSV :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showCSV x1 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.CSV.c_showCSVLine))(st))(x1)(st)++++c_showCSVLine :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showCSVLine x1 st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_concat(Curry.Module.List.c_intersperse((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))(Curry.Module.Prelude.List))(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.CSV.c_showCSVLine'46convert'467))(x1)(st))(st))(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st)++++c_showCSVLine'46convert'467 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showCSVLine'46convert'467 x1 st = Curry.Module.CSV.c_showCSVLine'46convert'467_case_8(x1)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_any(Curry.Module.Prelude.pf(Curry.Module.CSV.c_showCSVLine'46convert'467'46_'35lambda2))(st))(x1)(st))(st)++++c_showCSVLine'46convert'467'46_'35lambda2 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_showCSVLine'46convert'467'46_'35lambda2 x1 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(x1)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\"'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(';'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List)))))(st)++++c_showCSVLine'46convert'467'46_'35lambda3 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showCSVLine'46convert'467'46_'35lambda3 x1 st = Curry.Module.CSV.c_showCSVLine'46convert'467'46_'35lambda3_case_7(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\"'))(st))(st)++++c_readCSVFile :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))+c_readCSVFile st = Curry.Module.Prelude.pf(Curry.Module.CSV.c_readCSVFileWithDelims((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))(Curry.Module.Prelude.List)))++++c_readCSVFileWithDelims :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_readCSVFileWithDelims x1 x2 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_readFile(x2)(st))(Curry.Module.Prelude.pf(Curry.Module.CSV.c_readCSVFileWithDelims'46_'35lambda4(x1)))(st)++++c_readCSVFileWithDelims'46_'35lambda4 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_readCSVFileWithDelims'46_'35lambda4 x1 x2 st = Curry.Module.Prelude.c_return(Curry.Module.CSV.c_readCSVWithDelims(x1)(x2)(st))(st)++++c_readCSV :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_readCSV st = Curry.Module.Prelude.pf(Curry.Module.CSV.c_readCSVWithDelims((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))(Curry.Module.Prelude.List)))++++c_readCSVWithDelims :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readCSVWithDelims x1 x2 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.CSV.c_components(x1)))(Curry.Module.Prelude.c_lines(x2)(st))(st)++++c_components :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_components x1 x2@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_components x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.CSV.c_components_case_6(x1)(x3)(x4)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Char('\"'))(st))(st)+c_components x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components(x1)(x)(st))(i)(xs)(st)+c_components x1 x st = Curry.RunTimeSystem.patternFail("CSV.components")(x)++++c_components'46breakString'4625 :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_components'46breakString'4625 x1 x2 x3@Curry.Module.Prelude.List st = x1+c_components'46breakString'4625 x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.CSV.c_components'46breakString'4625_case_4(x1)(x2)(x4)(x5)(st)+c_components'46breakString'4625 x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625(x1)(x2)(x)(st))(i)(xs)(st)+c_components'46breakString'4625 x1 x2 x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25")(x)++++c_components'46breakString'4625'46_'35selFP3'35b :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_components'46breakString'4625'46_'35selFP3'35b x1@((Curry.Module.Prelude.:<) x2 x3) st = x2+c_components'46breakString'4625'46_'35selFP3'35b (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP3'35b(x)(st))(i)(xs)(st)+c_components'46breakString'4625'46_'35selFP3'35b x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25._#selFP3#b")(x)++++c_components'46breakString'4625'46_'35selFP4'35bs :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_components'46breakString'4625'46_'35selFP4'35bs x1@((Curry.Module.Prelude.:<) x2 x3) st = x3+c_components'46breakString'4625'46_'35selFP4'35bs (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP4'35bs(x)(st))(i)(xs)(st)+c_components'46breakString'4625'46_'35selFP4'35bs x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25._#selFP4#bs")(x)++++c_components'46breakString'4625'46_'35selFP6'35b :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_components'46breakString'4625'46_'35selFP6'35b x1@((Curry.Module.Prelude.:<) x2 x3) st = x2+c_components'46breakString'4625'46_'35selFP6'35b (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP6'35b(x)(st))(i)(xs)(st)+c_components'46breakString'4625'46_'35selFP6'35b x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25._#selFP6#b")(x)++++c_components'46breakString'4625'46_'35selFP7'35bs :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_components'46breakString'4625'46_'35selFP7'35bs x1@((Curry.Module.Prelude.:<) x2 x3) st = x3+c_components'46breakString'4625'46_'35selFP7'35bs (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP7'35bs(x)(st))(i)(xs)(st)+c_components'46breakString'4625'46_'35selFP7'35bs x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25._#selFP7#bs")(x)++++c_components'46_'35selFP9'35e :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_components'46_'35selFP9'35e x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_components'46_'35selFP9'35e (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46_'35selFP9'35e(x)(st))(i)(xs)(st)+c_components'46_'35selFP9'35e x st = Curry.RunTimeSystem.patternFail("CSV.components._#selFP9#e")(x)++++c_components'46_'35selFP10'35s :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_components'46_'35selFP10'35s x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_components'46_'35selFP10'35s (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46_'35selFP10'35s(x)(st))(i)(xs)(st)+c_components'46_'35selFP10'35s x st = Curry.RunTimeSystem.patternFail("CSV.components._#selFP10#s")(x)++++c_components'46breakString'4625_case_4 x1 x2 x4 x5@Curry.Module.Prelude.List st = Curry.Module.CSV.c_components'46breakString'4625_case_3(x1)(x4)(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.Prelude.C_Char('\"'))(st))(st)+c_components'46breakString'4625_case_4 x1 x2 x4 x5@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.CSV.c_components'46breakString'4625_case_2(x1)(x2)(x4)(x6)(x7)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.Prelude.C_Char('\"'))(st))(Curry.Module.Prelude.op_61_61(x6)(Curry.Module.Prelude.C_Char('\"'))(st))(st))(st)+c_components'46breakString'4625_case_4 x1 x2 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625_case_4(x1)(x2)(x4)(x)(st))(i)(xs)(st)+c_components'46breakString'4625_case_4 x1 x2 x4 x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25_case_4")(x)++++c_components'46breakString'4625_case_2 x1 x2 x4 x6 x7 x8@Curry.Module.Prelude.C_True st = let {x8 = Curry.Module.CSV.c_components'46breakString'4625(x1)(x2)(x7)(st)} in (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x4)(Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP3'35b(x8)(st)))(Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP4'35bs(x8)(st))+c_components'46breakString'4625_case_2 x1 x2 x4 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.CSV.c_components'46breakString'4625_case_1(x1)(x2)(x4)(x6)(x7)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.Prelude.C_Char('\"'))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(x6)(st))(x2)(st))(st))(st)+c_components'46breakString'4625_case_2 x1 x2 x4 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625_case_2(x1)(x2)(x4)(x6)(x7)(x)(st))(i)(xs)(st)+c_components'46breakString'4625_case_2 x1 x2 x4 x6 x7 x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25_case_2")(x)++++c_components'46breakString'4625_case_1 x1 x2 x4 x6 x7 x8@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)(Curry.Module.CSV.c_components(x2)(x7)(st))+c_components'46breakString'4625_case_1 x1 x2 x4 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.CSV.c_components'46breakString'4625_case_0(x1)(x2)(x4)(x6)(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_components'46breakString'4625_case_1 x1 x2 x4 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625_case_1(x1)(x2)(x4)(x6)(x7)(x)(st))(i)(xs)(st)+c_components'46breakString'4625_case_1 x1 x2 x4 x6 x7 x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25_case_1")(x)++++c_components'46breakString'4625_case_0 x1 x2 x4 x6 x7 x8@Curry.Module.Prelude.C_True st = let {x11 = Curry.Module.CSV.c_components'46breakString'4625(x1)(x2)((Curry.Module.Prelude.:<)(x6)(x7))(st)} in (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x4)(Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP6'35b(x11)(st)))(Curry.Module.CSV.c_components'46breakString'4625'46_'35selFP7'35bs(x11)(st))+c_components'46breakString'4625_case_0 x1 x2 x4 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625_case_0(x1)(x2)(x4)(x6)(x7)(x)(st))(i)(xs)(st)+c_components'46breakString'4625_case_0 x1 x2 x4 x6 x7 x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25_case_0")(x)++++c_components'46breakString'4625_case_3 x1 x4 x5@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_components'46breakString'4625_case_3 x1 x4 x5@Curry.Module.Prelude.C_False st = x1+c_components'46breakString'4625_case_3 x1 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components'46breakString'4625_case_3(x1)(x4)(x)(st))(i)(xs)(st)+c_components'46breakString'4625_case_3 x1 x4 x st = Curry.RunTimeSystem.patternFail("CSV.components.breakString.25_case_3")(x)++++c_components_case_6 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.CSV.c_components'46breakString'4625(Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('V'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('!'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))(st))(x1)(x4)(st)+c_components_case_6 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = let {x6 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_elem))(x1)))(st))((Curry.Module.Prelude.:<)(x3)(x4))(st)} in let {x8 = Curry.Module.CSV.c_components'46_'35selFP10'35s(x6)(st)} in (Curry.Module.Prelude.:<)(Curry.Module.CSV.c_components'46_'35selFP9'35e(x6)(st))(Curry.Module.CSV.c_components_case_5(x1)(x8)(Curry.Module.Prelude.c_null(x8)(st))(st))+c_components_case_6 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components_case_6(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_components_case_6 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("CSV.components_case_6")(x)++++c_components_case_5 x1 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_components_case_5 x1 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.CSV.c_components(x1)(Curry.Module.Prelude.c_tail(x8)(st))(st)+c_components_case_5 x1 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_components_case_5(x1)(x8)(x)(st))(i)(xs)(st)+c_components_case_5 x1 x8 x st = Curry.RunTimeSystem.patternFail("CSV.components_case_5")(x)++++c_showCSVLine'46convert'467'46_'35lambda3_case_7 x1 x2@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x1)((Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.List))+c_showCSVLine'46convert'467'46_'35lambda3_case_7 x1 x2@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.List)+c_showCSVLine'46convert'467'46_'35lambda3_case_7 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_showCSVLine'46convert'467'46_'35lambda3_case_7(x1)(x)(st))(i)(xs)(st)+c_showCSVLine'46convert'467'46_'35lambda3_case_7 x1 x st = Curry.RunTimeSystem.patternFail("CSV.showCSVLine.convert.7._#lambda3_case_7")(x)++++c_showCSVLine'46convert'467_case_8 x1 x2@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\"'))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.CSV.c_showCSVLine'46convert'467'46_'35lambda3))(st))(x1)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\"'))(Curry.Module.Prelude.List))(st))+c_showCSVLine'46convert'467_case_8 x1 x2@Curry.Module.Prelude.C_False st = x1+c_showCSVLine'46convert'467_case_8 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.CSV.c_showCSVLine'46convert'467_case_8(x1)(x)(st))(i)(xs)(st)+c_showCSVLine'46convert'467_case_8 x1 x st = Curry.RunTimeSystem.patternFail("CSV.showCSVLine.convert.7_case_8")(x)++
+ dist/build/Curry/Module/Char.hs view
@@ -0,0 +1,149 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Char (module Curry.Module.Char) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++c_isUpper :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isUpper x1 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('Z'))(st))(st))(st)++++c_isLower :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isLower x1 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('z'))(st))(st))(st)++++c_isAlpha :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isAlpha x1 st = Curry.Module.Prelude.op_124_124(Curry.Module.Char.c_isUpper(x1)(st))(Curry.Module.Char.c_isLower(x1)(st))(st)++++c_isDigit :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isDigit x1 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(Curry.Module.Prelude.c_ord(x1)(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('9'))(st))(st))(st)++++c_isAlphaNum :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isAlphaNum x1 st = Curry.Module.Prelude.op_124_124(Curry.Module.Char.c_isAlpha(x1)(st))(Curry.Module.Char.c_isDigit(x1)(st))(st)++++c_isOctDigit :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isOctDigit x1 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('7'))(st))(st))(st)++++c_isHexDigit :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isHexDigit x1 st = Curry.Module.Prelude.op_124_124(Curry.Module.Char.c_isDigit(x1)(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('F'))(st))(st))(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('f'))(st))(st))(st))(st))(st)++++c_isSpace :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isSpace x1 st = Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char(' '))(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\t'))(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\n'))(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\r'))(st))(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(st))(st))(st))(st)++++c_toUpper :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_toUpper x1 st = Curry.Module.Char.c_toUpper_case_10(x1)(Curry.Module.Char.c_isLower(x1)(st))(st)++++c_toLower :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_toLower x1 st = Curry.Module.Char.c_toLower_case_8(x1)(Curry.Module.Char.c_isUpper(x1)(st))(st)++++c_digitToInt :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_digitToInt x1 st = Curry.Module.Char.c_digitToInt_case_6(x1)(Curry.Module.Char.c_isDigit(x1)(st))(st)++++c_intToDigit :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_intToDigit x1 st = Curry.Module.Char.c_intToDigit_case_2(x1)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(x1)(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_60_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(st))(st)++++c_intToDigit_case_2 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.op_43(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(x1)(st))(st)+c_intToDigit_case_2 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_intToDigit_case_1(x1)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(Curry.Module.Prelude.op_60_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(st))(st)+c_intToDigit_case_2 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_intToDigit_case_2(x1)(x)(st))(i)(xs)(st)+c_intToDigit_case_2 x1 x st = Curry.RunTimeSystem.patternFail("Char.intToDigit_case_2")(x)++++c_intToDigit_case_1 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.op_45(Curry.Module.Prelude.op_43(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(st)+c_intToDigit_case_1 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_intToDigit_case_0(Curry.Module.Prelude.c_otherwise(st))(st)+c_intToDigit_case_1 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_intToDigit_case_1(x1)(x)(st))(i)(xs)(st)+c_intToDigit_case_1 x1 x st = Curry.RunTimeSystem.patternFail("Char.intToDigit_case_1")(x)++++c_intToDigit_case_0 x1@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('D'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))))))(st)+c_intToDigit_case_0 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_intToDigit_case_0(x)(st))(i)(xs)(st)+c_intToDigit_case_0 x st = Curry.RunTimeSystem.patternFail("Char.intToDigit_case_0")(x)++++c_digitToInt_case_6 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(st)+c_digitToInt_case_6 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_digitToInt_case_5(x1)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('F'))(st))(st))(st))(st)+c_digitToInt_case_6 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_digitToInt_case_6(x1)(x)(st))(i)(xs)(st)+c_digitToInt_case_6 x1 x st = Curry.RunTimeSystem.patternFail("Char.digitToInt_case_6")(x)++++c_digitToInt_case_5 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st)+c_digitToInt_case_5 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_digitToInt_case_4(x1)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('f'))(st))(st))(st))(st)+c_digitToInt_case_5 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_digitToInt_case_5(x1)(x)(st))(i)(xs)(st)+c_digitToInt_case_5 x1 x st = Curry.RunTimeSystem.patternFail("Char.digitToInt_case_5")(x)++++c_digitToInt_case_4 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st)+c_digitToInt_case_4 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_digitToInt_case_3(Curry.Module.Prelude.c_otherwise(st))(st)+c_digitToInt_case_4 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_digitToInt_case_4(x1)(x)(st))(i)(xs)(st)+c_digitToInt_case_4 x1 x st = Curry.RunTimeSystem.patternFail("Char.digitToInt_case_4")(x)++++c_digitToInt_case_3 x1@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))(st)+c_digitToInt_case_3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_digitToInt_case_3(x)(st))(i)(xs)(st)+c_digitToInt_case_3 x st = Curry.RunTimeSystem.patternFail("Char.digitToInt_case_3")(x)++++c_toLower_case_8 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(st))(st)+c_toLower_case_8 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_toLower_case_7(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_toLower_case_8 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_toLower_case_8(x1)(x)(st))(i)(xs)(st)+c_toLower_case_8 x1 x st = Curry.RunTimeSystem.patternFail("Char.toLower_case_8")(x)++++c_toLower_case_7 x1 x2@Curry.Module.Prelude.C_True st = x1+c_toLower_case_7 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_toLower_case_7(x1)(x)(st))(i)(xs)(st)+c_toLower_case_7 x1 x st = Curry.RunTimeSystem.patternFail("Char.toLower_case_7")(x)++++c_toUpper_case_10 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(st)+c_toUpper_case_10 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Char.c_toUpper_case_9(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_toUpper_case_10 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_toUpper_case_10(x1)(x)(st))(i)(xs)(st)+c_toUpper_case_10 x1 x st = Curry.RunTimeSystem.patternFail("Char.toUpper_case_10")(x)++++c_toUpper_case_9 x1 x2@Curry.Module.Prelude.C_True st = x1+c_toUpper_case_9 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Char.c_toUpper_case_9(x1)(x)(st))(i)(xs)(st)+c_toUpper_case_9 x1 x st = Curry.RunTimeSystem.patternFail("Char.toUpper_case_9")(x)++
+ dist/build/Curry/Module/Dequeue.hs view
@@ -0,0 +1,289 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Dequeue (module Curry.Module.Dequeue) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++data C_Queue t0 = C_S Curry.Module.Prelude.C_Int (Curry.Module.Prelude.List t0) Curry.Module.Prelude.C_Int (Curry.Module.Prelude.List t0)+  | C_QueueFail Curry.RunTimeSystem.C_Exceptions+  | C_QueueOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Dequeue.C_Queue t0))++instance (BaseCurry t0) => BaseCurry (Curry.Module.Dequeue.C_Queue t0) where+  nf f (Curry.Module.Dequeue.C_S x1 x2 x3 x4) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> f(Curry.Module.Dequeue.C_S(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Dequeue.C_S x1 x2 x3 x4) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> f(Curry.Module.Dequeue.C_S(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Dequeue.C_QueueOr(Curry.RunTimeSystem.mkRef(r)(4)(i))([Curry.Module.Dequeue.C_S(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(4)++  failed  = Curry.Module.Dequeue.C_QueueFail++  branching  = Curry.Module.Dequeue.C_QueueOr++  consKind (Curry.Module.Dequeue.C_QueueOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Dequeue.C_QueueFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Dequeue.C_QueueFail x) = x++  orRef (Curry.Module.Dequeue.C_QueueOr x _) = x++  branches (Curry.Module.Dequeue.C_QueueOr _ x) = x++++++instance (Curry t0) => Curry (Curry.Module.Dequeue.C_Queue t0) where+  strEq (Curry.Module.Dequeue.C_S x1 x2 x3 x4) (Curry.Module.Dequeue.C_S y1 y2 y3 y4) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Dequeue.C_S x1 x2 x3 x4) (Curry.Module.Dequeue.C_S y1 y2 y3 y4) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.genEq(x4)(y4)(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Dequeue.C_S x1 x2 x3 x4) st = Curry.Module.Dequeue.C_S(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))++  foldCurry f c (Curry.Module.Dequeue.C_S x1 x2 x3 x4) st = f(x1)(f(x2)(f(x3)(f(x4)(c)(st))(st))(st))(st)++  typeName _ = "Queue"++  showQ d (Curry.Module.Dequeue.C_S x1 x2 x3 x4) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Dequeue.S "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x4))))))))+++  showQ _ (Curry.Module.Dequeue.C_QueueOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Dequeue.C_Queue t0) where+  showsPrec d (Curry.Module.Dequeue.C_S x1 x2 x3 x4) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("S "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x4))))))))+++  showsPrec _ (Curry.Module.Dequeue.C_QueueOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0) => Read (Curry.Module.Dequeue.C_Queue t0) where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Dequeue.C_S(x1)(x2)(x3)(x4))(r4) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Dequeue")("S")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2), ((,) x4 r4) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r3)])(r)++++++c_empty :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_empty st = Curry.Module.Dequeue.C_S(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.List)(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.List)++++c_isEmpty :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isEmpty x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.op_43(x2)(x4)(st))(Curry.Module.Prelude.C_Zero)(st)+c_isEmpty (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_isEmpty(x)(st))(i)(xs)(st)+c_isEmpty x st = Curry.RunTimeSystem.patternFail("Dequeue.isEmpty")(x)++++c_deqHead :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> t0+c_deqHead x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Prelude.c_head(Curry.Module.Dequeue.c_deqHead_case_11(x2)(x3)(x5)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st))(st)+c_deqHead (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqHead(x)(st))(i)(xs)(st)+c_deqHead x st = Curry.RunTimeSystem.patternFail("Dequeue.deqHead")(x)++++c_deqLast :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> t0+c_deqLast x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Prelude.c_head(Curry.Module.Dequeue.c_deqLast_case_10(x3)(x4)(x5)(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.Prelude.C_Zero)(st))(st))(st)+c_deqLast (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqLast(x)(st))(i)(xs)(st)+c_deqLast x st = Curry.RunTimeSystem.patternFail("Dequeue.deqLast")(x)++++c_cons :: (Curry t0) => t0 -> (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_cons x1 x2@(Curry.Module.Dequeue.C_S x3 x4 x5 x6) st = Curry.Module.Dequeue.c_check(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))((Curry.Module.Prelude.:<)(x1)(x4))(x5)(x6)(st)+c_cons x1 (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_cons(x1)(x)(st))(i)(xs)(st)+c_cons x1 x st = Curry.RunTimeSystem.patternFail("Dequeue.cons")(x)++++c_deqTail :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_deqTail x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Dequeue.c_deqTail_case_9(x2)(x4)(x5)(x3)(st)+c_deqTail (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqTail(x)(st))(i)(xs)(st)+c_deqTail x st = Curry.RunTimeSystem.patternFail("Dequeue.deqTail")(x)++++c_snoc :: (Curry t0) => t0 -> (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_snoc x1 x2@(Curry.Module.Dequeue.C_S x3 x4 x5 x6) st = Curry.Module.Dequeue.c_deqReverse(Curry.Module.Dequeue.c_check(Curry.Module.Prelude.op_43(x5)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))((Curry.Module.Prelude.:<)(x1)(x6))(x3)(x4)(st))(st)+c_snoc x1 (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_snoc(x1)(x)(st))(i)(xs)(st)+c_snoc x1 x st = Curry.RunTimeSystem.patternFail("Dequeue.snoc")(x)++++c_deqInit :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_deqInit x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Dequeue.c_deqInit_case_8(x2)(x3)(x4)(x5)(st)+c_deqInit (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqInit(x)(st))(i)(xs)(st)+c_deqInit x st = Curry.RunTimeSystem.patternFail("Dequeue.deqInit")(x)++++c_deqReverse :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_deqReverse x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Dequeue.C_S(x4)(x5)(x2)(x3)+c_deqReverse (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqReverse(x)(st))(i)(xs)(st)+c_deqReverse x st = Curry.RunTimeSystem.patternFail("Dequeue.deqReverse")(x)++++c_check :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_check x1 x2 x3 x4 st = let {x5 = Curry.Module.Prelude.op_43(x1)(x3)(st)} in let {x6 = Curry.Module.Prelude.c_div(x5)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st)} in let {x8 = Curry.Module.Prelude.c_splitAt(x6)(x2)(st)} in Curry.Module.Dequeue.c_check_case_7(x1)(x2)(x3)(x4)(x5)(x6)(x8)(Curry.Module.Prelude.op_60_61(x1)(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))(x3)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st)++++c_check'46_'35selFP3'35f'39 :: (Curry t45) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t45) (Curry.Module.Prelude.List t45)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t45+c_check'46_'35selFP3'35f'39 x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_check'46_'35selFP3'35f'39 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_check'46_'35selFP3'35f'39(x)(st))(i)(xs)(st)+c_check'46_'35selFP3'35f'39 x st = Curry.RunTimeSystem.patternFail("Dequeue.check._#selFP3#f'")(x)++++c_check'46_'35selFP4'35rf'39 :: (Curry t45) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t45) (Curry.Module.Prelude.List t45)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t45+c_check'46_'35selFP4'35rf'39 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_check'46_'35selFP4'35rf'39 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_check'46_'35selFP4'35rf'39(x)(st))(i)(xs)(st)+c_check'46_'35selFP4'35rf'39 x st = Curry.RunTimeSystem.patternFail("Dequeue.check._#selFP4#rf'")(x)++++c_listToDeq :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_listToDeq x1 st = Curry.Module.Dequeue.c_check(Curry.Module.Prelude.c_length(x1)(st))(x1)(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.List)(st)++++c_deqToList :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_deqToList x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Prelude.op_43_43(x3)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x5)(st))(st)+c_deqToList (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqToList(x)(st))(i)(xs)(st)+c_deqToList x st = Curry.RunTimeSystem.patternFail("Dequeue.deqToList")(x)++++c_deqLength :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_deqLength x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Prelude.op_43(x2)(x4)(st)+c_deqLength (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqLength(x)(st))(i)(xs)(st)+c_deqLength x st = Curry.RunTimeSystem.patternFail("Dequeue.deqLength")(x)++++c_rotate :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Dequeue.C_Queue t0+c_rotate x1 st = Curry.Module.Dequeue.c_snoc(Curry.Module.Dequeue.c_deqHead(x1)(st))(Curry.Module.Dequeue.c_deqTail(x1)(st))(st)++++c_matchHead :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 t0 (Curry.Module.Dequeue.C_Queue t0))+c_matchHead x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Dequeue.c_matchHead_case_5(x2)(x4)(x5)(x3)(st)+c_matchHead (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchHead(x)(st))(i)(xs)(st)+c_matchHead x st = Curry.RunTimeSystem.patternFail("Dequeue.matchHead")(x)++++c_matchLast :: (Curry t0) => (Curry.Module.Dequeue.C_Queue t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 t0 (Curry.Module.Dequeue.C_Queue t0))+c_matchLast x1@(Curry.Module.Dequeue.C_S x2 x3 x4 x5) st = Curry.Module.Dequeue.c_matchLast_case_2(x2)(x3)(x4)(x5)(st)+c_matchLast (Curry.Module.Dequeue.C_QueueOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchLast(x)(st))(i)(xs)(st)+c_matchLast x st = Curry.RunTimeSystem.patternFail("Dequeue.matchLast")(x)++++c_matchLast_case_2 x2 x3 x4 x5@Curry.Module.Prelude.List st = Curry.Module.Dequeue.c_matchLast_case_1(x3)(st)+c_matchLast_case_2 x2 x3 x4 x5@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(x8)(Curry.Module.Dequeue.c_check(x2)(x3)(Curry.Module.Prelude.op_45(x4)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x9)(st)))+c_matchLast_case_2 x2 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchLast_case_2(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_matchLast_case_2 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("Dequeue.matchLast_case_2")(x)++++c_matchLast_case_1 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Nothing+c_matchLast_case_1 x3@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Dequeue.c_matchLast_case_0(x6)(x7)(st)+c_matchLast_case_1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchLast_case_1(x)(st))(i)(xs)(st)+c_matchLast_case_1 x st = Curry.RunTimeSystem.patternFail("Dequeue.matchLast_case_1")(x)++++c_matchLast_case_0 x6 x7@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(x6)(Curry.Module.Dequeue.c_empty(st)))+c_matchLast_case_0 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchLast_case_0(x6)(x)(st))(i)(xs)(st)+c_matchLast_case_0 x6 x st = Curry.RunTimeSystem.patternFail("Dequeue.matchLast_case_0")(x)++++c_matchHead_case_5 x2 x4 x5 x3@Curry.Module.Prelude.List st = Curry.Module.Dequeue.c_matchHead_case_4(x5)(st)+c_matchHead_case_5 x2 x4 x5 x3@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(x8)(Curry.Module.Dequeue.c_deqReverse(Curry.Module.Dequeue.c_check(x4)(x5)(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x9)(st))(st)))+c_matchHead_case_5 x2 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchHead_case_5(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_matchHead_case_5 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("Dequeue.matchHead_case_5")(x)++++c_matchHead_case_4 x5@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Nothing+c_matchHead_case_4 x5@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Dequeue.c_matchHead_case_3(x6)(x7)(st)+c_matchHead_case_4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchHead_case_4(x)(st))(i)(xs)(st)+c_matchHead_case_4 x st = Curry.RunTimeSystem.patternFail("Dequeue.matchHead_case_4")(x)++++c_matchHead_case_3 x6 x7@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(x6)(Curry.Module.Dequeue.c_empty(st)))+c_matchHead_case_3 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_matchHead_case_3(x6)(x)(st))(i)(xs)(st)+c_matchHead_case_3 x6 x st = Curry.RunTimeSystem.patternFail("Dequeue.matchHead_case_3")(x)++++c_check_case_7 x1 x2 x3 x4 x5 x6 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Dequeue.C_S(x1)(x2)(x3)(x4)+c_check_case_7 x1 x2 x3 x4 x5 x6 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.Dequeue.c_check_case_6(x4)(x5)(x6)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_check_case_7 x1 x2 x3 x4 x5 x6 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_check_case_7(x1)(x2)(x3)(x4)(x5)(x6)(x8)(x)(st))(i)(xs)(st)+c_check_case_7 x1 x2 x3 x4 x5 x6 x8 x st = Curry.RunTimeSystem.patternFail("Dequeue.check_case_7")(x)++++c_check_case_6 x4 x5 x6 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Dequeue.C_S(x6)(Curry.Module.Dequeue.c_check'46_'35selFP3'35f'39(x8)(st))(Curry.Module.Prelude.op_45(x5)(x6)(st))(Curry.Module.Prelude.op_43_43(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(Curry.Module.Dequeue.c_check'46_'35selFP4'35rf'39(x8)(st))(st))(st))+c_check_case_6 x4 x5 x6 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_check_case_6(x4)(x5)(x6)(x8)(x)(st))(i)(xs)(st)+c_check_case_6 x4 x5 x6 x8 x st = Curry.RunTimeSystem.patternFail("Dequeue.check_case_6")(x)++++c_deqInit_case_8 x2 x3 x4 x5@Curry.Module.Prelude.List st = Curry.Module.Dequeue.c_empty(st)+c_deqInit_case_8 x2 x3 x4 x5@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Dequeue.c_check(x2)(x3)(Curry.Module.Prelude.op_45(x4)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x7)(st)+c_deqInit_case_8 x2 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqInit_case_8(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_deqInit_case_8 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("Dequeue.deqInit_case_8")(x)++++c_deqTail_case_9 x2 x4 x5 x3@Curry.Module.Prelude.List st = Curry.Module.Dequeue.c_empty(st)+c_deqTail_case_9 x2 x4 x5 x3@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Dequeue.c_deqReverse(Curry.Module.Dequeue.c_check(x4)(x5)(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x7)(st))(st)+c_deqTail_case_9 x2 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqTail_case_9(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_deqTail_case_9 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("Dequeue.deqTail_case_9")(x)++++c_deqLast_case_10 x3 x4 x5 x6@Curry.Module.Prelude.C_True st = x3+c_deqLast_case_10 x3 x4 x5 x6@Curry.Module.Prelude.C_False st = x5+c_deqLast_case_10 x3 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqLast_case_10(x3)(x4)(x5)(x)(st))(i)(xs)(st)+c_deqLast_case_10 x3 x4 x5 x st = Curry.RunTimeSystem.patternFail("Dequeue.deqLast_case_10")(x)++++c_deqHead_case_11 x2 x3 x5 x6@Curry.Module.Prelude.C_True st = x5+c_deqHead_case_11 x2 x3 x5 x6@Curry.Module.Prelude.C_False st = x3+c_deqHead_case_11 x2 x3 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Dequeue.c_deqHead_case_11(x2)(x3)(x5)(x)(st))(i)(xs)(st)+c_deqHead_case_11 x2 x3 x5 x st = Curry.RunTimeSystem.patternFail("Dequeue.deqHead_case_11")(x)++
+ dist/build/Curry/Module/Directory.hs view
@@ -0,0 +1,175 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Directory (module Curry.Module.Directory) where++import Curry.RunTimeSystem+import Curry.Module.Prelude+import Curry.Module.Time++++-- begin included++++import System.Time+import System.Directory+import System.IO++prim_doesFileExist :: C_String -> Result (C_IO C_Bool)+prim_doesFileExist = ioFunc1 doesFileExist++prim_doesDirectoryExist :: C_String -> Result (C_IO C_Bool)+prim_doesDirectoryExist = ioFunc1 doesDirectoryExist++prim_fileSize :: C_String -> Result (C_IO C_Int)+prim_fileSize = ioFunc1 (\s->do h <- openFile s ReadMode +                                i <- hFileSize h+                                hClose h+                                Prelude.return i)++prim_getModificationTime :: C_String -> Result (C_IO C_ClockTime)+prim_getModificationTime = ioFunc1 getModificationTime++prim_getDirectoryContents :: C_String -> Result (C_IO (List C_String))+prim_getDirectoryContents = ioFunc1 getDirectoryContents++getCurrentDirectory :: Result (C_IO C_String)+getCurrentDirectory = ioFunc0 System.Directory.getCurrentDirectory++prim_createDirectory :: C_String -> Result (C_IO T0)+prim_createDirectory = ioFunc1 createDirectory++prim_removeFile :: C_String -> Result (C_IO T0)+prim_removeFile = ioFunc1 removeFile++prim_setCurrentDirectory :: C_String -> Result (C_IO T0)+prim_setCurrentDirectory = ioFunc1 setCurrentDirectory++prim_removeDirectory :: C_String -> Result (C_IO T0)+prim_removeDirectory = ioFunc1 removeDirectory++prim_renameFile :: C_String -> C_String -> Result (C_IO T0)+prim_renameFile = ioFunc2 renameFile++prim_renameDirectory :: C_String -> C_String -> Result (C_IO T0)+prim_renameDirectory = ioFunc2 renameDirectory++-- end included++c_doesFileExist :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_doesFileExist x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_doesFileExist))(x1)(st)++++c_doesDirectoryExist :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_doesDirectoryExist x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_doesDirectoryExist))(x1)(st)++++c_fileSize :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_fileSize x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_fileSize))(x1)(st)++++c_getModificationTime :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_ClockTime+c_getModificationTime x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_getModificationTime))(x1)(st)++++c_setCurrentDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_setCurrentDirectory x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_setCurrentDirectory))(x1)(st)++++c_getDirectoryContents :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_getDirectoryContents x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_getDirectoryContents))(x1)(st)++++c_createDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_createDirectory x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_createDirectory))(x1)(st)++++c_removeFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_removeFile x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_removeFile))(x1)(st)++++c_removeDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_removeDirectory x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Directory.c_prim_removeDirectory))(x1)(st)++++c_renameFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_renameFile x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Directory.c_prim_renameFile))(x1)(st))(x2)(st)++++c_renameDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_renameDirectory x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Directory.c_prim_renameDirectory))(x1)(st))(x2)(st)++++c_prim_doesFileExist :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_prim_doesFileExist x1 st = Curry.Module.Directory.prim_doesFileExist(x1)(st)++++c_prim_doesDirectoryExist :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_prim_doesDirectoryExist x1 st = Curry.Module.Directory.prim_doesDirectoryExist(x1)(st)++++c_prim_fileSize :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_prim_fileSize x1 st = Curry.Module.Directory.prim_fileSize(x1)(st)++++c_prim_getModificationTime :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_ClockTime+c_prim_getModificationTime x1 st = Curry.Module.Directory.prim_getModificationTime(x1)(st)++++c_getCurrentDirectory :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getCurrentDirectory st = Curry.Module.Directory.getCurrentDirectory(st)++++c_prim_setCurrentDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_setCurrentDirectory x1 st = Curry.Module.Directory.prim_setCurrentDirectory(x1)(st)++++c_prim_getDirectoryContents :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_prim_getDirectoryContents x1 st = Curry.Module.Directory.prim_getDirectoryContents(x1)(st)++++c_prim_createDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_createDirectory x1 st = Curry.Module.Directory.prim_createDirectory(x1)(st)++++c_prim_removeFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_removeFile x1 st = Curry.Module.Directory.prim_removeFile(x1)(st)++++c_prim_removeDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_removeDirectory x1 st = Curry.Module.Directory.prim_removeDirectory(x1)(st)++++c_prim_renameFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_renameFile x1 x2 st = Curry.Module.Directory.prim_renameFile(x1)(x2)(st)++++c_prim_renameDirectory :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_renameDirectory x1 x2 st = Curry.Module.Directory.prim_renameDirectory(x1)(x2)(st)++
+ dist/build/Curry/Module/EasyCheck.hs view
@@ -0,0 +1,1061 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.EasyCheck (module Curry.Module.EasyCheck) where++import Curry.RunTimeSystem+import Curry.Module.Integer+import Curry.Module.List+import Curry.Module.Meta+import Curry.Module.Prelude+import Curry.Module.RandomExternal+import Curry.Module.Sort+import Curry.Module.Read++++-- begin included++++-- end included++type C_Prop = Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test++data C_Test = C_Test Curry.Module.EasyCheck.C_Result (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+  | C_TestFail Curry.RunTimeSystem.C_Exceptions+  | C_TestOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.EasyCheck.C_Test)++data C_Result = C_Undef+  | C_Ok+  | C_Falsified (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+  | C_Ambigious (Curry.Module.Prelude.List Curry.Module.Prelude.C_Bool) (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+  | C_ResultFail Curry.RunTimeSystem.C_Exceptions+  | C_ResultOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.EasyCheck.C_Result)++data C_Config = C_Config Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+  | C_ConfigFail Curry.RunTimeSystem.C_Exceptions+  | C_ConfigOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.EasyCheck.C_Config)++instance BaseCurry Curry.Module.EasyCheck.C_Test where+  nf f (Curry.Module.EasyCheck.C_Test x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.EasyCheck.C_Test(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.EasyCheck.C_Test x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.EasyCheck.C_Test(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.EasyCheck.C_TestOr(Curry.RunTimeSystem.mkRef(r)(3)(i))([Curry.Module.EasyCheck.C_Test(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(3)++  failed  = Curry.Module.EasyCheck.C_TestFail++  branching  = Curry.Module.EasyCheck.C_TestOr++  consKind (Curry.Module.EasyCheck.C_TestOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.EasyCheck.C_TestFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.EasyCheck.C_TestFail x) = x++  orRef (Curry.Module.EasyCheck.C_TestOr x _) = x++  branches (Curry.Module.EasyCheck.C_TestOr _ x) = x++++++instance BaseCurry Curry.Module.EasyCheck.C_Result where+  nf f (Curry.Module.EasyCheck.C_Falsified x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.EasyCheck.C_Falsified(v1))(state1))(x1)(state0)+  nf f (Curry.Module.EasyCheck.C_Ambigious x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.EasyCheck.C_Ambigious(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.EasyCheck.C_Falsified x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.EasyCheck.C_Falsified(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.EasyCheck.C_Ambigious x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.EasyCheck.C_Ambigious(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.EasyCheck.C_ResultOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.EasyCheck.C_Undef,Curry.Module.EasyCheck.C_Ok,Curry.Module.EasyCheck.C_Falsified(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.EasyCheck.C_Ambigious(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(2)++  failed  = Curry.Module.EasyCheck.C_ResultFail++  branching  = Curry.Module.EasyCheck.C_ResultOr++  consKind (Curry.Module.EasyCheck.C_ResultOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.EasyCheck.C_ResultFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.EasyCheck.C_ResultFail x) = x++  orRef (Curry.Module.EasyCheck.C_ResultOr x _) = x++  branches (Curry.Module.EasyCheck.C_ResultOr _ x) = x++++++instance BaseCurry Curry.Module.EasyCheck.C_Config where+  nf f (Curry.Module.EasyCheck.C_Config x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.EasyCheck.C_Config(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.EasyCheck.C_Config x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.EasyCheck.C_Config(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.EasyCheck.C_ConfigOr(Curry.RunTimeSystem.mkRef(r)(3)(i))([Curry.Module.EasyCheck.C_Config(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(3)++  failed  = Curry.Module.EasyCheck.C_ConfigFail++  branching  = Curry.Module.EasyCheck.C_ConfigOr++  consKind (Curry.Module.EasyCheck.C_ConfigOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.EasyCheck.C_ConfigFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.EasyCheck.C_ConfigFail x) = x++  orRef (Curry.Module.EasyCheck.C_ConfigOr x _) = x++  branches (Curry.Module.EasyCheck.C_ConfigOr _ x) = x++++++instance Curry Curry.Module.EasyCheck.C_Test where+  strEq (Curry.Module.EasyCheck.C_Test x1 x2 x3) (Curry.Module.EasyCheck.C_Test y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.EasyCheck.C_Test x1 x2 x3) (Curry.Module.EasyCheck.C_Test y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.EasyCheck.C_Test x1 x2 x3) st = Curry.Module.EasyCheck.C_Test(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))++  foldCurry f c (Curry.Module.EasyCheck.C_Test x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)++  typeName _ = "Test"++  showQ d (Curry.Module.EasyCheck.C_Test x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("EasyCheck.Test "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ _ (Curry.Module.EasyCheck.C_TestOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.EasyCheck.C_Result where+  strEq Curry.Module.EasyCheck.C_Undef Curry.Module.EasyCheck.C_Undef st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.EasyCheck.C_Ok Curry.Module.EasyCheck.C_Ok st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.EasyCheck.C_Falsified x1) (Curry.Module.EasyCheck.C_Falsified y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.EasyCheck.C_Ambigious x1 x2) (Curry.Module.EasyCheck.C_Ambigious y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.EasyCheck.C_Undef Curry.Module.EasyCheck.C_Undef st = Curry.Module.Prelude.C_True+  eq Curry.Module.EasyCheck.C_Ok Curry.Module.EasyCheck.C_Ok st = Curry.Module.Prelude.C_True+  eq (Curry.Module.EasyCheck.C_Falsified x1) (Curry.Module.EasyCheck.C_Falsified y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.EasyCheck.C_Ambigious x1 x2) (Curry.Module.EasyCheck.C_Ambigious y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.EasyCheck.C_Undef st = Curry.Module.EasyCheck.C_Undef+  propagate f Curry.Module.EasyCheck.C_Ok st = Curry.Module.EasyCheck.C_Ok+  propagate f (Curry.Module.EasyCheck.C_Falsified x1) st = Curry.Module.EasyCheck.C_Falsified(f((0::Int))(x1)(st))+  propagate f (Curry.Module.EasyCheck.C_Ambigious x1 x2) st = Curry.Module.EasyCheck.C_Ambigious(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))++  foldCurry f c Curry.Module.EasyCheck.C_Undef st = c+  foldCurry f c Curry.Module.EasyCheck.C_Ok st = c+  foldCurry f c (Curry.Module.EasyCheck.C_Falsified x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.EasyCheck.C_Ambigious x1 x2) st = f(x1)(f(x2)(c)(st))(st)++  typeName _ = "Result"++  showQ _ Curry.Module.EasyCheck.C_Undef = Prelude.showString("EasyCheck.Undef")+  showQ _ Curry.Module.EasyCheck.C_Ok = Prelude.showString("EasyCheck.Ok")+  showQ d (Curry.Module.EasyCheck.C_Falsified x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("EasyCheck.Falsified "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.EasyCheck.C_Ambigious x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("EasyCheck.Ambigious "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ _ (Curry.Module.EasyCheck.C_ResultOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.EasyCheck.C_Config where+  strEq (Curry.Module.EasyCheck.C_Config x1 x2 x3) (Curry.Module.EasyCheck.C_Config y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.EasyCheck.C_Config x1 x2 x3) (Curry.Module.EasyCheck.C_Config y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.EasyCheck.C_Config x1 x2 x3) st = Curry.Module.EasyCheck.C_Config(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))++  foldCurry f c (Curry.Module.EasyCheck.C_Config x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)++  typeName _ = "Config"++  showQ d (Curry.Module.EasyCheck.C_Config x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("EasyCheck.Config "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))))))+++  showQ _ (Curry.Module.EasyCheck.C_ConfigOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.EasyCheck.C_Test where+  showsPrec d (Curry.Module.EasyCheck.C_Test x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Test "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec _ (Curry.Module.EasyCheck.C_TestOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.EasyCheck.C_Result where+  showsPrec _ Curry.Module.EasyCheck.C_Undef = Prelude.showString("Undef")+  showsPrec _ Curry.Module.EasyCheck.C_Ok = Prelude.showString("Ok")+  showsPrec d (Curry.Module.EasyCheck.C_Falsified x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Falsified "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.EasyCheck.C_Ambigious x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Ambigious "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec _ (Curry.Module.EasyCheck.C_ResultOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.EasyCheck.C_Config where+  showsPrec d (Curry.Module.EasyCheck.C_Config x1 x2 x3) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Config "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))))))+++  showsPrec _ (Curry.Module.EasyCheck.C_ConfigOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Read Curry.Module.EasyCheck.C_Test where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.EasyCheck.C_Test(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("EasyCheck")("Test")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r)++++++instance Read Curry.Module.EasyCheck.C_Result where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.EasyCheck.C_Undef)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("EasyCheck")("Undef")(r)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.EasyCheck.C_Ok)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("EasyCheck")("Ok")(r)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.EasyCheck.C_Falsified(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("EasyCheck")("Falsified")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.EasyCheck.C_Ambigious(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("EasyCheck")("Ambigious")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))))++++++instance Read Curry.Module.EasyCheck.C_Config where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.EasyCheck.C_Config(x1)(x2)(x3))(r3) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("EasyCheck")("Config")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2)])(r)++++++c_notest :: Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Test+c_notest st = Curry.Module.EasyCheck.C_Test(Curry.Module.EasyCheck.C_Undef)(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)++++c_result :: Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Result+c_result x1@(Curry.Module.EasyCheck.C_Test x2 x3 x4) st = x2+c_result (Curry.Module.EasyCheck.C_TestOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_result(x)(st))(i)(xs)(st)+c_result x st = Curry.RunTimeSystem.patternFail("EasyCheck.result")(x)++++c_setResult :: Curry.Module.EasyCheck.C_Result -> Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Test+c_setResult x1 x2@(Curry.Module.EasyCheck.C_Test x3 x4 x5) st = Curry.Module.EasyCheck.C_Test(x1)(x5)(x4)+c_setResult x1 (Curry.Module.EasyCheck.C_TestOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_setResult(x1)(x)(st))(i)(xs)(st)+c_setResult x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.setResult")(x)++++c_args :: Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_args x1@(Curry.Module.EasyCheck.C_Test x2 x3 x4) st = x3+c_args (Curry.Module.EasyCheck.C_TestOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_args(x)(st))(i)(xs)(st)+c_args x st = Curry.RunTimeSystem.patternFail("EasyCheck.args")(x)++++c_stamp :: Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_stamp x1@(Curry.Module.EasyCheck.C_Test x2 x3 x4) st = x4+c_stamp (Curry.Module.EasyCheck.C_TestOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_stamp(x)(st))(i)(xs)(st)+c_stamp x st = Curry.RunTimeSystem.patternFail("EasyCheck.stamp")(x)++++c_updArgs :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Test+c_updArgs x1 x2@(Curry.Module.EasyCheck.C_Test x3 x4 x5) st = Curry.Module.EasyCheck.C_Test(x3)(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x5)+c_updArgs x1 (Curry.Module.EasyCheck.C_TestOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_updArgs(x1)(x)(st))(i)(xs)(st)+c_updArgs x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.updArgs")(x)++++c_updStamp :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Test+c_updStamp x1 x2@(Curry.Module.EasyCheck.C_Test x3 x4 x5) st = Curry.Module.EasyCheck.C_Test(x3)(x4)(Curry.Module.Prelude.c_apply(x1)(x5)(st))+c_updStamp x1 (Curry.Module.EasyCheck.C_TestOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_updStamp(x1)(x)(st))(i)(xs)(st)+c_updStamp x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.updStamp")(x)++++c_test :: (Curry t0) => t0 -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_test x1 x2 st = let {x3 = Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_valuesOf(st))(x1)(st)} in (Curry.Module.Prelude.:<)(Curry.Module.EasyCheck.c_setResult(let {x5 = Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_valuesOf(st))(Curry.Module.Prelude.c_apply(x2)(x3)(st))(st)} in Curry.Module.EasyCheck.c_test_case_32(x3)(x5)(st))(Curry.Module.EasyCheck.c_notest(st))(st))(Curry.Module.Prelude.List)++++c_is :: (Curry t0) => t0 -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_is x1 x2 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_is'46_'35lambda3(x2)))(st)++++c_is'46_'35lambda3 :: (Curry t220) => (Curry.Module.Prelude.Prim (t220 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t220) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_is'46_'35lambda3 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.EasyCheck.c_is'46_'35lambda3_case_28(x1)(x3)(x4)(st)+c_is'46_'35lambda3 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_False+c_is'46_'35lambda3 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_is'46_'35lambda3(x1)(x)(st))(i)(xs)(st)+c_is'46_'35lambda3 x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.is._#lambda3")(x)++++c_isAlways :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_isAlways x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_test(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_all))(st)++++c_isEventually :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_isEventually x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_test(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_any))(st)++++c_prop :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_prop st = Curry.Module.EasyCheck.c_uniquely(st)++++c_uniquely :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_uniquely st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_is))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))++++c_always :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_always st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_isAlways))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))++++c_eventually :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_eventually st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_isEventually))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))++++c_failing :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_failing x1 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_null))(st)++++c_successful :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_successful x1 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_not))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_null))(st))(st)++++c_deterministic :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_deterministic x1 st = Curry.Module.EasyCheck.c_is(x1)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(Curry.Module.Prelude.C_True)))(st)++++op_35 :: (Curry t0) => t0 -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+op_35 x1 x2 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_61_61(x2)))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_length))(Curry.Module.Prelude.pf(Curry.Module.List.c_nub))(st))(st))(st)++++op_45_61_45 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+op_45_61_45 x1 x2 st = Curry.Module.EasyCheck.c_is(Curry.Module.Prelude.T2(x1)(x2))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_uncurry(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))))(st)++++op_60_126_62 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+op_60_126_62 x1 x2 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_isSameSet(Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_valuesOf(st))(x2)(st))))(st)++++op_126_62 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+op_126_62 x1 x2 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_isSubsetOf(Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_valuesOf(st))(x2)(st))))(st)++++op_60_126 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+op_60_126 x1 x2 st = Curry.Module.EasyCheck.c_test(x1)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_isSubsetOf))(Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_valuesOf(st))(x2)(st))))(st)++++c_isSameSet :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isSameSet x1 x2 st = let {x3 = Curry.Module.List.c_nub(x1)(st)} in let {x4 = Curry.Module.List.c_nub(x2)(st)} in Curry.Module.Prelude.op_38_38(Curry.Module.EasyCheck.c_subset(x3)(x4)(st))(Curry.Module.EasyCheck.c_subset(x4)(x3)(st))(st)++++c_isSubsetOf :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isSubsetOf x1 x2 st = Curry.Module.EasyCheck.c_subset(Curry.Module.List.c_nub(x1)(st))(x2)(st)++++c_subset :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_subset x1 x2 st = Curry.Module.Prelude.c_null(Curry.Module.List.op_92_92(x1)(x2)(st))(st)++++op_61_61_62 :: Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+op_61_61_62 x1@Curry.Module.Prelude.C_True x2 st = x2+op_61_61_62 x1@Curry.Module.Prelude.C_False x2 st = (Curry.Module.Prelude.:<)(Curry.Module.EasyCheck.c_notest(st))(Curry.Module.Prelude.List)+op_61_61_62 (Curry.Module.Prelude.C_BoolOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.op_61_61_62(x)(x2)(st))(i)(xs)(st)+op_61_61_62 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.==>")(x)++++c_forAll :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> t1 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_forAll x1 x2 x3 st = Curry.Module.EasyCheck.c_forAllValues(x1)(Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_valuesOf(st))(x2)(st))(x3)(st)++++c_forAllValues :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> (Curry.Module.Prelude.List t1) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_forAllValues x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_diagonal(st))(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_forAllValues'46_'35lambda5(x1)(x3)))(x2)(st))(st)++++c_forAllValues'46_'35lambda5 :: (Curry t330,Curry t327) => (Curry.Module.Prelude.Prim (t330 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> (Curry.Module.Prelude.Prim (t327 -> Curry.RunTimeSystem.State -> t330)) -> t327 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test+c_forAllValues'46_'35lambda5 x1 x2 x3 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_forAllValues'46_'35lambda5'46_'35lambda6(x3)))(Curry.Module.Prelude.c_apply(x1)(Curry.Module.Prelude.c_apply(x2)(x3)(st))(st))(st)++++c_forAllValues'46_'35lambda5'46_'35lambda6 :: (Curry t327) => t327 -> Curry.Module.EasyCheck.C_Test -> Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Test+c_forAllValues'46_'35lambda5'46_'35lambda6 x1 x2 st = Curry.Module.EasyCheck.c_updArgs(Curry.Module.Prelude.pc((Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_show(x1)(st))))(x2)(st)++++c_for :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))+c_for st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_forAll(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))++++c_forValues :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))+c_forValues st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_forAllValues(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))++++c_label :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))+c_label st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_map))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_updStamp))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pc))((Curry.Module.Prelude.:<)))(st))(st)++++c_classify :: Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_classify x1@Curry.Module.Prelude.C_True x2 st = Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_label(st))(x2)(st)+c_classify x1@Curry.Module.Prelude.C_False x2 st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)+c_classify (Curry.Module.Prelude.C_BoolOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_classify(x)(x2)(st))(i)(xs)(st)+c_classify x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.classify")(x)++++c_trivial :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))+c_trivial st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_classify))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))(Curry.Module.Prelude.List)))))))))++++c_collect :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))+c_collect st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_label(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(st)++++c_collectAs :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))+c_collectAs x1 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_label(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))(st))))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(st))(st)++++c_maxTest :: Curry.Module.EasyCheck.C_Config -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_maxTest x1@(Curry.Module.EasyCheck.C_Config x2 x3 x4) st = x2+c_maxTest (Curry.Module.EasyCheck.C_ConfigOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_maxTest(x)(st))(i)(xs)(st)+c_maxTest x st = Curry.RunTimeSystem.patternFail("EasyCheck.maxTest")(x)++++c_maxFail :: Curry.Module.EasyCheck.C_Config -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_maxFail x1@(Curry.Module.EasyCheck.C_Config x2 x3 x4) st = x3+c_maxFail (Curry.Module.EasyCheck.C_ConfigOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_maxFail(x)(st))(i)(xs)(st)+c_maxFail x st = Curry.RunTimeSystem.patternFail("EasyCheck.maxFail")(x)++++c_every :: Curry.Module.EasyCheck.C_Config -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_every x1@(Curry.Module.EasyCheck.C_Config x2 x3 x4) st = x4+c_every (Curry.Module.EasyCheck.C_ConfigOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_every(x)(st))(i)(xs)(st)+c_every x st = Curry.RunTimeSystem.patternFail("EasyCheck.every")(x)++++c_setEvery :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.EasyCheck.C_Config -> Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Config+c_setEvery x1 x2@(Curry.Module.EasyCheck.C_Config x3 x4 x5) st = Curry.Module.EasyCheck.C_Config(x3)(x4)(x1)+c_setEvery x1 (Curry.Module.EasyCheck.C_ConfigOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_setEvery(x1)(x)(st))(i)(xs)(st)+c_setEvery x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.setEvery")(x)++++c_easy :: Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Config+c_easy st = Curry.Module.EasyCheck.C_Config(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_easy'46_'35lambda7))++++c_easy'46_'35lambda7 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_easy'46_'35lambda7 x1 x2 st = let {x3 = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.c_show(Curry.Module.Prelude.op_43(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))} in Curry.Module.Prelude.op_43_43(x3)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_easy'46_'35lambda7'46_'35lambda8))(x3)(st))(st)++++c_easy'46_'35lambda7'46_'35lambda8 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_easy'46_'35lambda7'46_'35lambda8 x1 st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st)++++c_verbose :: Curry.RunTimeSystem.State -> Curry.Module.EasyCheck.C_Config+c_verbose st = Curry.Module.EasyCheck.c_setEvery(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_verbose'46_'35lambda9))(Curry.Module.EasyCheck.c_easy(st))(st)++++c_verbose'46_'35lambda9 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_verbose'46_'35lambda9 x1 x2 st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x1)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))(Curry.Module.Prelude.c_unlines(x2)(st))(st))(st)++++c_easyCheck :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_easyCheck st = Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_check(Curry.Module.EasyCheck.c_easy(st)))++++c_verboseCheck :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_verboseCheck st = Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_check(Curry.Module.EasyCheck.c_verbose(st)))++++c_suc :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)+c_suc x1 st = Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_forAll(x1)(Curry.Module.Prelude.c_unknown(st)))++++c_easyCheck1 :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_easyCheck1 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_easyCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st)++++c_easyCheck2 :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_easyCheck2 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_easyCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st)++++c_easyCheck3 :: (Curry t0,Curry t1,Curry t2) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_easyCheck3 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_easyCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st))(st)++++c_easyCheck4 :: (Curry t0,Curry t1,Curry t2,Curry t3) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_easyCheck4 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_easyCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st))(st))(st)++++c_easyCheck5 :: (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t4 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_easyCheck5 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_easyCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st))(st))(st))(st)++++c_verboseCheck1 :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_verboseCheck1 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_verboseCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st)++++c_verboseCheck2 :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_verboseCheck2 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_verboseCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st)++++c_verboseCheck3 :: (Curry t0,Curry t1,Curry t2) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_verboseCheck3 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_verboseCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st))(st)++++c_verboseCheck4 :: (Curry t0,Curry t1,Curry t2,Curry t3) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_verboseCheck4 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_verboseCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st))(st))(st)++++c_verboseCheck5 :: (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t4 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test)))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_verboseCheck5 st = Curry.Module.Prelude.op_46(Curry.Module.EasyCheck.c_verboseCheck(st))(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.EasyCheck.c_suc(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(st))(st))(st))(st))(st))(st)++++c_check :: Curry.Module.EasyCheck.C_Config -> (Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_check x1 x2 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.EasyCheck.c_evalModeIsOrBased(st))(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_check'46_'35lambda10(x1)(x2)))(st)++++c_check'46_'35lambda10 :: Curry.Module.EasyCheck.C_Config -> (Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_check'46_'35lambda10 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.EasyCheck.c_tests(x1)(x2)(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.List)(st)+c_check'46_'35lambda10 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_putStrLn))(Curry.Module.Prelude.c_unlines((Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('k'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))))))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('P'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\''))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\''))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('k'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))))))))))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\''))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('C'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('='))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('B'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\''))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('~'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('/'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('k'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.List)((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(Curry.Module.Prelude.List))))))))))(st))(st)+c_check'46_'35lambda10 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_check'46_'35lambda10(x1)(x2)(x)(st))(i)(xs)(st)+c_check'46_'35lambda10 x1 x2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.check._#lambda10")(x)++++c_tests :: Curry.Module.EasyCheck.C_Config -> (Curry.Module.Prelude.List Curry.Module.EasyCheck.C_Test) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_tests x1 x2@Curry.Module.Prelude.List x3 x4 x5 st = Curry.Module.EasyCheck.c_done((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('P'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))(Curry.Module.Prelude.List)))))))(x3)(x5)(st)+c_tests x1 x2@((Curry.Module.Prelude.:<) x6 x7) x3 x4 x5 st = Curry.Module.EasyCheck.c_tests_case_27(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.EasyCheck.c_maxTest(x1)(st))(st))(st)+c_tests x1 (Curry.Module.Prelude.ListOr i xs) x3 x4 x5 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests(x1)(x)(x3)(x4)(x5)(st))(i)(xs)(st)+c_tests x1 x x3 x4 x5 st = Curry.RunTimeSystem.patternFail("EasyCheck.tests")(x)++++c_nth :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_nth x1 st = Curry.Module.EasyCheck.c_nth_case_19(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)++++c_done :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_done x1 x2 x3 st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_putStr))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List))))))(Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_done_case_16(x2)(Curry.Module.Prelude.op_62_61(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(Curry.Module.Prelude.op_36(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_done'46display'46199))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_done'46entry'46199(x2)))))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.c_reverse(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Sort.c_mergeSort(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_leqPair(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_60_61))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_leqList(Curry.Module.Sort.c_leqString(st))))))))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_done'46pairLength'46199))))(Curry.Module.Prelude.op_46(Curry.Module.List.c_group(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Sort.c_mergeSort(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_leqList(Curry.Module.Sort.c_leqString(st))))))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_not))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_null))(st))))(st))(st))(st))(st))(st))(st))(st))(x3)(st))(st))(st))(st))(st))(st))(st)++++c_done'46display'46199 :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_done'46display'46199 x1@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))+c_done'46display'46199 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.EasyCheck.c_done'46display'46199_case_15(x1)(x2)(x3)(st)+c_done'46display'46199 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_done'46display'46199(x)(st))(i)(xs)(st)+c_done'46display'46199 x st = Curry.RunTimeSystem.patternFail("EasyCheck.done.display.199")(x)++++c_done'46pairLength'46199 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0+c_done'46pairLength'46199 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.T2(Curry.Module.Prelude.c_length(x1)(st))(x2)+c_done'46pairLength'46199 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_done'46pairLength'46199(x)(st))(i)(xs)(st)+c_done'46pairLength'46199 x st = Curry.RunTimeSystem.patternFail("EasyCheck.done.pairLength.199")(x)++++c_done'46percentage'46199 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_done'46percentage'46199 x1 x2 st = let {x3 = Curry.Module.Prelude.c_show(Curry.Module.Prelude.c_div(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))))(x1)(st))(x2)(st))(st)} in Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_replicate(Curry.Module.Prelude.op_45(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))(Curry.Module.Prelude.c_length(x3)(st))(st))(Curry.Module.Prelude.C_Char(' '))(st))(Curry.Module.Prelude.op_43_43(x3)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('%'))(Curry.Module.Prelude.List))(st))(st)++++c_done'46entry'46199 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_done'46entry'46199 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_done'46percentage'46199(x3)(x1)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(Curry.Module.Prelude.c_concat(Curry.Module.List.c_intersperse((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))(x4)(st))(st))(st))(st)+c_done'46entry'46199 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_done'46entry'46199(x1)(x)(st))(i)(xs)(st)+c_done'46entry'46199 x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.done.entry.199")(x)++++c_leqPair :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.T2 t0 t1) -> (Curry.Module.Prelude.T2 t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_leqPair x1 x2 x3@(Curry.Module.Prelude.T2 x5 x6) x4 st = Curry.Module.EasyCheck.c_leqPair_case_14(x1)(x2)(x5)(x6)(x4)(st)+c_leqPair x1 x2 (Curry.Module.Prelude.T2Or i xs) x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leqPair(x1)(x2)(x)(x4)(st))(i)(xs)(st)+c_leqPair x1 x2 x x4 st = Curry.RunTimeSystem.patternFail("EasyCheck.leqPair")(x)++++c_leList :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_leList x1 x2@Curry.Module.Prelude.List x3 st = Curry.Module.EasyCheck.c_leList_case_11(x3)(st)+c_leList x1 x2@((Curry.Module.Prelude.:<) x6 x7) x3 st = Curry.Module.EasyCheck.c_leList_case_10(x1)(x6)(x7)(x3)(st)+c_leList x1 (Curry.Module.Prelude.ListOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leList(x1)(x)(x3)(st))(i)(xs)(st)+c_leList x1 x x3 st = Curry.RunTimeSystem.patternFail("EasyCheck.leList")(x)++++c_valuesOf :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_valuesOf st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_rndLevelDiagFlat(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))))))))))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Meta.c_searchTree))(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))))(st))(st)++++c_rndLevelDiag :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_rndLevelDiag x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_rndLevelDiag'46_'35lambda15))(Curry.Module.Prelude.List)(Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_diagonal(st))(Curry.Module.EasyCheck.c_rndLevels(x1)((Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.List))(st))(st))(st)++++c_rndLevelDiag'46_'35lambda15 :: (Curry t119) => (Curry.Module.Prelude.C_SearchTree t119) -> (Curry.Module.Prelude.List t119) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t119+c_rndLevelDiag'46_'35lambda15 x1@(Curry.Module.Prelude.C_Value x3) x2 st = (Curry.Module.Prelude.:<)(x3)(x2)+c_rndLevelDiag'46_'35lambda15 x1@Curry.Module.Prelude.C_Fail x2 st = x2+c_rndLevelDiag'46_'35lambda15 x1@(Curry.Module.Prelude.C_Choice x4) x2 st = x2+c_rndLevelDiag'46_'35lambda15 x1@Curry.Module.Prelude.C_Suspend x2 st = x2+c_rndLevelDiag'46_'35lambda15 (Curry.Module.Prelude.C_SearchTreeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_rndLevelDiag'46_'35lambda15(x)(x2)(st))(i)(xs)(st)+c_rndLevelDiag'46_'35lambda15 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.rndLevelDiag._#lambda15")(x)++++c_rndLevels :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0))+c_rndLevels x1 x2 st = let {x3 = Curry.Module.RandomExternal.c_split(x1)(st)} in Curry.Module.EasyCheck.c_rndLevels_case_9(x2)(x3)(Curry.Module.Prelude.c_null(x2)(st))(st)++++c_rndLevels'46_'35selFP3'35r :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_rndLevels'46_'35selFP3'35r x1@((Curry.Module.Prelude.:<) x2 x3) st = x2+c_rndLevels'46_'35selFP3'35r (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_rndLevels'46_'35selFP3'35r(x)(st))(i)(xs)(st)+c_rndLevels'46_'35selFP3'35r x st = Curry.RunTimeSystem.patternFail("EasyCheck.rndLevels._#selFP3#r")(x)++++c_rndLevels'46_'35selFP4'35rs :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_rndLevels'46_'35selFP4'35rs x1@((Curry.Module.Prelude.:<) x2 x3) st = x3+c_rndLevels'46_'35selFP4'35rs (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_rndLevels'46_'35selFP4'35rs(x)(st))(i)(xs)(st)+c_rndLevels'46_'35selFP4'35rs x st = Curry.RunTimeSystem.patternFail("EasyCheck.rndLevels._#selFP4#rs")(x)++++c_rndLevels'46_'35lambda19 :: (Curry t68) => (Curry.Module.Prelude.C_SearchTree t68) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t68))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t68))+c_rndLevels'46_'35lambda19 x1@(Curry.Module.Prelude.C_Choice x3) x2 st = (Curry.Module.Prelude.:<)(x3)(x2)+c_rndLevels'46_'35lambda19 x1@Curry.Module.Prelude.C_Fail x2 st = x2+c_rndLevels'46_'35lambda19 x1@(Curry.Module.Prelude.C_Value x4) x2 st = x2+c_rndLevels'46_'35lambda19 x1@Curry.Module.Prelude.C_Suspend x2 st = x2+c_rndLevels'46_'35lambda19 (Curry.Module.Prelude.C_SearchTreeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_rndLevels'46_'35lambda19(x)(x2)(st))(i)(xs)(st)+c_rndLevels'46_'35lambda19 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.rndLevels._#lambda19")(x)++++c_rndLevelDiagFlat :: (Curry t0) => Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_rndLevelDiagFlat x1 x2 x3 st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_concat))(Curry.Module.EasyCheck.c_transpose(Curry.Module.Prelude.c_zipWith(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_rndLevelDiag))(Curry.Module.RandomExternal.c_split(x2)(st))(Curry.Module.EasyCheck.c_flatRep(x1)((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List))(st))(st))(st))(st)++++c_flat :: (Curry t0) => (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0)+c_flat x1@(Curry.Module.Prelude.C_Value x2) st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.List)+c_flat x1@(Curry.Module.Prelude.C_Choice x3) st = x3+c_flat x1@Curry.Module.Prelude.C_Fail st = Curry.Module.Prelude.List+c_flat x1@Curry.Module.Prelude.C_Suspend st = Curry.Module.Prelude.List+c_flat (Curry.Module.Prelude.C_SearchTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_flat(x)(st))(i)(xs)(st)+c_flat x st = Curry.RunTimeSystem.patternFail("EasyCheck.flat")(x)++++c_flatRep :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0)+c_flatRep x1 x2 st = Curry.Module.EasyCheck.c_flatRep_case_8(x1)(x2)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_diagonal :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_diagonal st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_concat))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_diagonal'46diags'46268))(Curry.Module.Prelude.List)))(st)++++c_diagonal'46merge'46268 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)+c_diagonal'46merge'46268 x1@Curry.Module.Prelude.List x2 st = x2+c_diagonal'46merge'46268 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.EasyCheck.c_diagonal'46merge'46268_case_6(x1)(x3)(x4)(x2)(st)+c_diagonal'46merge'46268 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_diagonal'46merge'46268(x)(x2)(st))(i)(xs)(st)+c_diagonal'46merge'46268 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.diagonal.merge.268")(x)++++c_diagonal'46diags'46268 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)+c_diagonal'46diags'46268 x1@Curry.Module.Prelude.List x2 st = x2+c_diagonal'46diags'46268 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List))(Curry.Module.EasyCheck.c_diagonal'46merge'46268(x4)(x2)(st))+c_diagonal'46diags'46268 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_diagonal'46diags'46268(x)(x2)(st))(i)(xs)(st)+c_diagonal'46diags'46268 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.diagonal.diags.268")(x)++++c_shuffle :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_shuffle x1 x2 st = Curry.Module.EasyCheck.c_shuffleWithLen(Curry.Module.RandomExternal.c_nextInt(x1)(st))(Curry.Module.Prelude.c_length(x2)(st))(x2)(st)++++c_shuffleWithLen :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_shuffleWithLen x1@((Curry.Module.Prelude.:<) x4 x5) x2 x3 st = let {x6 = Curry.Module.Prelude.c_splitAt(Curry.Module.Prelude.c_mod(Curry.Module.Integer.c_abs(x4)(st))(x2)(st))(x3)(st)} in Curry.Module.EasyCheck.c_shuffleWithLen_case_5(x2)(x5)(x6)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)+c_shuffleWithLen (Curry.Module.Prelude.ListOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen(x)(x2)(x3)(st))(i)(xs)(st)+c_shuffleWithLen x x2 x3 st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen")(x)++++c_shuffleWithLen'46_'35selFP6'35ys :: (Curry t39) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t39) (Curry.Module.Prelude.List t39)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t39+c_shuffleWithLen'46_'35selFP6'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP6'35ys_case_3(x2)(x3)(st)+c_shuffleWithLen'46_'35selFP6'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP6'35ys(x)(st))(i)(xs)(st)+c_shuffleWithLen'46_'35selFP6'35ys x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen._#selFP6#ys")(x)++++c_shuffleWithLen'46_'35selFP7'35z :: (Curry t39) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t39) (Curry.Module.Prelude.List t39)) -> Curry.RunTimeSystem.State -> t39+c_shuffleWithLen'46_'35selFP7'35z x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP7'35z_case_2(x3)(st)+c_shuffleWithLen'46_'35selFP7'35z (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP7'35z(x)(st))(i)(xs)(st)+c_shuffleWithLen'46_'35selFP7'35z x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen._#selFP7#z")(x)++++c_shuffleWithLen'46_'35selFP8'35zs :: (Curry t39) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t39) (Curry.Module.Prelude.List t39)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t39+c_shuffleWithLen'46_'35selFP8'35zs x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP8'35zs_case_1(x3)(st)+c_shuffleWithLen'46_'35selFP8'35zs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP8'35zs(x)(st))(i)(xs)(st)+c_shuffleWithLen'46_'35selFP8'35zs x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen._#selFP8#zs")(x)++++c_transpose :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)+c_transpose x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_transpose x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.EasyCheck.c_transpose_case_0(x3)(x2)(st)+c_transpose (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_transpose(x)(st))(i)(xs)(st)+c_transpose x st = Curry.RunTimeSystem.patternFail("EasyCheck.transpose")(x)++++c_transpose'46_'35lambda24 :: (Curry t151) => (Curry.Module.Prelude.List t151) -> (Curry.Module.Prelude.List t151) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t151+c_transpose'46_'35lambda24 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = (Curry.Module.Prelude.:<)(x3)(x2)+c_transpose'46_'35lambda24 x1@Curry.Module.Prelude.List x2 st = x2+c_transpose'46_'35lambda24 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_transpose'46_'35lambda24(x)(x2)(st))(i)(xs)(st)+c_transpose'46_'35lambda24 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.transpose._#lambda24")(x)++++c_transpose'46_'35lambda28 :: (Curry t151) => (Curry.Module.Prelude.List t151) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List t151)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t151)+c_transpose'46_'35lambda28 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = (Curry.Module.Prelude.:<)(x4)(x2)+c_transpose'46_'35lambda28 x1@Curry.Module.Prelude.List x2 st = x2+c_transpose'46_'35lambda28 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_transpose'46_'35lambda28(x)(x2)(st))(i)(xs)(st)+c_transpose'46_'35lambda28 x x2 st = Curry.RunTimeSystem.patternFail("EasyCheck.transpose._#lambda28")(x)++++c_evalModeIsOrBased :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_evalModeIsOrBased st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_getSearchTree(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(Curry.Module.Prelude.c_unknown(st))(st))(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.C_Value(Curry.Module.Prelude.T0))))(st))(st)++++c_transpose_case_0 x3 x2@Curry.Module.Prelude.List st = Curry.Module.EasyCheck.c_transpose(x3)(st)+c_transpose_case_0 x3 x2@((Curry.Module.Prelude.:<) x4 x5) st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x4)(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_transpose'46_'35lambda24))(Curry.Module.Prelude.List)(x3)(st)))(Curry.Module.EasyCheck.c_transpose((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_transpose'46_'35lambda28))(Curry.Module.Prelude.List)(x3)(st)))(st))+c_transpose_case_0 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_transpose_case_0(x3)(x)(st))(i)(xs)(st)+c_transpose_case_0 x3 x st = Curry.RunTimeSystem.patternFail("EasyCheck.transpose_case_0")(x)++++c_shuffleWithLen'46_'35selFP8'35zs_case_1 x3@((Curry.Module.Prelude.:<) x4 x5) st = x5+c_shuffleWithLen'46_'35selFP8'35zs_case_1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP8'35zs_case_1(x)(st))(i)(xs)(st)+c_shuffleWithLen'46_'35selFP8'35zs_case_1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen._#selFP8#zs_case_1")(x)++++c_shuffleWithLen'46_'35selFP7'35z_case_2 x3@((Curry.Module.Prelude.:<) x4 x5) st = x4+c_shuffleWithLen'46_'35selFP7'35z_case_2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP7'35z_case_2(x)(st))(i)(xs)(st)+c_shuffleWithLen'46_'35selFP7'35z_case_2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen._#selFP7#z_case_2")(x)++++c_shuffleWithLen'46_'35selFP6'35ys_case_3 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = x2+c_shuffleWithLen'46_'35selFP6'35ys_case_3 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP6'35ys_case_3(x2)(x)(st))(i)(xs)(st)+c_shuffleWithLen'46_'35selFP6'35ys_case_3 x2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen._#selFP6#ys_case_3")(x)++++c_shuffleWithLen_case_5 x2 x5 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_shuffleWithLen_case_5 x2 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_shuffleWithLen_case_4(x2)(x5)(x6)(Curry.Module.Prelude.c_otherwise(st))(st)+c_shuffleWithLen_case_5 x2 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen_case_5(x2)(x5)(x6)(x)(st))(i)(xs)(st)+c_shuffleWithLen_case_5 x2 x5 x6 x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen_case_5")(x)++++c_shuffleWithLen_case_4 x2 x5 x6 x7@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP7'35z(x6)(st))(Curry.Module.EasyCheck.c_shuffleWithLen(x5)(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP6'35ys(x6)(st))(Curry.Module.EasyCheck.c_shuffleWithLen'46_'35selFP8'35zs(x6)(st))(st))(st))+c_shuffleWithLen_case_4 x2 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_shuffleWithLen_case_4(x2)(x5)(x6)(x)(st))(i)(xs)(st)+c_shuffleWithLen_case_4 x2 x5 x6 x st = Curry.RunTimeSystem.patternFail("EasyCheck.shuffleWithLen_case_4")(x)++++c_diagonal'46merge'46268_case_6 x1 x3 x4 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pc))((Curry.Module.Prelude.:<)))(Curry.Module.Prelude.List)))(x1)(st)+c_diagonal'46merge'46268_case_6 x1 x3 x4 x2@((Curry.Module.Prelude.:<) x5 x6) st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x3)(x5))(Curry.Module.EasyCheck.c_diagonal'46merge'46268(x4)(x6)(st))+c_diagonal'46merge'46268_case_6 x1 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_diagonal'46merge'46268_case_6(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_diagonal'46merge'46268_case_6 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("EasyCheck.diagonal.merge.268_case_6")(x)++++c_flatRep_case_8 x1 x2 x3@Curry.Module.Prelude.C_True st = x2+c_flatRep_case_8 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_flatRep_case_7(x1)(x2)(Curry.Module.Prelude.c_otherwise(st))(st)+c_flatRep_case_8 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_flatRep_case_8(x1)(x2)(x)(st))(i)(xs)(st)+c_flatRep_case_8 x1 x2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.flatRep_case_8")(x)++++c_flatRep_case_7 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.EasyCheck.c_flatRep(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.EasyCheck.c_flat))(st))(x2)(st))(st)+c_flatRep_case_7 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_flatRep_case_7(x1)(x2)(x)(st))(i)(xs)(st)+c_flatRep_case_7 x1 x2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.flatRep_case_7")(x)++++c_rndLevels_case_9 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_rndLevels_case_9 x2 x3 x4@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.EasyCheck.c_rndLevels(Curry.Module.EasyCheck.c_rndLevels'46_'35selFP3'35r(x3)(st))(Curry.Module.Prelude.c_concat(Curry.Module.Prelude.c_zipWith(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_shuffle))(Curry.Module.EasyCheck.c_rndLevels'46_'35selFP4'35rs(x3)(st))(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.EasyCheck.c_rndLevels'46_'35lambda19))(Curry.Module.Prelude.List)(x2)(st))(st))(st))(st))+c_rndLevels_case_9 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_rndLevels_case_9(x2)(x3)(x)(st))(i)(xs)(st)+c_rndLevels_case_9 x2 x3 x st = Curry.RunTimeSystem.patternFail("EasyCheck.rndLevels_case_9")(x)++++c_leList_case_10 x1 x6 x7 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_False+c_leList_case_10 x1 x6 x7 x3@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x6)(st))(x8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x6)(x8)(st))(Curry.Module.EasyCheck.c_leList(x1)(x7)(x9)(st))(st))(st)+c_leList_case_10 x1 x6 x7 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leList_case_10(x1)(x6)(x7)(x)(st))(i)(xs)(st)+c_leList_case_10 x1 x6 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.leList_case_10")(x)++++c_leList_case_11 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_False+c_leList_case_11 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.C_True+c_leList_case_11 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leList_case_11(x)(st))(i)(xs)(st)+c_leList_case_11 x st = Curry.RunTimeSystem.patternFail("EasyCheck.leList_case_11")(x)++++c_leqPair_case_14 x1 x2 x5 x6 x4@(Curry.Module.Prelude.T2 x7 x8) st = Curry.Module.EasyCheck.c_leqPair_case_13(x1)(x2)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.op_61_61(x5)(x7)(st))(st)+c_leqPair_case_14 x1 x2 x5 x6 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leqPair_case_14(x1)(x2)(x5)(x6)(x)(st))(i)(xs)(st)+c_leqPair_case_14 x1 x2 x5 x6 x st = Curry.RunTimeSystem.patternFail("EasyCheck.leqPair_case_14")(x)++++c_leqPair_case_13 x1 x2 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x6)(st))(x8)(st)+c_leqPair_case_13 x1 x2 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_leqPair_case_12(x1)(x5)(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_leqPair_case_13 x1 x2 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leqPair_case_13(x1)(x2)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_leqPair_case_13 x1 x2 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("EasyCheck.leqPair_case_13")(x)++++c_leqPair_case_12 x1 x5 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x5)(st))(x7)(st)+c_leqPair_case_12 x1 x5 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_leqPair_case_12(x1)(x5)(x7)(x)(st))(i)(xs)(st)+c_leqPair_case_12 x1 x5 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.leqPair_case_12")(x)++++c_done'46display'46199_case_15 x1 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))(Curry.Module.Prelude.op_43_43(x2)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))(st))(st)+c_done'46display'46199_case_15 x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List)))(Curry.Module.Prelude.c_unlines(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_43_43))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List))))(x1)(st))(st))(st)+c_done'46display'46199_case_15 x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_done'46display'46199_case_15(x1)(x2)(x)(st))(i)(xs)(st)+c_done'46display'46199_case_15 x1 x2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.done.display.199_case_15")(x)++++c_done_case_16 x2 x3@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))(Curry.Module.Prelude.List)+c_done_case_16 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.List+c_done_case_16 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_done_case_16(x2)(x)(st))(i)(xs)(st)+c_done_case_16 x2 x st = Curry.RunTimeSystem.patternFail("EasyCheck.done_case_16")(x)++++c_nth_case_19 x1 x2@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List)))))+c_nth_case_19 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_nth_case_18(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st)+c_nth_case_19 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_nth_case_19(x1)(x)(st))(i)(xs)(st)+c_nth_case_19 x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.nth_case_19")(x)++++c_nth_case_18 x1 x2@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))(Curry.Module.Prelude.List))))))+c_nth_case_18 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_nth_case_17(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))(st))(st)+c_nth_case_18 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_nth_case_18(x1)(x)(st))(i)(xs)(st)+c_nth_case_18 x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.nth_case_18")(x)++++c_nth_case_17 x1 x2@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))(Curry.Module.Prelude.List)))))+c_nth_case_17 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x1)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))(Curry.Module.Prelude.List)))(st)+c_nth_case_17 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_nth_case_17(x1)(x)(st))(i)(xs)(st)+c_nth_case_17 x1 x st = Curry.RunTimeSystem.patternFail("EasyCheck.nth_case_17")(x)++++c_tests_case_27 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.EasyCheck.c_done((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('K'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))(Curry.Module.Prelude.List)))))))))))(x3)(x5)(st)+c_tests_case_27 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_tests_case_26(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.EasyCheck.c_maxFail(x1)(st))(st))(st)+c_tests_case_27 x1 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_27(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_tests_case_27 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_27")(x)++++c_tests_case_26 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.EasyCheck.c_done((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List))))))))))))))))))))))))))(x3)(x5)(st)+c_tests_case_26 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_tests_case_25(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_tests_case_26 x1 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_26(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_tests_case_26 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_26")(x)++++c_tests_case_25 x1 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_62_62(Curry.Module.Prelude.c_putStr(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.EasyCheck.c_every(x1)(st))(x3)(st))(Curry.Module.EasyCheck.c_args(x6)(st))(st))(st))(Curry.Module.EasyCheck.c_tests_case_24(x1)(x3)(x4)(x5)(x6)(x7)(Curry.Module.EasyCheck.c_result(x6)(st))(st))(st)+c_tests_case_25 x1 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_25(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_tests_case_25 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_25")(x)++++c_tests_case_24 x1 x3 x4 x5 x6 x7 x8@Curry.Module.EasyCheck.C_Undef st = Curry.Module.EasyCheck.c_tests(x1)(x7)(x3)(Curry.Module.Prelude.op_43(x4)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x5)(st)+c_tests_case_24 x1 x3 x4 x5 x6 x7 x8@Curry.Module.EasyCheck.C_Ok st = Curry.Module.EasyCheck.c_tests(x1)(x7)(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x4)((Curry.Module.Prelude.:<)(Curry.Module.EasyCheck.c_stamp(x6)(st))(x5))(st)+c_tests_case_24 x1 x3 x4 x5 x6 x7 (Curry.Module.EasyCheck.C_Falsified x8) st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_putStr))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_nth(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List))))))(Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_tests_case_23(x6)(Curry.Module.Prelude.c_null(Curry.Module.EasyCheck.c_args(x6)(st))(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_unlines(Curry.Module.EasyCheck.c_args(x6)(st))(st))(Curry.Module.EasyCheck.c_tests_case_22(x8)(Curry.Module.Prelude.c_null(x8)(st))(st))(st))(st))(st))(st))(st))(st))(st)+c_tests_case_24 x1 x3 x4 x5 x6 x7 x8@(Curry.Module.EasyCheck.C_Ambigious x9 x10) st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_putStr))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x9)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))(Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_nth(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List))))))(Curry.Module.Prelude.op_43_43(Curry.Module.EasyCheck.c_tests_case_21(x6)(Curry.Module.Prelude.c_null(Curry.Module.EasyCheck.c_args(x6)(st))(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_unlines(Curry.Module.EasyCheck.c_args(x6)(st))(st))(Curry.Module.EasyCheck.c_tests_case_20(x10)(Curry.Module.Prelude.c_null(x10)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+c_tests_case_24 x1 x3 x4 x5 x6 x7 (Curry.Module.EasyCheck.C_ResultOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_24(x1)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_tests_case_24 x1 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_24")(x)++++c_tests_case_20 x10 x11@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))+c_tests_case_20 x10 x11@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))(Curry.Module.Prelude.c_unlines(x10)(st))(st)+c_tests_case_20 x10 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_20(x10)(x)(st))(i)(xs)(st)+c_tests_case_20 x10 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_20")(x)++++c_tests_case_21 x6 x7@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List)+c_tests_case_21 x6 x7@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List))))))))))))+c_tests_case_21 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_21(x6)(x)(st))(i)(xs)(st)+c_tests_case_21 x6 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_21")(x)++++c_tests_case_22 x8 x9@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))+c_tests_case_22 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))))))))(Curry.Module.Prelude.c_unlines(x8)(st))(st)+c_tests_case_22 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_22(x8)(x)(st))(i)(xs)(st)+c_tests_case_22 x8 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_22")(x)++++c_tests_case_23 x6 x7@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List)+c_tests_case_23 x6 x7@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List))))))))))))+c_tests_case_23 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_tests_case_23(x6)(x)(st))(i)(xs)(st)+c_tests_case_23 x6 x st = Curry.RunTimeSystem.patternFail("EasyCheck.tests_case_23")(x)++++c_is'46_'35lambda3_case_28 x1 x3 x4@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_apply(x1)(x3)(st)+c_is'46_'35lambda3_case_28 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Prelude.C_False+c_is'46_'35lambda3_case_28 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_is'46_'35lambda3_case_28(x1)(x3)(x)(st))(i)(xs)(st)+c_is'46_'35lambda3_case_28 x1 x3 x st = Curry.RunTimeSystem.patternFail("EasyCheck.is._#lambda3_case_28")(x)++++c_test_case_32 x3 x5@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.EasyCheck.c_test_case_31(x3)(x5)(x7)(x6)(st)+c_test_case_32 x3 x5@Curry.Module.Prelude.List st = Curry.Module.EasyCheck.C_Ambigious(Curry.Module.Prelude.List)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(x3)(st))+c_test_case_32 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_test_case_32(x3)(x)(st))(i)(xs)(st)+c_test_case_32 x3 x st = Curry.RunTimeSystem.patternFail("EasyCheck.test_case_32")(x)++++c_test_case_31 x3 x5 x7 x6@Curry.Module.Prelude.C_True st = Curry.Module.EasyCheck.c_test_case_30(x3)(x5)(x7)(st)+c_test_case_31 x3 x5 x7 x6@Curry.Module.Prelude.C_False st = Curry.Module.EasyCheck.c_test_case_29(x3)(x5)(x7)(st)+c_test_case_31 x3 x5 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_test_case_31(x3)(x5)(x7)(x)(st))(i)(xs)(st)+c_test_case_31 x3 x5 x7 x st = Curry.RunTimeSystem.patternFail("EasyCheck.test_case_31")(x)++++c_test_case_29 x3 x5 x7@Curry.Module.Prelude.List st = Curry.Module.EasyCheck.C_Falsified(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(x3)(st))+c_test_case_29 x3 x5 x7@((Curry.Module.Prelude.:<) x10 x11) st = Curry.Module.EasyCheck.C_Ambigious(x5)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(x3)(st))+c_test_case_29 x3 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_test_case_29(x3)(x5)(x)(st))(i)(xs)(st)+c_test_case_29 x3 x5 x st = Curry.RunTimeSystem.patternFail("EasyCheck.test_case_29")(x)++++c_test_case_30 x3 x5 x7@Curry.Module.Prelude.List st = Curry.Module.EasyCheck.C_Ok+c_test_case_30 x3 x5 x7@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.EasyCheck.C_Ambigious(x5)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(x3)(st))+c_test_case_30 x3 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.EasyCheck.c_test_case_30(x3)(x5)(x)(st))(i)(xs)(st)+c_test_case_30 x3 x5 x st = Curry.RunTimeSystem.patternFail("EasyCheck.test_case_30")(x)++
+ dist/build/Curry/Module/FileGoodies.hs view
@@ -0,0 +1,237 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.FileGoodies (module Curry.Module.FileGoodies) where++import Curry.RunTimeSystem+import Curry.Module.Directory+import Curry.Module.List+import Curry.Module.Prelude++++-- begin included++++-- end included++c_separatorChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_separatorChar st = Curry.Module.Prelude.C_Char('/')++++c_pathSeparatorChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_pathSeparatorChar st = Curry.Module.Prelude.C_Char(':')++++c_suffixSeparatorChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_suffixSeparatorChar st = Curry.Module.Prelude.C_Char('.')++++c_isAbsolute :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isAbsolute x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Char('/'))(st)+c_isAbsolute (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_isAbsolute(x)(st))(i)(xs)(st)+c_isAbsolute x st = Curry.RunTimeSystem.patternFail("FileGoodies.isAbsolute")(x)++++c_dirName :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_dirName x1 st = Curry.Module.Prelude.c_fst(Curry.Module.FileGoodies.c_splitDirectoryBaseName(x1)(st))(st)++++c_baseName :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_baseName x1 st = Curry.Module.Prelude.c_snd(Curry.Module.FileGoodies.c_splitDirectoryBaseName(x1)(st))(st)++++c_splitDirectoryBaseName :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_splitDirectoryBaseName x1 st = let {x2 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.C_Char('/'))))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x1)(st))(st)} in let {x3 = Curry.Module.FileGoodies.c_splitDirectoryBaseName'46_'35selFP3'35rbase(x2)(st)} in let {x4 = Curry.Module.FileGoodies.c_splitDirectoryBaseName'46_'35selFP4'35rdir(x2)(st)} in Curry.Module.FileGoodies.c_splitDirectoryBaseName_case_6(x3)(x4)(Curry.Module.Prelude.c_null(x4)(st))(st)++++c_splitDirectoryBaseName'46_'35selFP3'35rbase :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_splitDirectoryBaseName'46_'35selFP3'35rbase x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_splitDirectoryBaseName'46_'35selFP3'35rbase (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitDirectoryBaseName'46_'35selFP3'35rbase(x)(st))(i)(xs)(st)+c_splitDirectoryBaseName'46_'35selFP3'35rbase x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitDirectoryBaseName._#selFP3#rbase")(x)++++c_splitDirectoryBaseName'46_'35selFP4'35rdir :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_splitDirectoryBaseName'46_'35selFP4'35rdir x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_splitDirectoryBaseName'46_'35selFP4'35rdir (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitDirectoryBaseName'46_'35selFP4'35rdir(x)(st))(i)(xs)(st)+c_splitDirectoryBaseName'46_'35selFP4'35rdir x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitDirectoryBaseName._#selFP4#rdir")(x)++++c_stripSuffix :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_stripSuffix st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))(Curry.Module.Prelude.pf(Curry.Module.FileGoodies.c_splitBaseName))(st)++++c_fileSuffix :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_fileSuffix st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(Curry.Module.Prelude.pf(Curry.Module.FileGoodies.c_splitBaseName))(st)++++c_splitBaseName :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_splitBaseName x1 st = let {x2 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.C_Char('.'))))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x1)(st))(st)} in let {x3 = Curry.Module.FileGoodies.c_splitBaseName'46_'35selFP6'35rsuffix(x2)(st)} in let {x4 = Curry.Module.FileGoodies.c_splitBaseName'46_'35selFP7'35rbase(x2)(st)} in Curry.Module.FileGoodies.c_splitBaseName_case_5(x1)(x3)(x4)(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.c_null(x4)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(Curry.Module.Prelude.C_Char('/'))(st))(x3)(st))(st))(st)++++c_splitBaseName'46_'35selFP6'35rsuffix :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_splitBaseName'46_'35selFP6'35rsuffix x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_splitBaseName'46_'35selFP6'35rsuffix (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitBaseName'46_'35selFP6'35rsuffix(x)(st))(i)(xs)(st)+c_splitBaseName'46_'35selFP6'35rsuffix x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitBaseName._#selFP6#rsuffix")(x)++++c_splitBaseName'46_'35selFP7'35rbase :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_splitBaseName'46_'35selFP7'35rbase x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_splitBaseName'46_'35selFP7'35rbase (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitBaseName'46_'35selFP7'35rbase(x)(st))(i)(xs)(st)+c_splitBaseName'46_'35selFP7'35rbase x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitBaseName._#selFP7#rbase")(x)++++c_splitPath :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_splitPath x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_splitPath x1@((Curry.Module.Prelude.:<) x2 x3) st = let {x4 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.C_Char(':'))))(st))((Curry.Module.Prelude.:<)(x2)(x3))(st)} in let {x5 = Curry.Module.FileGoodies.c_splitPath'46_'35selFP9'35ys(x4)(st)} in let {x6 = Curry.Module.FileGoodies.c_splitPath'46_'35selFP10'35zs(x4)(st)} in Curry.Module.FileGoodies.c_splitPath_case_4(x5)(x6)(Curry.Module.Prelude.c_null(x6)(st))(st)+c_splitPath (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitPath(x)(st))(i)(xs)(st)+c_splitPath x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitPath")(x)++++c_splitPath'46_'35selFP9'35ys :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_splitPath'46_'35selFP9'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_splitPath'46_'35selFP9'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitPath'46_'35selFP9'35ys(x)(st))(i)(xs)(st)+c_splitPath'46_'35selFP9'35ys x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitPath._#selFP9#ys")(x)++++c_splitPath'46_'35selFP10'35zs :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_splitPath'46_'35selFP10'35zs x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_splitPath'46_'35selFP10'35zs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitPath'46_'35selFP10'35zs(x)(st))(i)(xs)(st)+c_splitPath'46_'35selFP10'35zs x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitPath._#selFP10#zs")(x)++++c_findFileInPath :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))))+c_findFileInPath st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.FileGoodies.c_lookupFileInPath)++++c_lookupFileInPath :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_lookupFileInPath x1 x2 x3 st = Curry.Module.FileGoodies.c_lookupFileInPath_case_3(x1)(x2)(x3)(Curry.Module.FileGoodies.c_isAbsolute(x1)(st))(st)++++c_lookupFileInPath'46lookupFirstFileWithSuffix'4636 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.C_Nothing)(st)+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = let {x5 = Curry.Module.Prelude.op_43_43(x1)(x3)(st)} in Curry.Module.Prelude.op_62_62_61(Curry.Module.Directory.c_doesFileExist(x5)(st))(Curry.Module.Prelude.pf(Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3(x1)(x5)(x4)))(st)+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFileWithSuffix'4636(x1)(x)(st))(i)(xs)(st)+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636 x1 x st = Curry.RunTimeSystem.patternFail("FileGoodies.lookupFileInPath.lookupFirstFileWithSuffix.36")(x)++++c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.C_Just(x2))(st)+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFileWithSuffix'4636(x1)(x3)(st)+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_lookupFileInPath'46lookupFirstFileWithSuffix'4636'46_'35lambda3 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FileGoodies.lookupFileInPath.lookupFirstFileWithSuffix.36._#lambda3")(x)++++c_lookupFileInPath'46lookupFirstFile'4636 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_lookupFileInPath'46lookupFirstFile'4636 x1 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.C_Nothing)(st)+c_lookupFileInPath'46lookupFirstFile'4636 x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.op_62_62_61(Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFileWithSuffix'4636(Curry.Module.Prelude.op_43_43(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('/'))(x1))(st))(x2)(st))(Curry.Module.Prelude.pf(Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFile'4636'46_'35lambda2(x5)(x1)(x2)))(st)+c_lookupFileInPath'46lookupFirstFile'4636 x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFile'4636(x1)(x2)(x)(st))(i)(xs)(st)+c_lookupFileInPath'46lookupFirstFile'4636 x1 x2 x st = Curry.RunTimeSystem.patternFail("FileGoodies.lookupFileInPath.lookupFirstFile.36")(x)++++c_lookupFileInPath'46lookupFirstFile'4636'46_'35lambda2 :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_lookupFileInPath'46lookupFirstFile'4636'46_'35lambda2 x1 x2 x3 x4 st = Curry.Module.Prelude.c_maybe(Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFile'4636(x2)(x3)(x1)(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.pc(Curry.Module.Prelude.C_Just))(st))(x4)(st)++++c_getFileInPath :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getFileInPath x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.FileGoodies.c_lookupFileInPath(x1)(x2)(x3)(st))(Curry.Module.Prelude.pf(Curry.Module.FileGoodies.c_getFileInPath'46_'35lambda4(x1)(x3)))(st)++++c_getFileInPath'46_'35lambda4 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getFileInPath'46_'35lambda4 x1 x2 x3 st = Curry.Module.Prelude.c_maybe(Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_error))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))(Curry.Module.Prelude.op_43_43(x1)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))))(Curry.Module.Prelude.c_concat(Curry.Module.List.c_intersperse((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List))(x2)(st))(st))(st))(st))(st))(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(x3)(st)++++c_replaceFileName :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_replaceFileName x1 x2 st = let {x3 = Curry.Module.FileGoodies.c_splitDirectoryBaseName(x2)(st)} in let {x4 = Curry.Module.FileGoodies.c_replaceFileName'46_'35selFP12'35dir(x3)(st)} in let {x5 = Curry.Module.FileGoodies.c_replaceFileName'46_'35selFP13'35fn(x3)(st)} in Curry.Module.FileGoodies.c_replaceFileName_case_2(x1)(x5)(x4)(st)++++c_replaceFileName'46_'35selFP12'35dir :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_replaceFileName'46_'35selFP12'35dir x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_replaceFileName'46_'35selFP12'35dir (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_replaceFileName'46_'35selFP12'35dir(x)(st))(i)(xs)(st)+c_replaceFileName'46_'35selFP12'35dir x st = Curry.RunTimeSystem.patternFail("FileGoodies.replaceFileName._#selFP12#dir")(x)++++c_replaceFileName'46_'35selFP13'35fn :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_replaceFileName'46_'35selFP13'35fn x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_replaceFileName'46_'35selFP13'35fn (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_replaceFileName'46_'35selFP13'35fn(x)(st))(i)(xs)(st)+c_replaceFileName'46_'35selFP13'35fn x st = Curry.RunTimeSystem.patternFail("FileGoodies.replaceFileName._#selFP13#fn")(x)++++c_replaceFileName_case_2 x1 x5 x4@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.FileGoodies.c_replaceFileName_case_1(x1)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.op_61_61(x6)(Curry.Module.Prelude.C_Char('.'))(st))(st)+c_replaceFileName_case_2 x1 x5 x4@Curry.Module.Prelude.List st = Curry.Module.Prelude.op_43_43(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('/'))(Curry.Module.Prelude.c_apply(x1)(x5)(st)))(st)+c_replaceFileName_case_2 x1 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_replaceFileName_case_2(x1)(x5)(x)(st))(i)(xs)(st)+c_replaceFileName_case_2 x1 x5 x st = Curry.RunTimeSystem.patternFail("FileGoodies.replaceFileName_case_2")(x)++++c_replaceFileName_case_1 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.FileGoodies.c_replaceFileName_case_0(x1)(x4)(x5)(x7)(st)+c_replaceFileName_case_1 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43_43(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('/'))(Curry.Module.Prelude.c_apply(x1)(x5)(st)))(st)+c_replaceFileName_case_1 x1 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_replaceFileName_case_1(x1)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_replaceFileName_case_1 x1 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("FileGoodies.replaceFileName_case_1")(x)++++c_replaceFileName_case_0 x1 x4 x5 x7@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_apply(x1)(x5)(st)+c_replaceFileName_case_0 x1 x4 x5 x7@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Prelude.op_43_43(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('/'))(Curry.Module.Prelude.c_apply(x1)(x5)(st)))(st)+c_replaceFileName_case_0 x1 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_replaceFileName_case_0(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_replaceFileName_case_0 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("FileGoodies.replaceFileName_case_0")(x)++++c_lookupFileInPath_case_3 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFileWithSuffix'4636(x1)(x2)(st)+c_lookupFileInPath_case_3 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.FileGoodies.c_lookupFileInPath'46lookupFirstFile'4636(x1)(x2)(x3)(st)+c_lookupFileInPath_case_3 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_lookupFileInPath_case_3(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_lookupFileInPath_case_3 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FileGoodies.lookupFileInPath_case_3")(x)++++c_splitPath_case_4 x5 x6 x7@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.List)+c_splitPath_case_4 x5 x6 x7@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x5)(Curry.Module.FileGoodies.c_splitPath(Curry.Module.Prelude.c_tail(x6)(st))(st))+c_splitPath_case_4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitPath_case_4(x5)(x6)(x)(st))(i)(xs)(st)+c_splitPath_case_4 x5 x6 x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitPath_case_4")(x)++++c_splitBaseName_case_5 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(x1)(Curry.Module.Prelude.List)+c_splitBaseName_case_5 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.T2(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(Curry.Module.Prelude.c_tail(x4)(st))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x3)(st))+c_splitBaseName_case_5 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitBaseName_case_5(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_splitBaseName_case_5 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitBaseName_case_5")(x)++++c_splitDirectoryBaseName_case_6 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x3)(st))+c_splitDirectoryBaseName_case_6 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.T2(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(Curry.Module.Prelude.c_tail(x4)(st))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_reverse(st))(x3)(st))+c_splitDirectoryBaseName_case_6 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FileGoodies.c_splitDirectoryBaseName_case_6(x3)(x4)(x)(st))(i)(xs)(st)+c_splitDirectoryBaseName_case_6 x3 x4 x st = Curry.RunTimeSystem.patternFail("FileGoodies.splitDirectoryBaseName_case_6")(x)++
+ dist/build/Curry/Module/FiniteMap.hs view
@@ -0,0 +1,1214 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.FiniteMap (module Curry.Module.FiniteMap) where++import Curry.RunTimeSystem+import Curry.Module.Maybe+import Curry.Module.Prelude++++-- begin included++++-- end included++type C_LeKey t0 = t0 -> t0 -> Curry.Module.Prelude.C_Bool++type C_FiniteSet t0 = Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0++data C_FM t0 t1 = C_FM (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) (Curry.Module.FiniteMap.C_FiniteMap t0 t1)+  | C_FMFail Curry.RunTimeSystem.C_Exceptions+  | C_FMOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.FiniteMap.C_FM t0 t1))++data C_FiniteMap t0 t1 = C_EmptyFM+  | C_Branch t0 t1 Curry.Module.Prelude.C_Int (Curry.Module.FiniteMap.C_FiniteMap t0 t1) (Curry.Module.FiniteMap.C_FiniteMap t0 t1)+  | C_FiniteMapFail Curry.RunTimeSystem.C_Exceptions+  | C_FiniteMapOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.FiniteMap.C_FiniteMap t0 t1))++instance (BaseCurry t0,BaseCurry t1) => BaseCurry (Curry.Module.FiniteMap.C_FM t0 t1) where+  nf f (Curry.Module.FiniteMap.C_FM x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.FiniteMap.C_FM(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.FiniteMap.C_FM x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.FiniteMap.C_FM(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.FiniteMap.C_FMOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.FiniteMap.C_FM(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(2)++  failed  = Curry.Module.FiniteMap.C_FMFail++  branching  = Curry.Module.FiniteMap.C_FMOr++  consKind (Curry.Module.FiniteMap.C_FMOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.FiniteMap.C_FMFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.FiniteMap.C_FMFail x) = x++  orRef (Curry.Module.FiniteMap.C_FMOr x _) = x++  branches (Curry.Module.FiniteMap.C_FMOr _ x) = x++++++instance (BaseCurry t0,BaseCurry t1) => BaseCurry (Curry.Module.FiniteMap.C_FiniteMap t0 t1) where+  nf f (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> f(Curry.Module.FiniteMap.C_Branch(v1)(v2)(v3)(v4)(v5))(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> f(Curry.Module.FiniteMap.C_Branch(v1)(v2)(v3)(v4)(v5))(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.FiniteMap.C_FiniteMapOr(Curry.RunTimeSystem.mkRef(r)(5)(i))([Curry.Module.FiniteMap.C_EmptyFM,Curry.Module.FiniteMap.C_Branch(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(5)++  failed  = Curry.Module.FiniteMap.C_FiniteMapFail++  branching  = Curry.Module.FiniteMap.C_FiniteMapOr++  consKind (Curry.Module.FiniteMap.C_FiniteMapOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.FiniteMap.C_FiniteMapFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.FiniteMap.C_FiniteMapFail x) = x++  orRef (Curry.Module.FiniteMap.C_FiniteMapOr x _) = x++  branches (Curry.Module.FiniteMap.C_FiniteMapOr _ x) = x++++++instance (Curry t0,Curry t1) => Curry (Curry.Module.FiniteMap.C_FM t0 t1) where+  strEq (Curry.Module.FiniteMap.C_FM x1 x2) (Curry.Module.FiniteMap.C_FM y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.FiniteMap.C_FM x1 x2) (Curry.Module.FiniteMap.C_FM y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.FiniteMap.C_FM x1 x2) st = Curry.Module.FiniteMap.C_FM(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))++  foldCurry f c (Curry.Module.FiniteMap.C_FM x1 x2) st = f(x1)(f(x2)(c)(st))(st)++  typeName _ = "FM"++  showQ d (Curry.Module.FiniteMap.C_FM x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("FiniteMap.FM "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ _ (Curry.Module.FiniteMap.C_FMOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1) => Curry (Curry.Module.FiniteMap.C_FiniteMap t0 t1) where+  strEq Curry.Module.FiniteMap.C_EmptyFM Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) (Curry.Module.FiniteMap.C_Branch y1 y2 y3 y4 y5) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.FiniteMap.C_EmptyFM Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.C_True+  eq (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) (Curry.Module.FiniteMap.C_Branch y1 y2 y3 y4 y5) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.genEq(x5)(y5)(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_EmptyFM+  propagate f (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) st = Curry.Module.FiniteMap.C_Branch(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))++  foldCurry f c Curry.Module.FiniteMap.C_EmptyFM st = c+  foldCurry f c (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(c)(st))(st))(st))(st))(st)++  typeName _ = "FiniteMap"++  showQ _ Curry.Module.FiniteMap.C_EmptyFM = Prelude.showString("FiniteMap.EmptyFM")+  showQ d (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("FiniteMap.Branch "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x4))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x5))))))))))+++  showQ _ (Curry.Module.FiniteMap.C_FiniteMapOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1) => Show (Curry.Module.FiniteMap.C_FM t0 t1) where+  showsPrec d (Curry.Module.FiniteMap.C_FM x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("FM "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec _ (Curry.Module.FiniteMap.C_FMOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1) => Show (Curry.Module.FiniteMap.C_FiniteMap t0 t1) where+  showsPrec _ Curry.Module.FiniteMap.C_EmptyFM = Prelude.showString("EmptyFM")+  showsPrec d (Curry.Module.FiniteMap.C_Branch x1 x2 x3 x4 x5) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Branch "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x4))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x5))))))))))+++  showsPrec _ (Curry.Module.FiniteMap.C_FiniteMapOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0,Read t1) => Read (Curry.Module.FiniteMap.C_FM t0 t1) where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.FiniteMap.C_FM(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("FiniteMap")("FM")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r)++++++instance (Read t0,Read t1) => Read (Curry.Module.FiniteMap.C_FiniteMap t0 t1) where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.FiniteMap.C_EmptyFM)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("FiniteMap")("EmptyFM")(r)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.FiniteMap.C_Branch(x1)(x2)(x3)(x4)(x5))(r5) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("FiniteMap")("Branch")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2), ((,) x4 r4) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r3), ((,) x5 r5) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r4)])(r))++++++c_emptyFM :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_emptyFM x1 st = Curry.Module.FiniteMap.C_FM(x1)(Curry.Module.FiniteMap.C_EmptyFM)++++c_unitFM :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_unitFM x1 x2 x3 st = Curry.Module.FiniteMap.C_FM(x1)(Curry.Module.FiniteMap.c_unitFM'39(x2)(x3)(st))++++c_unitFM'39 :: (Curry t0,Curry t1) => t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_unitFM'39 x1 x2 st = Curry.Module.FiniteMap.C_Branch(x1)(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.FiniteMap.C_EmptyFM)(Curry.Module.FiniteMap.C_EmptyFM)++++c_listToFM :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1)+c_listToFM x1 st = Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_addListToFM(Curry.Module.FiniteMap.c_emptyFM(x1)(st)))++++c_addToFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_addToFM x1@(Curry.Module.FiniteMap.C_FM x4 x5) x2 x3 st = Curry.Module.FiniteMap.C_FM(x4)(Curry.Module.FiniteMap.c_addToFM'39(x4)(x5)(x2)(x3)(st))+c_addToFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addToFM(x)(x2)(x3)(st))(i)(xs)(st)+c_addToFM x x2 x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.addToFM")(x)++++c_addToFM'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_addToFM'39 x1 x2 x3 x4 st = Curry.Module.FiniteMap.c_addToFM_C'39(x1)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_addToFM'39'46_'35lambda2))(x2)(x3)(x4)(st)++++c_addToFM'39'46_'35lambda2 :: (Curry t270) => t270 -> t270 -> Curry.RunTimeSystem.State -> t270+c_addToFM'39'46_'35lambda2 x1 x2 st = x2++++c_addToFM_C'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_addToFM_C'39 x1 x2 x3@Curry.Module.FiniteMap.C_EmptyFM x4 x5 st = Curry.Module.FiniteMap.c_unitFM'39(x4)(x5)(st)+c_addToFM_C'39 x1 x2 x3@(Curry.Module.FiniteMap.C_Branch x6 x7 x8 x9 x10) x4 x5 st = Curry.Module.FiniteMap.c_addToFM_C'39_case_57(x1)(x2)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x6)(st))(st)+c_addToFM_C'39 x1 x2 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x4 x5 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addToFM_C'39(x1)(x2)(x)(x4)(x5)(st))(i)(xs)(st)+c_addToFM_C'39 x1 x2 x x4 x5 st = Curry.RunTimeSystem.patternFail("FiniteMap.addToFM_C'")(x)++++c_addListToFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_addListToFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_addListToFM'39(x3)(x4)(x2)(st))+c_addListToFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addListToFM(x)(x2)(st))(i)(xs)(st)+c_addListToFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.addListToFM")(x)++++c_addListToFM'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_addListToFM'39 x1 x2 x3 st = Curry.Module.FiniteMap.c_addListToFM_C'39(x1)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_addListToFM'39'46_'35lambda3))(x2)(x3)(st)++++c_addListToFM'39'46_'35lambda3 :: (Curry t246) => t246 -> t246 -> Curry.RunTimeSystem.State -> t246+c_addListToFM'39'46_'35lambda3 x1 x2 st = x2++++c_addListToFM_C'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_addListToFM_C'39 x1 x2 x3 x4 st = Curry.Module.Prelude.c_foldl(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_addListToFM_C'39'46add'4630(x2)(x1)))(x3)(x4)(st)++++c_addListToFM_C'39'46add'4630 :: (Curry t235,Curry t234) => (Curry.Module.Prelude.Prim (t235 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t235 -> Curry.RunTimeSystem.State -> t235))) -> (Curry.Module.Prelude.Prim (t234 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t234 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t234 t235) -> (Curry.Module.Prelude.T2 t234 t235) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t234 t235+c_addListToFM_C'39'46add'4630 x1 x2 x3 x4@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.FiniteMap.c_addToFM_C'39(x2)(x1)(x3)(x5)(x6)(st)+c_addListToFM_C'39'46add'4630 x1 x2 x3 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addListToFM_C'39'46add'4630(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_addListToFM_C'39'46add'4630 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.addListToFM_C'.add.30")(x)++++c_addToFM_C :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.FiniteMap.C_FM t1 t0) -> t1 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t1 t0+c_addToFM_C x1 x2@(Curry.Module.FiniteMap.C_FM x5 x6) x3 x4 st = Curry.Module.FiniteMap.C_FM(x5)(Curry.Module.FiniteMap.c_addToFM_C'39(x5)(x1)(x6)(x3)(x4)(st))+c_addToFM_C x1 (Curry.Module.FiniteMap.C_FMOr i xs) x3 x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addToFM_C(x1)(x)(x3)(x4)(st))(i)(xs)(st)+c_addToFM_C x1 x x3 x4 st = Curry.RunTimeSystem.patternFail("FiniteMap.addToFM_C")(x)++++c_addListToFM_C :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.FiniteMap.C_FM t1 t0) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 t0)) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t1 t0+c_addListToFM_C x1 x2@(Curry.Module.FiniteMap.C_FM x4 x5) x3 st = Curry.Module.FiniteMap.C_FM(x4)(Curry.Module.FiniteMap.c_addListToFM_C'39(x4)(x1)(x5)(x3)(st))+c_addListToFM_C x1 (Curry.Module.FiniteMap.C_FMOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addListToFM_C(x1)(x)(x3)(st))(i)(xs)(st)+c_addListToFM_C x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.addListToFM_C")(x)++++c_delFromFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_delFromFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_delFromFM'39(x3)(x4)(x2)(st))+c_delFromFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_delFromFM(x)(x2)(st))(i)(xs)(st)+c_delFromFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.delFromFM")(x)++++c_delFromFM'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_delFromFM'39 x1 x2@Curry.Module.FiniteMap.C_EmptyFM x3 st = Curry.Module.FiniteMap.C_EmptyFM+c_delFromFM'39 x1 x2@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) x3 st = Curry.Module.FiniteMap.c_delFromFM'39_case_55(x1)(x3)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)(st))(st)+c_delFromFM'39 x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_delFromFM'39(x1)(x)(x3)(st))(i)(xs)(st)+c_delFromFM'39 x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.delFromFM'")(x)++++c_delListFromFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_delListFromFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.Prelude.c_foldl(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_delFromFM'39(x3)))(x4)(x2)(st))+c_delListFromFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_delListFromFM(x)(x2)(st))(i)(xs)(st)+c_delListFromFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.delListFromFM")(x)++++c_updFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> t0 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1)) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_updFM x1@(Curry.Module.FiniteMap.C_FM x4 x5) x2 x3 st = Curry.Module.FiniteMap.C_FM(x4)(Curry.Module.FiniteMap.c_updFM'46upd'4649(x3)(x2)(x4)(x5)(st))+c_updFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_updFM(x)(x2)(x3)(st))(i)(xs)(st)+c_updFM x x2 x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.updFM")(x)++++c_updFM'46upd'4649 :: (Curry t523,Curry t535) => (Curry.Module.Prelude.Prim (t523 -> Curry.RunTimeSystem.State -> t523)) -> t535 -> (Curry.Module.Prelude.Prim (t535 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t535 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t535 t523) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t535 t523+c_updFM'46upd'4649 x1 x2 x3 x4@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_EmptyFM+c_updFM'46upd'4649 x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) st = Curry.Module.FiniteMap.c_updFM'46upd'4649_case_53(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x9)(Curry.Module.Prelude.op_61_61(x2)(x5)(st))(st)+c_updFM'46upd'4649 x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_updFM'46upd'4649(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_updFM'46upd'4649 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.updFM.upd.49")(x)++++c_splitFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 (Curry.Module.FiniteMap.C_FM t0 t1) (Curry.Module.Prelude.T2 t0 t1))+c_splitFM x1 x2 st = Curry.Module.Prelude.c_maybe(Curry.Module.Prelude.C_Nothing)(Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_splitFM'46_'35lambda4(x1)(x2)))(Curry.Module.FiniteMap.c_lookupFM(x1)(x2)(st))(st)++++c_splitFM'46_'35lambda4 :: (Curry t593,Curry t600) => (Curry.Module.FiniteMap.C_FM t593 t600) -> t593 -> t600 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 (Curry.Module.FiniteMap.C_FM t593 t600) (Curry.Module.Prelude.T2 t593 t600))+c_splitFM'46_'35lambda4 x1 x2 x3 st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(Curry.Module.FiniteMap.c_delFromFM(x1)(x2)(st))(Curry.Module.Prelude.T2(x2)(x3)))++++c_plusFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_plusFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.c_plusFM_case_50(x3)(x4)(x2)(st)+c_plusFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM(x)(x2)(st))(i)(xs)(st)+c_plusFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM")(x)++++c_plusFM'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_plusFM'39 x1 x2@Curry.Module.FiniteMap.C_EmptyFM x3 st = x3+c_plusFM'39 x1 x2@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) x3 st = Curry.Module.FiniteMap.c_plusFM'39_case_49(x1)(x4)(x5)(x6)(x7)(x8)(x3)(st)+c_plusFM'39 x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM'39(x1)(x)(x3)(st))(i)(xs)(st)+c_plusFM'39 x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM'")(x)++++c_plusFM_C :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.FiniteMap.C_FM t1 t0) -> (Curry.Module.FiniteMap.C_FM t1 t0) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t1 t0+c_plusFM_C x1 x2@(Curry.Module.FiniteMap.C_FM x4 x5) x3 st = Curry.Module.FiniteMap.c_plusFM_C_case_48(x1)(x4)(x5)(x3)(st)+c_plusFM_C x1 (Curry.Module.FiniteMap.C_FMOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM_C(x1)(x)(x3)(st))(i)(xs)(st)+c_plusFM_C x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM_C")(x)++++c_plusFM_C'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_plusFM_C'39 x1 x2 x3@Curry.Module.FiniteMap.C_EmptyFM x4 st = x4+c_plusFM_C'39 x1 x2 x3@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) x4 st = Curry.Module.FiniteMap.c_plusFM_C'39_case_47(x1)(x2)(x5)(x6)(x7)(x8)(x9)(x4)(st)+c_plusFM_C'39 x1 x2 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM_C'39(x1)(x2)(x)(x4)(st))(i)(xs)(st)+c_plusFM_C'39 x1 x2 x x4 st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM_C'")(x)++++c_minusFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_minusFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.c_minusFM_case_45(x3)(x4)(x2)(st)+c_minusFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minusFM(x)(x2)(st))(i)(xs)(st)+c_minusFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.minusFM")(x)++++c_minusFM'39 :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t2) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_minusFM'39 x1 x2@Curry.Module.FiniteMap.C_EmptyFM x3 st = Curry.Module.FiniteMap.C_EmptyFM+c_minusFM'39 x1 x2@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) x3 st = Curry.Module.FiniteMap.c_minusFM'39_case_44(x1)(x4)(x5)(x6)(x7)(x8)(x3)(st)+c_minusFM'39 x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minusFM'39(x1)(x)(x3)(st))(i)(xs)(st)+c_minusFM'39 x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.minusFM'")(x)++++c_intersectFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_intersectFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.c_intersectFM_case_43(x3)(x4)(x2)(st)+c_intersectFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM(x)(x2)(st))(i)(xs)(st)+c_intersectFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM")(x)++++c_intersectFM'39 :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t2) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t2+c_intersectFM'39 x1 x2 x3 st = Curry.Module.FiniteMap.c_intersectFM_C'39(x1)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_intersectFM'39'46_'35lambda6))(x2)(x3)(st)++++c_intersectFM'39'46_'35lambda6 :: (Curry t1051,Curry t1052) => t1051 -> t1052 -> Curry.RunTimeSystem.State -> t1052+c_intersectFM'39'46_'35lambda6 x1 x2 st = x2++++c_intersectFM_C :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1))) -> (Curry.Module.FiniteMap.C_FM t2 t0) -> (Curry.Module.FiniteMap.C_FM t2 t0) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t2 t1+c_intersectFM_C x1 x2@(Curry.Module.FiniteMap.C_FM x4 x5) x3 st = Curry.Module.FiniteMap.c_intersectFM_C_case_42(x1)(x4)(x5)(x3)(st)+c_intersectFM_C x1 (Curry.Module.FiniteMap.C_FMOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C(x1)(x)(x3)(st))(i)(xs)(st)+c_intersectFM_C x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C")(x)++++c_intersectFM_C'39 :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t3))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t2) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t3+c_intersectFM_C'39 x1 x2 x3 x4@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_EmptyFM+c_intersectFM_C'39 x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) st = Curry.Module.FiniteMap.c_intersectFM_C'39_case_41(x1)(x2)(x5)(x6)(x8)(x9)(x3)(st)+c_intersectFM_C'39 x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C'39(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_intersectFM_C'39 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C'")(x)++++c_intersectFM_C'39'46_'35selFP3'35elt1'39 :: (Curry t1000) => (Curry.Module.Prelude.C_Maybe t1000) -> Curry.RunTimeSystem.State -> t1000+c_intersectFM_C'39'46_'35selFP3'35elt1'39 x1@(Curry.Module.Prelude.C_Just x2) st = x2+c_intersectFM_C'39'46_'35selFP3'35elt1'39 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C'39'46_'35selFP3'35elt1'39(x)(st))(i)(xs)(st)+c_intersectFM_C'39'46_'35selFP3'35elt1'39 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C'._#selFP3#elt1'")(x)++++c_foldFM :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t2)))) -> t2 -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> t2+c_foldFM x1 x2 x3@(Curry.Module.FiniteMap.C_FM x4 x5) st = Curry.Module.FiniteMap.c_foldFM'39(x4)(x1)(x2)(x5)(st)+c_foldFM x1 x2 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_foldFM(x1)(x2)(x)(st))(i)(xs)(st)+c_foldFM x1 x2 x st = Curry.RunTimeSystem.patternFail("FiniteMap.foldFM")(x)++++c_foldFM'39 :: (Curry t0,Curry t1,Curry t2,Curry t3) => t0 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> t3)))) -> t3 -> (Curry.Module.FiniteMap.C_FiniteMap t1 t2) -> Curry.RunTimeSystem.State -> t3+c_foldFM'39 x1 x2 x3 x4@Curry.Module.FiniteMap.C_EmptyFM st = x3+c_foldFM'39 x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) st = Curry.Module.FiniteMap.c_foldFM'39(x1)(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x5)(st))(x6)(st))(Curry.Module.FiniteMap.c_foldFM'39(x1)(x2)(x3)(x9)(st))(st))(x8)(st)+c_foldFM'39 x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_foldFM'39(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_foldFM'39 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.foldFM'")(x)++++c_mapFM :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t2))) -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t2+c_mapFM x1 x2@(Curry.Module.FiniteMap.C_FM x3 x4) st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_mapFM'39(x3)(x1)(x4)(st))+c_mapFM x1 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mapFM(x1)(x)(st))(i)(xs)(st)+c_mapFM x1 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mapFM")(x)++++c_mapFM'39 :: (Curry t0,Curry t1,Curry t2,Curry t3) => t0 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t3))) -> (Curry.Module.FiniteMap.C_FiniteMap t1 t2) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t1 t3+c_mapFM'39 x1 x2 x3@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_EmptyFM+c_mapFM'39 x1 x2 x3@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) st = Curry.Module.FiniteMap.C_Branch(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(x5)(st))(x6)(Curry.Module.FiniteMap.c_mapFM'39(x1)(x2)(x7)(st))(Curry.Module.FiniteMap.c_mapFM'39(x1)(x2)(x8)(st))+c_mapFM'39 x1 x2 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mapFM'39(x1)(x2)(x)(st))(i)(xs)(st)+c_mapFM'39 x1 x2 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mapFM'")(x)++++c_filterFM :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 t1+c_filterFM x1 x2@(Curry.Module.FiniteMap.C_FM x3 x4) st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_filterFM'39(x3)(x1)(x4)(st))+c_filterFM x1 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_filterFM(x1)(x)(st))(i)(xs)(st)+c_filterFM x1 x st = Curry.RunTimeSystem.patternFail("FiniteMap.filterFM")(x)++++c_filterFM'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_filterFM'39 x1 x2 x3@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_EmptyFM+c_filterFM'39 x1 x2 x3@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) st = Curry.Module.FiniteMap.c_filterFM'39_case_38(x1)(x2)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(x5)(st))(st)+c_filterFM'39 x1 x2 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_filterFM'39(x1)(x2)(x)(st))(i)(xs)(st)+c_filterFM'39 x1 x2 x st = Curry.RunTimeSystem.patternFail("FiniteMap.filterFM'")(x)++++c_sizeFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_sizeFM x1@(Curry.Module.FiniteMap.C_FM x2 x3) st = Curry.Module.FiniteMap.c_sizeFM_case_36(x3)(st)+c_sizeFM (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_sizeFM(x)(st))(i)(xs)(st)+c_sizeFM x st = Curry.RunTimeSystem.patternFail("FiniteMap.sizeFM")(x)++++c_sizeFM'39 :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_sizeFM'39 x1@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.C_Zero+c_sizeFM'39 x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x4+c_sizeFM'39 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_sizeFM'39(x)(st))(i)(xs)(st)+c_sizeFM'39 x st = Curry.RunTimeSystem.patternFail("FiniteMap.sizeFM'")(x)++++c_eqFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_eqFM x1 x2 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(Curry.Module.FiniteMap.c_sizeFM(x1)(st))(Curry.Module.FiniteMap.c_sizeFM(x2)(st))(st))(Curry.Module.Prelude.op_61_61(Curry.Module.FiniteMap.c_fmToList(x1)(st))(Curry.Module.FiniteMap.c_fmToList(x2)(st))(st))(st)++++c_isEmptyFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isEmptyFM x1 st = Curry.Module.Prelude.op_61_61(Curry.Module.FiniteMap.c_sizeFM(x1)(st))(Curry.Module.Prelude.C_Zero)(st)++++c_elemFM :: (Curry t0,Curry t1) => t0 -> (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_elemFM x1 x2 st = Curry.Module.Maybe.c_isJust(Curry.Module.FiniteMap.c_lookupFM(x2)(x1)(st))(st)++++c_lookupFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1+c_lookupFM x1@(Curry.Module.FiniteMap.C_FM x3 x4) x2 st = Curry.Module.FiniteMap.c_lookupFM'39(x3)(x4)(x2)(st)+c_lookupFM (Curry.Module.FiniteMap.C_FMOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_lookupFM(x)(x2)(st))(i)(xs)(st)+c_lookupFM x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.lookupFM")(x)++++c_lookupFM'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1+c_lookupFM'39 x1 x2@Curry.Module.FiniteMap.C_EmptyFM x3 st = Curry.Module.Prelude.C_Nothing+c_lookupFM'39 x1 x2@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) x3 st = Curry.Module.FiniteMap.c_lookupFM'39_case_35(x1)(x3)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)(st))(st)+c_lookupFM'39 x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_lookupFM'39(x1)(x)(x3)(st))(i)(xs)(st)+c_lookupFM'39 x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.lookupFM'")(x)++++c_lookupWithDefaultFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> t1 -> t0 -> Curry.RunTimeSystem.State -> t1+c_lookupWithDefaultFM x1 x2 x3 st = Curry.Module.FiniteMap.c_lookupWithDefaultFM_case_33(x1)(x2)(x3)(Curry.Module.FiniteMap.c_lookupFM(x1)(x3)(st))(st)++++c_keyOrder :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))+c_keyOrder x1@(Curry.Module.FiniteMap.C_FM x2 x3) st = x2+c_keyOrder (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_keyOrder(x)(st))(i)(xs)(st)+c_keyOrder x st = Curry.RunTimeSystem.patternFail("FiniteMap.keyOrder")(x)++++c_minFM :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 t0 t1))+c_minFM st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_minFM'46min'46215))(Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_tree))(st)++++c_minFM'46min'46215 :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 t0 t1)+c_minFM'46min'46215 x1@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.C_Nothing+c_minFM'46min'46215 x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = Curry.Module.FiniteMap.c_minFM'46min'46215_case_32(x2)(x3)(x5)(Curry.Module.Prelude.op_61_61(x5)(Curry.Module.FiniteMap.C_EmptyFM)(st))(st)+c_minFM'46min'46215 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minFM'46min'46215(x)(st))(i)(xs)(st)+c_minFM'46min'46215 x st = Curry.RunTimeSystem.patternFail("FiniteMap.minFM.min.215")(x)++++c_maxFM :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 t0 t1))+c_maxFM st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_maxFM'46max'46223))(Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_tree))(st)++++c_maxFM'46max'46223 :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 t0 t1)+c_maxFM'46max'46223 x1@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.C_Nothing+c_maxFM'46max'46223 x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = Curry.Module.FiniteMap.c_maxFM'46max'46223_case_30(x2)(x3)(x6)(Curry.Module.Prelude.op_61_61(x6)(Curry.Module.FiniteMap.C_EmptyFM)(st))(st)+c_maxFM'46max'46223 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_maxFM'46max'46223(x)(st))(i)(xs)(st)+c_maxFM'46max'46223 x st = Curry.RunTimeSystem.patternFail("FiniteMap.maxFM.max.223")(x)++++c_fmToList :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)+c_fmToList x1 st = Curry.Module.FiniteMap.c_foldFM(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.FiniteMap.c_fmToList'46_'35lambda8))(Curry.Module.Prelude.List)(x1)(st)++++c_fmToList'46_'35lambda8 :: (Curry t1237,Curry t1238) => t1237 -> t1238 -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1237 t1238)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1237 t1238)+c_fmToList'46_'35lambda8 x1 x2 x3 st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x1)(x2))(x3)++++c_keysFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_keysFM x1 st = Curry.Module.FiniteMap.c_foldFM(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.FiniteMap.c_keysFM'46_'35lambda9))(Curry.Module.Prelude.List)(x1)(st)++++c_keysFM'46_'35lambda9 :: (Curry t1356,Curry t1353) => t1356 -> t1353 -> (Curry.Module.Prelude.List t1356) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1356+c_keysFM'46_'35lambda9 x1 x2 x3 st = (Curry.Module.Prelude.:<)(x1)(x3)++++c_eltsFM :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1+c_eltsFM x1 st = Curry.Module.FiniteMap.c_foldFM(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.FiniteMap.c_eltsFM'46_'35lambda10))(Curry.Module.Prelude.List)(x1)(st)++++c_eltsFM'46_'35lambda10 :: (Curry t1363,Curry t1367) => t1363 -> t1367 -> (Curry.Module.Prelude.List t1367) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1367+c_eltsFM'46_'35lambda10 x1 x2 x3 st = (Curry.Module.Prelude.:<)(x2)(x3)++++c_fmToListPreOrder :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)+c_fmToListPreOrder x1@(Curry.Module.FiniteMap.C_FM x2 x3) st = Curry.Module.FiniteMap.c_fmToListPreOrder'46pre'46243(x3)(Curry.Module.Prelude.List)(st)+c_fmToListPreOrder (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_fmToListPreOrder(x)(st))(i)(xs)(st)+c_fmToListPreOrder x st = Curry.RunTimeSystem.patternFail("FiniteMap.fmToListPreOrder")(x)++++c_fmToListPreOrder'46pre'46243 :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)+c_fmToListPreOrder'46pre'46243 x1@Curry.Module.FiniteMap.C_EmptyFM x2 st = x2+c_fmToListPreOrder'46pre'46243 x1@(Curry.Module.FiniteMap.C_Branch x3 x4 x5 x6 x7) x2 st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x3)(x4))(Curry.Module.FiniteMap.c_fmToListPreOrder'46pre'46243(x6)(Curry.Module.FiniteMap.c_fmToListPreOrder'46pre'46243(x7)(x2)(st))(st))+c_fmToListPreOrder'46pre'46243 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_fmToListPreOrder'46pre'46243(x)(x2)(st))(i)(xs)(st)+c_fmToListPreOrder'46pre'46243 x x2 st = Curry.RunTimeSystem.patternFail("FiniteMap.fmToListPreOrder.pre.243")(x)++++c_fmSortBy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_fmSortBy x1 x2 st = Curry.Module.FiniteMap.c_keysFM(Curry.Module.Prelude.c_apply(Curry.Module.FiniteMap.c_listToFM(x1)(st))(Curry.Module.Prelude.c_zip(x2)(Curry.Module.Prelude.c_repeat(Curry.Module.Prelude.T0)(st))(st))(st))(st)++++c_tree :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_tree x1@(Curry.Module.FiniteMap.C_FM x2 x3) st = x3+c_tree (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_tree(x)(st))(i)(xs)(st)+c_tree x st = Curry.RunTimeSystem.patternFail("FiniteMap.tree")(x)++++c_toGT :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_toGT x1 x2 x3 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.c_not(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(x3)(st))(st))(Curry.Module.Prelude.op_47_61(x2)(x3)(st))(st)++++c_isEmptyFM'39 :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isEmptyFM'39 x1 st = Curry.Module.Prelude.op_61_61(Curry.Module.FiniteMap.c_sizeFM'39(x1)(st))(Curry.Module.Prelude.C_Zero)(st)++++c_sIZE_RATIO :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_sIZE_RATIO st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))++++c_mkBranch :: (Curry t0,Curry t1) => Curry.Module.Prelude.C_Int -> t0 -> t1 -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_mkBranch x1 x2 x3 x4 x5 st = Curry.Module.FiniteMap.C_Branch(x2)(x3)(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_43(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.FiniteMap.c_sizeFM'39(x4)(st))(st))(Curry.Module.FiniteMap.c_sizeFM'39(x5)(st))(st))(x4)(x5)++++c_mkBranch'46unbox'46264 :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_mkBranch'46unbox'46264 x1 st = x1++++c_mkBalBranch :: (Curry t0,Curry t1) => t0 -> t1 -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_mkBalBranch x1 x2 x3 x4 st = let {x5 = Curry.Module.FiniteMap.c_sizeFM'39(x3)(st)} in let {x6 = Curry.Module.FiniteMap.c_sizeFM'39(x4)(st)} in Curry.Module.FiniteMap.c_mkBalBranch_case_28(x1)(x2)(x3)(x4)(x5)(x6)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.op_43(x5)(x6)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st)++++c_mkBalBranch'46single_L'46273 :: (Curry t170,Curry t169) => t170 -> t169 -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t169 t170+c_mkBalBranch'46single_L'46273 x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))(x5)(x6)(Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x2)(x1)(x3)(x8)(st))(x9)(st)+c_mkBalBranch'46single_L'46273 x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch'46single_L'46273(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_mkBalBranch'46single_L'46273 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch.single_L.273")(x)++++c_mkBalBranch'46double_L'46273 :: (Curry t170,Curry t169) => t170 -> t169 -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t169 t170+c_mkBalBranch'46double_L'46273 x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) st = Curry.Module.FiniteMap.c_mkBalBranch'46double_L'46273_case_20(x1)(x2)(x3)(x5)(x6)(x9)(x8)(st)+c_mkBalBranch'46double_L'46273 x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch'46double_L'46273(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_mkBalBranch'46double_L'46273 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch.double_L.273")(x)++++c_mkBalBranch'46single_R'46273 :: (Curry t170,Curry t169) => t170 -> t169 -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t169 t170+c_mkBalBranch'46single_R'46273 x1 x2 x3@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) x4 st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(x5)(x6)(x8)(Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(x2)(x1)(x9)(x4)(st))(st)+c_mkBalBranch'46single_R'46273 x1 x2 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch'46single_R'46273(x1)(x2)(x)(x4)(st))(i)(xs)(st)+c_mkBalBranch'46single_R'46273 x1 x2 x x4 st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch.single_R.273")(x)++++c_mkBalBranch'46double_R'46273 :: (Curry t170,Curry t169) => t170 -> t169 -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> (Curry.Module.FiniteMap.C_FiniteMap t169 t170) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t169 t170+c_mkBalBranch'46double_R'46273 x1 x2 x3@(Curry.Module.FiniteMap.C_Branch x5 x6 x7 x8 x9) x4 st = Curry.Module.FiniteMap.c_mkBalBranch'46double_R'46273_case_19(x1)(x2)(x4)(x5)(x6)(x8)(x9)(st)+c_mkBalBranch'46double_R'46273 x1 x2 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch'46double_R'46273(x1)(x2)(x)(x4)(st))(i)(xs)(st)+c_mkBalBranch'46double_R'46273 x1 x2 x x4 st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch.double_R.273")(x)++++c_mkVBalBranch :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> t1 -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_mkVBalBranch x1 x2 x3 x4@Curry.Module.FiniteMap.C_EmptyFM x5 st = Curry.Module.FiniteMap.c_addToFM'39(x1)(x5)(x2)(x3)(st)+c_mkVBalBranch x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x6 x7 x8 x9 x10) x5 st = Curry.Module.FiniteMap.c_mkVBalBranch_case_18(x1)(x2)(x3)(x6)(x7)(x8)(x9)(x10)(x5)(st)+c_mkVBalBranch x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x5 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x2)(x3)(x)(x5)(st))(i)(xs)(st)+c_mkVBalBranch x1 x2 x3 x x5 st = Curry.RunTimeSystem.patternFail("FiniteMap.mkVBalBranch")(x)++++c_glueBal :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_glueBal x1 x2 x3 st = Curry.Module.FiniteMap.c_glueBal_case_14(x1)(x2)(x3)(Curry.Module.FiniteMap.c_isEmptyFM'39(x2)(st))(st)++++c_glueBal'46_'35selFP8'35mid_key1 :: (Curry t439,Curry t440) => (Curry.Module.Prelude.T2 t439 t440) -> Curry.RunTimeSystem.State -> t439+c_glueBal'46_'35selFP8'35mid_key1 x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_glueBal'46_'35selFP8'35mid_key1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal'46_'35selFP8'35mid_key1(x)(st))(i)(xs)(st)+c_glueBal'46_'35selFP8'35mid_key1 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal._#selFP8#mid_key1")(x)++++c_glueBal'46_'35selFP9'35mid_elt1 :: (Curry t439,Curry t440) => (Curry.Module.Prelude.T2 t439 t440) -> Curry.RunTimeSystem.State -> t440+c_glueBal'46_'35selFP9'35mid_elt1 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_glueBal'46_'35selFP9'35mid_elt1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal'46_'35selFP9'35mid_elt1(x)(st))(i)(xs)(st)+c_glueBal'46_'35selFP9'35mid_elt1 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal._#selFP9#mid_elt1")(x)++++c_glueBal'46_'35selFP6'35mid_key2 :: (Curry t439,Curry t440) => (Curry.Module.Prelude.T2 t439 t440) -> Curry.RunTimeSystem.State -> t439+c_glueBal'46_'35selFP6'35mid_key2 x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_glueBal'46_'35selFP6'35mid_key2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal'46_'35selFP6'35mid_key2(x)(st))(i)(xs)(st)+c_glueBal'46_'35selFP6'35mid_key2 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal._#selFP6#mid_key2")(x)++++c_glueBal'46_'35selFP7'35mid_elt2 :: (Curry t439,Curry t440) => (Curry.Module.Prelude.T2 t439 t440) -> Curry.RunTimeSystem.State -> t440+c_glueBal'46_'35selFP7'35mid_elt2 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_glueBal'46_'35selFP7'35mid_elt2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal'46_'35selFP7'35mid_elt2(x)(st))(i)(xs)(st)+c_glueBal'46_'35selFP7'35mid_elt2 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal._#selFP7#mid_elt2")(x)++++c_glueVBal :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_glueVBal x1 x2 x3 st = Curry.Module.FiniteMap.c_glueVBal_case_11(x1)(x2)(x3)(Curry.Module.FiniteMap.c_isEmptyFM'39(x2)(st))(st)++++c_glueVBal'46_'35selFP16'35key_l :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> t876+c_glueVBal'46_'35selFP16'35key_l x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x2+c_glueVBal'46_'35selFP16'35key_l (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP16'35key_l(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP16'35key_l x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP16#key_l")(x)++++c_glueVBal'46_'35selFP17'35elt_l :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> t877+c_glueVBal'46_'35selFP17'35elt_l x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x3+c_glueVBal'46_'35selFP17'35elt_l (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP17'35elt_l(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP17'35elt_l x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP17#elt_l")(x)++++c_glueVBal'46_'35selFP18'35fm_ll :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t876 t877+c_glueVBal'46_'35selFP18'35fm_ll x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x5+c_glueVBal'46_'35selFP18'35fm_ll (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP18'35fm_ll(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP18'35fm_ll x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP18#fm_ll")(x)++++c_glueVBal'46_'35selFP19'35fm_lr :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t876 t877+c_glueVBal'46_'35selFP19'35fm_lr x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x6+c_glueVBal'46_'35selFP19'35fm_lr (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP19'35fm_lr(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP19'35fm_lr x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP19#fm_lr")(x)++++c_glueVBal'46_'35selFP12'35key_r :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> t876+c_glueVBal'46_'35selFP12'35key_r x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x2+c_glueVBal'46_'35selFP12'35key_r (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP12'35key_r(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP12'35key_r x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP12#key_r")(x)++++c_glueVBal'46_'35selFP13'35elt_r :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> t877+c_glueVBal'46_'35selFP13'35elt_r x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x3+c_glueVBal'46_'35selFP13'35elt_r (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP13'35elt_r(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP13'35elt_r x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP13#elt_r")(x)++++c_glueVBal'46_'35selFP14'35fm_rl :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t876 t877+c_glueVBal'46_'35selFP14'35fm_rl x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x5+c_glueVBal'46_'35selFP14'35fm_rl (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP14'35fm_rl(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP14'35fm_rl x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP14#fm_rl")(x)++++c_glueVBal'46_'35selFP15'35fm_rr :: (Curry t876,Curry t877) => (Curry.Module.FiniteMap.C_FiniteMap t876 t877) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t876 t877+c_glueVBal'46_'35selFP15'35fm_rr x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = x6+c_glueVBal'46_'35selFP15'35fm_rr (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal'46_'35selFP15'35fm_rr(x)(st))(i)(xs)(st)+c_glueVBal'46_'35selFP15'35fm_rr x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal._#selFP15#fm_rr")(x)++++c_splitLT :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_splitLT x1 x2@Curry.Module.FiniteMap.C_EmptyFM x3 st = Curry.Module.FiniteMap.C_EmptyFM+c_splitLT x1 x2@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) x3 st = Curry.Module.FiniteMap.c_splitLT_case_7(x1)(x3)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)(st))(st)+c_splitLT x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_splitLT(x1)(x)(x3)(st))(i)(xs)(st)+c_splitLT x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.splitLT")(x)++++c_splitGT :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_splitGT x1 x2@Curry.Module.FiniteMap.C_EmptyFM x3 st = Curry.Module.FiniteMap.C_EmptyFM+c_splitGT x1 x2@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) x3 st = Curry.Module.FiniteMap.c_splitGT_case_5(x1)(x3)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)(st))(st)+c_splitGT x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_splitGT(x1)(x)(x3)(st))(i)(xs)(st)+c_splitGT x1 x x3 st = Curry.RunTimeSystem.patternFail("FiniteMap.splitGT")(x)++++c_findMin :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 t0 t1+c_findMin x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = Curry.Module.FiniteMap.c_findMin_case_3(x2)(x3)(x5)(st)+c_findMin (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_findMin(x)(st))(i)(xs)(st)+c_findMin x st = Curry.RunTimeSystem.patternFail("FiniteMap.findMin")(x)++++c_deleteMin :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_deleteMin x1 x2@(Curry.Module.FiniteMap.C_Branch x3 x4 x5 x6 x7) st = Curry.Module.FiniteMap.c_deleteMin_case_2(x1)(x3)(x4)(x7)(x6)(st)+c_deleteMin x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_deleteMin(x1)(x)(st))(i)(xs)(st)+c_deleteMin x1 x st = Curry.RunTimeSystem.patternFail("FiniteMap.deleteMin")(x)++++c_findMax :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 t0 t1+c_findMax x1@(Curry.Module.FiniteMap.C_Branch x2 x3 x4 x5 x6) st = Curry.Module.FiniteMap.c_findMax_case_1(x2)(x3)(x6)(st)+c_findMax (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_findMax(x)(st))(i)(xs)(st)+c_findMax x st = Curry.RunTimeSystem.patternFail("FiniteMap.findMax")(x)++++c_deleteMax :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.FiniteMap.C_FiniteMap t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FiniteMap t0 t1+c_deleteMax x1 x2@(Curry.Module.FiniteMap.C_Branch x3 x4 x5 x6 x7) st = Curry.Module.FiniteMap.c_deleteMax_case_0(x1)(x3)(x4)(x6)(x7)(st)+c_deleteMax x1 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_deleteMax(x1)(x)(st))(i)(xs)(st)+c_deleteMax x1 x st = Curry.RunTimeSystem.patternFail("FiniteMap.deleteMax")(x)++++c_emptySet :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0)+c_emptySet st = Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_emptyFM)++++c_mkSet :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0+c_mkSet x1 x2 st = Curry.Module.Prelude.c_apply(Curry.Module.FiniteMap.c_listToFM(x1)(st))(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_mkSet'46_'35lambda13))(x2)(st))(st)++++c_mkSet'46_'35lambda13 :: (Curry t1421) => t1421 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 t1421 Curry.Module.Prelude.T0+c_mkSet'46_'35lambda13 x1 st = Curry.Module.Prelude.T2(x1)(Curry.Module.Prelude.T0)++++c_isEmptySet :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_isEmptySet st = Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_isEmptyFM)++++c_elementOf :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))+c_elementOf st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_elemFM)++++c_minusSet :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0))+c_minusSet st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_minusFM)++++c_setToList :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_setToList st = Curry.Module.Prelude.pf(Curry.Module.FiniteMap.c_keysFM)++++c_union :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM t0 Curry.Module.Prelude.T0))+c_union st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.FiniteMap.c_plusFM)++++c_deleteMax_case_0 x1 x3 x4 x6 x7@Curry.Module.FiniteMap.C_EmptyFM st = x6+c_deleteMax_case_0 x1 x3 x4 x6 x7@(Curry.Module.FiniteMap.C_Branch x8 x9 x10 x11 x12) st = Curry.Module.FiniteMap.c_mkBalBranch(x3)(x4)(x6)(Curry.Module.FiniteMap.c_deleteMax(x1)(Curry.Module.FiniteMap.C_Branch(x8)(x9)(x10)(x11)(x12))(st))(st)+c_deleteMax_case_0 x1 x3 x4 x6 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_deleteMax_case_0(x1)(x3)(x4)(x6)(x)(st))(i)(xs)(st)+c_deleteMax_case_0 x1 x3 x4 x6 x st = Curry.RunTimeSystem.patternFail("FiniteMap.deleteMax_case_0")(x)++++c_findMax_case_1 x2 x3 x6@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.T2(x2)(x3)+c_findMax_case_1 x2 x3 x6@(Curry.Module.FiniteMap.C_Branch x7 x8 x9 x10 x11) st = Curry.Module.FiniteMap.c_findMax(Curry.Module.FiniteMap.C_Branch(x7)(x8)(x9)(x10)(x11))(st)+c_findMax_case_1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_findMax_case_1(x2)(x3)(x)(st))(i)(xs)(st)+c_findMax_case_1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.findMax_case_1")(x)++++c_deleteMin_case_2 x1 x3 x4 x7 x6@Curry.Module.FiniteMap.C_EmptyFM st = x7+c_deleteMin_case_2 x1 x3 x4 x7 x6@(Curry.Module.FiniteMap.C_Branch x8 x9 x10 x11 x12) st = Curry.Module.FiniteMap.c_mkBalBranch(x3)(x4)(Curry.Module.FiniteMap.c_deleteMin(x1)(Curry.Module.FiniteMap.C_Branch(x8)(x9)(x10)(x11)(x12))(st))(x7)(st)+c_deleteMin_case_2 x1 x3 x4 x7 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_deleteMin_case_2(x1)(x3)(x4)(x7)(x)(st))(i)(xs)(st)+c_deleteMin_case_2 x1 x3 x4 x7 x st = Curry.RunTimeSystem.patternFail("FiniteMap.deleteMin_case_2")(x)++++c_findMin_case_3 x2 x3 x5@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.T2(x2)(x3)+c_findMin_case_3 x2 x3 x5@(Curry.Module.FiniteMap.C_Branch x7 x8 x9 x10 x11) st = Curry.Module.FiniteMap.c_findMin(Curry.Module.FiniteMap.C_Branch(x7)(x8)(x9)(x10)(x11))(st)+c_findMin_case_3 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_findMin_case_3(x2)(x3)(x)(st))(i)(xs)(st)+c_findMin_case_3 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.findMin_case_3")(x)++++c_splitGT_case_5 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x4)(x5)(Curry.Module.FiniteMap.c_splitGT(x1)(x7)(x3)(st))(x8)(st)+c_splitGT_case_5 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_splitGT_case_4(x1)(x3)(x4)(x8)(Curry.Module.Prelude.op_61_61(x3)(x4)(st))(st)+c_splitGT_case_5 x1 x3 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_splitGT_case_5(x1)(x3)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_splitGT_case_5 x1 x3 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.splitGT_case_5")(x)++++c_splitGT_case_4 x1 x3 x4 x8 x9@Curry.Module.Prelude.C_True st = x8+c_splitGT_case_4 x1 x3 x4 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_splitGT(x1)(x8)(x3)(st)+c_splitGT_case_4 x1 x3 x4 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_splitGT_case_4(x1)(x3)(x4)(x8)(x)(st))(i)(xs)(st)+c_splitGT_case_4 x1 x3 x4 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.splitGT_case_4")(x)++++c_splitLT_case_7 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_splitLT(x1)(x7)(x3)(st)+c_splitLT_case_7 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_splitLT_case_6(x1)(x3)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.op_61_61(x3)(x4)(st))(st)+c_splitLT_case_7 x1 x3 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_splitLT_case_7(x1)(x3)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_splitLT_case_7 x1 x3 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.splitLT_case_7")(x)++++c_splitLT_case_6 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = x7+c_splitLT_case_6 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x4)(x5)(x7)(Curry.Module.FiniteMap.c_splitLT(x1)(x8)(x3)(st))(st)+c_splitLT_case_6 x1 x3 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_splitLT_case_6(x1)(x3)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_splitLT_case_6 x1 x3 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.splitLT_case_6")(x)++++c_glueVBal_case_11 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x3+c_glueVBal_case_11 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_glueVBal_case_10(x1)(x2)(x3)(Curry.Module.FiniteMap.c_isEmptyFM'39(x3)(st))(st)+c_glueVBal_case_11 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal_case_11(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_glueVBal_case_11 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal_case_11")(x)++++c_glueVBal_case_10 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x2+c_glueVBal_case_10 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = let {x14 = Curry.Module.FiniteMap.c_sizeFM'39(x2)(st)} in let {x15 = Curry.Module.FiniteMap.c_sizeFM'39(x3)(st)} in Curry.Module.FiniteMap.c_glueVBal_case_9(x1)(x2)(x3)(x14)(x15)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x14)(st))(x15)(st))(st)+c_glueVBal_case_10 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal_case_10(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_glueVBal_case_10 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal_case_10")(x)++++c_glueVBal_case_9 x1 x2 x3 x14 x15 x16@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP12'35key_r(x3)(st))(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP13'35elt_r(x3)(st))(Curry.Module.FiniteMap.c_glueVBal(x1)(x2)(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP14'35fm_rl(x3)(st))(st))(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP15'35fm_rr(x3)(st))(st)+c_glueVBal_case_9 x1 x2 x3 x14 x15 x16@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_glueVBal_case_8(x1)(x2)(x3)(x14)(x15)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x15)(st))(x14)(st))(st)+c_glueVBal_case_9 x1 x2 x3 x14 x15 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal_case_9(x1)(x2)(x3)(x14)(x15)(x)(st))(i)(xs)(st)+c_glueVBal_case_9 x1 x2 x3 x14 x15 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal_case_9")(x)++++c_glueVBal_case_8 x1 x2 x3 x14 x15 x16@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP16'35key_l(x2)(st))(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP17'35elt_l(x2)(st))(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP18'35fm_ll(x2)(st))(Curry.Module.FiniteMap.c_glueVBal(x1)(Curry.Module.FiniteMap.c_glueVBal'46_'35selFP19'35fm_lr(x2)(st))(x3)(st))(st)+c_glueVBal_case_8 x1 x2 x3 x14 x15 x16@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_glueBal(x1)(x2)(x3)(st)+c_glueVBal_case_8 x1 x2 x3 x14 x15 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueVBal_case_8(x1)(x2)(x3)(x14)(x15)(x)(st))(i)(xs)(st)+c_glueVBal_case_8 x1 x2 x3 x14 x15 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueVBal_case_8")(x)++++c_glueBal_case_14 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x3+c_glueBal_case_14 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_glueBal_case_13(x1)(x2)(x3)(Curry.Module.FiniteMap.c_isEmptyFM'39(x3)(st))(st)+c_glueBal_case_14 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal_case_14(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_glueBal_case_14 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal_case_14")(x)++++c_glueBal_case_13 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x2+c_glueBal_case_13 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = let {x4 = Curry.Module.FiniteMap.c_findMax(x2)(st)} in let {x7 = Curry.Module.FiniteMap.c_findMin(x3)(st)} in Curry.Module.FiniteMap.c_glueBal_case_12(x1)(x2)(x3)(x4)(x7)(Curry.Module.Prelude.op_62(Curry.Module.FiniteMap.c_sizeFM'39(x3)(st))(Curry.Module.FiniteMap.c_sizeFM'39(x2)(st))(st))(st)+c_glueBal_case_13 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal_case_13(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_glueBal_case_13 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal_case_13")(x)++++c_glueBal_case_12 x1 x2 x3 x4 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(Curry.Module.FiniteMap.c_glueBal'46_'35selFP6'35mid_key2(x7)(st))(Curry.Module.FiniteMap.c_glueBal'46_'35selFP7'35mid_elt2(x7)(st))(x2)(Curry.Module.FiniteMap.c_deleteMin(x1)(x3)(st))(st)+c_glueBal_case_12 x1 x2 x3 x4 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch(Curry.Module.FiniteMap.c_glueBal'46_'35selFP8'35mid_key1(x4)(st))(Curry.Module.FiniteMap.c_glueBal'46_'35selFP9'35mid_elt1(x4)(st))(Curry.Module.FiniteMap.c_deleteMax(x1)(x2)(st))(x3)(st)+c_glueBal_case_12 x1 x2 x3 x4 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_glueBal_case_12(x1)(x2)(x3)(x4)(x7)(x)(st))(i)(xs)(st)+c_glueBal_case_12 x1 x2 x3 x4 x7 x st = Curry.RunTimeSystem.patternFail("FiniteMap.glueBal_case_12")(x)++++c_mkVBalBranch_case_18 x1 x2 x3 x6 x7 x8 x9 x10 x5@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.c_addToFM'39(x1)(Curry.Module.FiniteMap.C_Branch(x6)(x7)(x8)(x9)(x10))(x2)(x3)(st)+c_mkVBalBranch_case_18 x1 x2 x3 x6 x7 x8 x9 x10 x5@(Curry.Module.FiniteMap.C_Branch x11 x12 x13 x14 x15) st = let {x16 = Curry.Module.FiniteMap.C_Branch(x6)(x7)(x8)(x9)(x10)} in let {x17 = Curry.Module.FiniteMap.C_Branch(x11)(x12)(x13)(x14)(x15)} in let {x18 = Curry.Module.FiniteMap.c_sizeFM'39(x16)(st)} in let {x19 = Curry.Module.FiniteMap.c_sizeFM'39(x17)(st)} in Curry.Module.FiniteMap.c_mkVBalBranch_case_17(x1)(x2)(x3)(x6)(x7)(x9)(x10)(x11)(x12)(x14)(x15)(x16)(x17)(x18)(x19)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x18)(st))(x19)(st))(st)+c_mkVBalBranch_case_18 x1 x2 x3 x6 x7 x8 x9 x10 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkVBalBranch_case_18(x1)(x2)(x3)(x6)(x7)(x8)(x9)(x10)(x)(st))(i)(xs)(st)+c_mkVBalBranch_case_18 x1 x2 x3 x6 x7 x8 x9 x10 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkVBalBranch_case_18")(x)++++c_mkVBalBranch_case_17 x1 x2 x3 x6 x7 x9 x10 x11 x12 x14 x15 x16 x17 x18 x19 x20@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(x11)(x12)(Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x2)(x3)(x16)(x14)(st))(x15)(st)+c_mkVBalBranch_case_17 x1 x2 x3 x6 x7 x9 x10 x11 x12 x14 x15 x16 x17 x18 x19 x20@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkVBalBranch_case_16(x1)(x2)(x3)(x6)(x7)(x9)(x10)(x16)(x17)(x18)(x19)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x19)(st))(x18)(st))(st)+c_mkVBalBranch_case_17 x1 x2 x3 x6 x7 x9 x10 x11 x12 x14 x15 x16 x17 x18 x19 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkVBalBranch_case_17(x1)(x2)(x3)(x6)(x7)(x9)(x10)(x11)(x12)(x14)(x15)(x16)(x17)(x18)(x19)(x)(st))(i)(xs)(st)+c_mkVBalBranch_case_17 x1 x2 x3 x6 x7 x9 x10 x11 x12 x14 x15 x16 x17 x18 x19 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkVBalBranch_case_17")(x)++++c_mkVBalBranch_case_16 x1 x2 x3 x6 x7 x9 x10 x16 x17 x18 x19 x20@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(x6)(x7)(x9)(Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x2)(x3)(x10)(x17)(st))(st)+c_mkVBalBranch_case_16 x1 x2 x3 x6 x7 x9 x10 x16 x17 x18 x19 x20@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkVBalBranch_case_15(x2)(x3)(x16)(x17)(Curry.Module.Prelude.c_otherwise(st))(st)+c_mkVBalBranch_case_16 x1 x2 x3 x6 x7 x9 x10 x16 x17 x18 x19 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkVBalBranch_case_16(x1)(x2)(x3)(x6)(x7)(x9)(x10)(x16)(x17)(x18)(x19)(x)(st))(i)(xs)(st)+c_mkVBalBranch_case_16 x1 x2 x3 x6 x7 x9 x10 x16 x17 x18 x19 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkVBalBranch_case_16")(x)++++c_mkVBalBranch_case_15 x2 x3 x16 x17 x18@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(x2)(x3)(x16)(x17)(st)+c_mkVBalBranch_case_15 x2 x3 x16 x17 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkVBalBranch_case_15(x2)(x3)(x16)(x17)(x)(st))(i)(xs)(st)+c_mkVBalBranch_case_15 x2 x3 x16 x17 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkVBalBranch_case_15")(x)++++c_mkBalBranch'46double_R'46273_case_19 x1 x2 x4 x5 x6 x8 x9@(Curry.Module.FiniteMap.C_Branch x10 x11 x12 x13 x14) st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(x10)(x11)(Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(x5)(x6)(x8)(x13)(st))(Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(x2)(x1)(x14)(x4)(st))(st)+c_mkBalBranch'46double_R'46273_case_19 x1 x2 x4 x5 x6 x8 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch'46double_R'46273_case_19(x1)(x2)(x4)(x5)(x6)(x8)(x)(st))(i)(xs)(st)+c_mkBalBranch'46double_R'46273_case_19 x1 x2 x4 x5 x6 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch.double_R.273_case_19")(x)++++c_mkBalBranch'46double_L'46273_case_20 x1 x2 x3 x5 x6 x9 x8@(Curry.Module.FiniteMap.C_Branch x10 x11 x12 x13 x14) st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x10)(x11)(Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(x2)(x1)(x3)(x13)(st))(Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(x5)(x6)(x14)(x9)(st))(st)+c_mkBalBranch'46double_L'46273_case_20 x1 x2 x3 x5 x6 x9 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch'46double_L'46273_case_20(x1)(x2)(x3)(x5)(x6)(x9)(x)(st))(i)(xs)(st)+c_mkBalBranch'46double_L'46273_case_20 x1 x2 x3 x5 x6 x9 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch.double_L.273_case_20")(x)++++c_mkBalBranch_case_28 x1 x2 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(x1)(x2)(x3)(x4)(st)+c_mkBalBranch_case_28 x1 x2 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch_case_27(x1)(x2)(x3)(x4)(x5)(x6)(Curry.Module.Prelude.op_62(x6)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x5)(st))(st))(st)+c_mkBalBranch_case_28 x1 x2 x3 x4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_28(x1)(x2)(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_28 x1 x2 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_28")(x)++++c_mkBalBranch_case_27 x1 x2 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch_case_26(x1)(x2)(x3)(x4)(st)+c_mkBalBranch_case_27 x1 x2 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch_case_24(x1)(x2)(x3)(x4)(x5)(x6)(Curry.Module.Prelude.op_62(x5)(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(x6)(st))(st))(st)+c_mkBalBranch_case_27 x1 x2 x3 x4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_27(x1)(x2)(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_27 x1 x2 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_27")(x)++++c_mkBalBranch_case_24 x1 x2 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch_case_23(x1)(x2)(x4)(x3)(st)+c_mkBalBranch_case_24 x1 x2 x3 x4 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch_case_21(x1)(x2)(x3)(x4)(Curry.Module.Prelude.c_otherwise(st))(st)+c_mkBalBranch_case_24 x1 x2 x3 x4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_24(x1)(x2)(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_24 x1 x2 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_24")(x)++++c_mkBalBranch_case_21 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBranch(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x1)(x2)(x3)(x4)(st)+c_mkBalBranch_case_21 x1 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_21(x1)(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_21 x1 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_21")(x)++++c_mkBalBranch_case_23 x1 x2 x4 x3@(Curry.Module.FiniteMap.C_Branch x12 x13 x14 x15 x16) st = Curry.Module.FiniteMap.c_mkBalBranch_case_22(x1)(x2)(x3)(x4)(x15)(x16)(Curry.Module.Prelude.op_60(Curry.Module.FiniteMap.c_sizeFM'39(x16)(st))(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.FiniteMap.c_sizeFM'39(x15)(st))(st))(st))(st)+c_mkBalBranch_case_23 x1 x2 x4 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_23(x1)(x2)(x4)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_23 x1 x2 x4 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_23")(x)++++c_mkBalBranch_case_22 x1 x2 x3 x4 x15 x16 x17@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch'46single_R'46273(x2)(x1)(x3)(x4)(st)+c_mkBalBranch_case_22 x1 x2 x3 x4 x15 x16 x17@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch'46double_R'46273(x2)(x1)(x3)(x4)(st)+c_mkBalBranch_case_22 x1 x2 x3 x4 x15 x16 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_22(x1)(x2)(x3)(x4)(x15)(x16)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_22 x1 x2 x3 x4 x15 x16 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_22")(x)++++c_mkBalBranch_case_26 x1 x2 x3 x4@(Curry.Module.FiniteMap.C_Branch x7 x8 x9 x10 x11) st = Curry.Module.FiniteMap.c_mkBalBranch_case_25(x1)(x2)(x3)(x4)(x10)(x11)(Curry.Module.Prelude.op_60(Curry.Module.FiniteMap.c_sizeFM'39(x10)(st))(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.FiniteMap.c_sizeFM'39(x11)(st))(st))(st))(st)+c_mkBalBranch_case_26 x1 x2 x3 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_26(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_26 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_26")(x)++++c_mkBalBranch_case_25 x1 x2 x3 x4 x10 x11 x12@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch'46single_L'46273(x2)(x1)(x3)(x4)(st)+c_mkBalBranch_case_25 x1 x2 x3 x4 x10 x11 x12@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch'46double_L'46273(x2)(x1)(x3)(x4)(st)+c_mkBalBranch_case_25 x1 x2 x3 x4 x10 x11 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_mkBalBranch_case_25(x1)(x2)(x3)(x4)(x10)(x11)(x)(st))(i)(xs)(st)+c_mkBalBranch_case_25 x1 x2 x3 x4 x10 x11 x st = Curry.RunTimeSystem.patternFail("FiniteMap.mkBalBranch_case_25")(x)++++c_maxFM'46max'46223_case_30 x2 x3 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(x2)(x3))+c_maxFM'46max'46223_case_30 x2 x3 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_maxFM'46max'46223_case_29(x6)(Curry.Module.Prelude.c_otherwise(st))(st)+c_maxFM'46max'46223_case_30 x2 x3 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_maxFM'46max'46223_case_30(x2)(x3)(x6)(x)(st))(i)(xs)(st)+c_maxFM'46max'46223_case_30 x2 x3 x6 x st = Curry.RunTimeSystem.patternFail("FiniteMap.maxFM.max.223_case_30")(x)++++c_maxFM'46max'46223_case_29 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_maxFM'46max'46223(x6)(st)+c_maxFM'46max'46223_case_29 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_maxFM'46max'46223_case_29(x6)(x)(st))(i)(xs)(st)+c_maxFM'46max'46223_case_29 x6 x st = Curry.RunTimeSystem.patternFail("FiniteMap.maxFM.max.223_case_29")(x)++++c_minFM'46min'46215_case_32 x2 x3 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T2(x2)(x3))+c_minFM'46min'46215_case_32 x2 x3 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_minFM'46min'46215_case_31(x5)(Curry.Module.Prelude.c_otherwise(st))(st)+c_minFM'46min'46215_case_32 x2 x3 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minFM'46min'46215_case_32(x2)(x3)(x5)(x)(st))(i)(xs)(st)+c_minFM'46min'46215_case_32 x2 x3 x5 x st = Curry.RunTimeSystem.patternFail("FiniteMap.minFM.min.215_case_32")(x)++++c_minFM'46min'46215_case_31 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_minFM'46min'46215(x5)(st)+c_minFM'46min'46215_case_31 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minFM'46min'46215_case_31(x5)(x)(st))(i)(xs)(st)+c_minFM'46min'46215_case_31 x5 x st = Curry.RunTimeSystem.patternFail("FiniteMap.minFM.min.215_case_31")(x)++++c_lookupWithDefaultFM_case_33 x1 x2 x3 x4@Curry.Module.Prelude.C_Nothing st = x2+c_lookupWithDefaultFM_case_33 x1 x2 x3 (Curry.Module.Prelude.C_Just x4) st = x4+c_lookupWithDefaultFM_case_33 x1 x2 x3 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_lookupWithDefaultFM_case_33(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_lookupWithDefaultFM_case_33 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("FiniteMap.lookupWithDefaultFM_case_33")(x)++++c_lookupFM'39_case_35 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_lookupFM'39(x1)(x7)(x3)(st)+c_lookupFM'39_case_35 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_lookupFM'39_case_34(x1)(x3)(x4)(x5)(x8)(Curry.Module.Prelude.op_61_61(x3)(x4)(st))(st)+c_lookupFM'39_case_35 x1 x3 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_lookupFM'39_case_35(x1)(x3)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_lookupFM'39_case_35 x1 x3 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.lookupFM'_case_35")(x)++++c_lookupFM'39_case_34 x1 x3 x4 x5 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Just(x5)+c_lookupFM'39_case_34 x1 x3 x4 x5 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_lookupFM'39(x1)(x8)(x3)(st)+c_lookupFM'39_case_34 x1 x3 x4 x5 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_lookupFM'39_case_34(x1)(x3)(x4)(x5)(x8)(x)(st))(i)(xs)(st)+c_lookupFM'39_case_34 x1 x3 x4 x5 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.lookupFM'_case_34")(x)++++c_sizeFM_case_36 x3@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.Prelude.C_Zero+c_sizeFM_case_36 x3@(Curry.Module.FiniteMap.C_Branch x4 x5 x6 x7 x8) st = x6+c_sizeFM_case_36 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_sizeFM_case_36(x)(st))(i)(xs)(st)+c_sizeFM_case_36 x st = Curry.RunTimeSystem.patternFail("FiniteMap.sizeFM_case_36")(x)++++c_filterFM'39_case_38 x1 x2 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x4)(x5)(Curry.Module.FiniteMap.c_filterFM'39(x1)(x2)(x7)(st))(Curry.Module.FiniteMap.c_filterFM'39(x1)(x2)(x8)(st))(st)+c_filterFM'39_case_38 x1 x2 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_filterFM'39_case_37(x1)(x2)(x7)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_filterFM'39_case_38 x1 x2 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_filterFM'39_case_38(x1)(x2)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_filterFM'39_case_38 x1 x2 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.filterFM'_case_38")(x)++++c_filterFM'39_case_37 x1 x2 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_glueVBal(x1)(Curry.Module.FiniteMap.c_filterFM'39(x1)(x2)(x7)(st))(Curry.Module.FiniteMap.c_filterFM'39(x1)(x2)(x8)(st))(st)+c_filterFM'39_case_37 x1 x2 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_filterFM'39_case_37(x1)(x2)(x7)(x8)(x)(st))(i)(xs)(st)+c_filterFM'39_case_37 x1 x2 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.filterFM'_case_37")(x)++++c_intersectFM_C'39_case_41 x1 x2 x5 x6 x8 x9 x3@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_EmptyFM+c_intersectFM_C'39_case_41 x1 x2 x5 x6 x8 x9 x3@(Curry.Module.FiniteMap.C_Branch x10 x11 x12 x13 x14) st = let {x15 = Curry.Module.FiniteMap.C_Branch(x10)(x11)(x12)(x13)(x14)} in let {x16 = Curry.Module.FiniteMap.c_splitLT(x1)(x15)(x5)(st)} in let {x17 = Curry.Module.FiniteMap.c_splitGT(x1)(x15)(x5)(st)} in let {x18 = Curry.Module.FiniteMap.c_lookupFM'39(x1)(x15)(x5)(st)} in Curry.Module.FiniteMap.c_intersectFM_C'39_case_40(x1)(x2)(x5)(x6)(x8)(x9)(x16)(x17)(x18)(Curry.Module.Maybe.c_isJust(x18)(st))(st)+c_intersectFM_C'39_case_41 x1 x2 x5 x6 x8 x9 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C'39_case_41(x1)(x2)(x5)(x6)(x8)(x9)(x)(st))(i)(xs)(st)+c_intersectFM_C'39_case_41 x1 x2 x5 x6 x8 x9 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C'_case_41")(x)++++c_intersectFM_C'39_case_40 x1 x2 x5 x6 x8 x9 x16 x17 x18 x19@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x5)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(Curry.Module.FiniteMap.c_intersectFM_C'39'46_'35selFP3'35elt1'39(x18)(st))(st))(x6)(st))(Curry.Module.FiniteMap.c_intersectFM_C'39(x1)(x2)(x16)(x8)(st))(Curry.Module.FiniteMap.c_intersectFM_C'39(x1)(x2)(x17)(x9)(st))(st)+c_intersectFM_C'39_case_40 x1 x2 x5 x6 x8 x9 x16 x17 x18 x19@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_intersectFM_C'39_case_39(x1)(x2)(x8)(x9)(x16)(x17)(Curry.Module.Prelude.c_otherwise(st))(st)+c_intersectFM_C'39_case_40 x1 x2 x5 x6 x8 x9 x16 x17 x18 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C'39_case_40(x1)(x2)(x5)(x6)(x8)(x9)(x16)(x17)(x18)(x)(st))(i)(xs)(st)+c_intersectFM_C'39_case_40 x1 x2 x5 x6 x8 x9 x16 x17 x18 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C'_case_40")(x)++++c_intersectFM_C'39_case_39 x1 x2 x8 x9 x16 x17 x18@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_glueVBal(x1)(Curry.Module.FiniteMap.c_intersectFM_C'39(x1)(x2)(x16)(x8)(st))(Curry.Module.FiniteMap.c_intersectFM_C'39(x1)(x2)(x17)(x9)(st))(st)+c_intersectFM_C'39_case_39 x1 x2 x8 x9 x16 x17 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C'39_case_39(x1)(x2)(x8)(x9)(x16)(x17)(x)(st))(i)(xs)(st)+c_intersectFM_C'39_case_39 x1 x2 x8 x9 x16 x17 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C'_case_39")(x)++++c_intersectFM_C_case_42 x1 x4 x5 x3@(Curry.Module.FiniteMap.C_FM x6 x7) st = Curry.Module.FiniteMap.C_FM(x4)(Curry.Module.FiniteMap.c_intersectFM_C'39(x4)(x1)(x5)(x7)(st))+c_intersectFM_C_case_42 x1 x4 x5 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_C_case_42(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_intersectFM_C_case_42 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_C_case_42")(x)++++c_intersectFM_case_43 x3 x4 x2@(Curry.Module.FiniteMap.C_FM x5 x6) st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_intersectFM'39(x3)(x4)(x6)(st))+c_intersectFM_case_43 x3 x4 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_intersectFM_case_43(x3)(x4)(x)(st))(i)(xs)(st)+c_intersectFM_case_43 x3 x4 x st = Curry.RunTimeSystem.patternFail("FiniteMap.intersectFM_case_43")(x)++++c_minusFM'39_case_44 x1 x4 x5 x6 x7 x8 x3@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_Branch(x4)(x5)(x6)(x7)(x8)+c_minusFM'39_case_44 x1 x4 x5 x6 x7 x8 x3@(Curry.Module.FiniteMap.C_Branch x9 x10 x11 x12 x13) st = let {x14 = Curry.Module.FiniteMap.C_Branch(x4)(x5)(x6)(x7)(x8)} in Curry.Module.FiniteMap.c_glueVBal(x1)(Curry.Module.FiniteMap.c_minusFM'39(x1)(Curry.Module.FiniteMap.c_splitLT(x1)(x14)(x9)(st))(x12)(st))(Curry.Module.FiniteMap.c_minusFM'39(x1)(Curry.Module.FiniteMap.c_splitGT(x1)(x14)(x9)(st))(x13)(st))(st)+c_minusFM'39_case_44 x1 x4 x5 x6 x7 x8 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minusFM'39_case_44(x1)(x4)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_minusFM'39_case_44 x1 x4 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.minusFM'_case_44")(x)++++c_minusFM_case_45 x3 x4 x2@(Curry.Module.FiniteMap.C_FM x5 x6) st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_minusFM'39(x3)(x4)(x6)(st))+c_minusFM_case_45 x3 x4 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_minusFM_case_45(x3)(x4)(x)(st))(i)(xs)(st)+c_minusFM_case_45 x3 x4 x st = Curry.RunTimeSystem.patternFail("FiniteMap.minusFM_case_45")(x)++++c_plusFM_C'39_case_47 x1 x2 x5 x6 x7 x8 x9 x4@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_Branch(x5)(x6)(x7)(x8)(x9)+c_plusFM_C'39_case_47 x1 x2 x5 x6 x7 x8 x9 x4@(Curry.Module.FiniteMap.C_Branch x10 x11 x12 x13 x14) st = let {x15 = Curry.Module.FiniteMap.C_Branch(x5)(x6)(x7)(x8)(x9)} in Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x10)(Curry.Module.FiniteMap.c_plusFM_C'39_case_46(x1)(x2)(x10)(x11)(x15)(Curry.Module.FiniteMap.c_lookupFM'39(x1)(x15)(x10)(st))(st))(Curry.Module.FiniteMap.c_plusFM_C'39(x1)(x2)(Curry.Module.FiniteMap.c_splitLT(x1)(x15)(x10)(st))(x13)(st))(Curry.Module.FiniteMap.c_plusFM_C'39(x1)(x2)(Curry.Module.FiniteMap.c_splitGT(x1)(x15)(x10)(st))(x14)(st))(st)+c_plusFM_C'39_case_47 x1 x2 x5 x6 x7 x8 x9 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM_C'39_case_47(x1)(x2)(x5)(x6)(x7)(x8)(x9)(x)(st))(i)(xs)(st)+c_plusFM_C'39_case_47 x1 x2 x5 x6 x7 x8 x9 x st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM_C'_case_47")(x)++++c_plusFM_C'39_case_46 x1 x2 x10 x11 x15 x16@Curry.Module.Prelude.C_Nothing st = x11+c_plusFM_C'39_case_46 x1 x2 x10 x11 x15 x16@(Curry.Module.Prelude.C_Just x19) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x19)(st))(x11)(st)+c_plusFM_C'39_case_46 x1 x2 x10 x11 x15 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM_C'39_case_46(x1)(x2)(x10)(x11)(x15)(x)(st))(i)(xs)(st)+c_plusFM_C'39_case_46 x1 x2 x10 x11 x15 x st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM_C'_case_46")(x)++++c_plusFM_C_case_48 x1 x4 x5 x3@(Curry.Module.FiniteMap.C_FM x6 x7) st = Curry.Module.FiniteMap.C_FM(x4)(Curry.Module.FiniteMap.c_plusFM_C'39(x4)(x1)(x5)(x7)(st))+c_plusFM_C_case_48 x1 x4 x5 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM_C_case_48(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_plusFM_C_case_48 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM_C_case_48")(x)++++c_plusFM'39_case_49 x1 x4 x5 x6 x7 x8 x3@Curry.Module.FiniteMap.C_EmptyFM st = Curry.Module.FiniteMap.C_Branch(x4)(x5)(x6)(x7)(x8)+c_plusFM'39_case_49 x1 x4 x5 x6 x7 x8 x3@(Curry.Module.FiniteMap.C_Branch x9 x10 x11 x12 x13) st = let {x14 = Curry.Module.FiniteMap.C_Branch(x4)(x5)(x6)(x7)(x8)} in Curry.Module.FiniteMap.c_mkVBalBranch(x1)(x9)(x10)(Curry.Module.FiniteMap.c_plusFM'39(x1)(Curry.Module.FiniteMap.c_splitLT(x1)(x14)(x9)(st))(x12)(st))(Curry.Module.FiniteMap.c_plusFM'39(x1)(Curry.Module.FiniteMap.c_splitGT(x1)(x14)(x9)(st))(x13)(st))(st)+c_plusFM'39_case_49 x1 x4 x5 x6 x7 x8 (Curry.Module.FiniteMap.C_FiniteMapOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM'39_case_49(x1)(x4)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_plusFM'39_case_49 x1 x4 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM'_case_49")(x)++++c_plusFM_case_50 x3 x4 x2@(Curry.Module.FiniteMap.C_FM x5 x6) st = Curry.Module.FiniteMap.C_FM(x3)(Curry.Module.FiniteMap.c_plusFM'39(x3)(x4)(x6)(st))+c_plusFM_case_50 x3 x4 (Curry.Module.FiniteMap.C_FMOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_plusFM_case_50(x3)(x4)(x)(st))(i)(xs)(st)+c_plusFM_case_50 x3 x4 x st = Curry.RunTimeSystem.patternFail("FiniteMap.plusFM_case_50")(x)++++c_updFM'46upd'4649_case_53 x1 x2 x3 x5 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.C_Branch(x5)(Curry.Module.Prelude.c_apply(x1)(x6)(st))(x7)(x8)(x9)+c_updFM'46upd'4649_case_53 x1 x2 x3 x5 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_updFM'46upd'4649_case_52(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x9)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(x2)(st))(x5)(st))(st)+c_updFM'46upd'4649_case_53 x1 x2 x3 x5 x6 x7 x8 x9 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_updFM'46upd'4649_case_53(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x9)(x)(st))(i)(xs)(st)+c_updFM'46upd'4649_case_53 x1 x2 x3 x5 x6 x7 x8 x9 x st = Curry.RunTimeSystem.patternFail("FiniteMap.updFM.upd.49_case_53")(x)++++c_updFM'46upd'4649_case_52 x1 x2 x3 x5 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.C_Branch(x5)(x6)(x7)(Curry.Module.FiniteMap.c_updFM'46upd'4649(x1)(x2)(x3)(x8)(st))(x9)+c_updFM'46upd'4649_case_52 x1 x2 x3 x5 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_updFM'46upd'4649_case_51(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x9)(Curry.Module.Prelude.c_otherwise(st))(st)+c_updFM'46upd'4649_case_52 x1 x2 x3 x5 x6 x7 x8 x9 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_updFM'46upd'4649_case_52(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x9)(x)(st))(i)(xs)(st)+c_updFM'46upd'4649_case_52 x1 x2 x3 x5 x6 x7 x8 x9 x st = Curry.RunTimeSystem.patternFail("FiniteMap.updFM.upd.49_case_52")(x)++++c_updFM'46upd'4649_case_51 x1 x2 x3 x5 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.C_Branch(x5)(x6)(x7)(x8)(Curry.Module.FiniteMap.c_updFM'46upd'4649(x1)(x2)(x3)(x9)(st))+c_updFM'46upd'4649_case_51 x1 x2 x3 x5 x6 x7 x8 x9 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_updFM'46upd'4649_case_51(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x9)(x)(st))(i)(xs)(st)+c_updFM'46upd'4649_case_51 x1 x2 x3 x5 x6 x7 x8 x9 x st = Curry.RunTimeSystem.patternFail("FiniteMap.updFM.upd.49_case_51")(x)++++c_delFromFM'39_case_55 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(x4)(x5)(Curry.Module.FiniteMap.c_delFromFM'39(x1)(x7)(x3)(st))(x8)(st)+c_delFromFM'39_case_55 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_delFromFM'39_case_54(x1)(x3)(x4)(x5)(x7)(x8)(Curry.Module.Prelude.op_61_61(x3)(x4)(st))(st)+c_delFromFM'39_case_55 x1 x3 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_delFromFM'39_case_55(x1)(x3)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_delFromFM'39_case_55 x1 x3 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.delFromFM'_case_55")(x)++++c_delFromFM'39_case_54 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_glueBal(x1)(x7)(x8)(st)+c_delFromFM'39_case_54 x1 x3 x4 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch(x4)(x5)(x7)(Curry.Module.FiniteMap.c_delFromFM'39(x1)(x8)(x3)(st))(st)+c_delFromFM'39_case_54 x1 x3 x4 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_delFromFM'39_case_54(x1)(x3)(x4)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_delFromFM'39_case_54 x1 x3 x4 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("FiniteMap.delFromFM'_case_54")(x)++++c_addToFM_C'39_case_57 x1 x2 x4 x5 x6 x7 x8 x9 x10 x11@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.c_mkBalBranch(x6)(x7)(Curry.Module.FiniteMap.c_addToFM_C'39(x1)(x2)(x9)(x4)(x5)(st))(x10)(st)+c_addToFM_C'39_case_57 x1 x2 x4 x5 x6 x7 x8 x9 x10 x11@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_addToFM_C'39_case_56(x1)(x2)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(Curry.Module.Prelude.op_61_61(x4)(x6)(st))(st)+c_addToFM_C'39_case_57 x1 x2 x4 x5 x6 x7 x8 x9 x10 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addToFM_C'39_case_57(x1)(x2)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x)(st))(i)(xs)(st)+c_addToFM_C'39_case_57 x1 x2 x4 x5 x6 x7 x8 x9 x10 x st = Curry.RunTimeSystem.patternFail("FiniteMap.addToFM_C'_case_57")(x)++++c_addToFM_C'39_case_56 x1 x2 x4 x5 x6 x7 x8 x9 x10 x11@Curry.Module.Prelude.C_True st = Curry.Module.FiniteMap.C_Branch(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x7)(st))(x5)(st))(x8)(x9)(x10)+c_addToFM_C'39_case_56 x1 x2 x4 x5 x6 x7 x8 x9 x10 x11@Curry.Module.Prelude.C_False st = Curry.Module.FiniteMap.c_mkBalBranch(x6)(x7)(x9)(Curry.Module.FiniteMap.c_addToFM_C'39(x1)(x2)(x10)(x4)(x5)(st))(st)+c_addToFM_C'39_case_56 x1 x2 x4 x5 x6 x7 x8 x9 x10 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.FiniteMap.c_addToFM_C'39_case_56(x1)(x2)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x)(st))(i)(xs)(st)+c_addToFM_C'39_case_56 x1 x2 x4 x5 x6 x7 x8 x9 x10 x st = Curry.RunTimeSystem.patternFail("FiniteMap.addToFM_C'_case_56")(x)++
+ dist/build/Curry/Module/Float.hs view
@@ -0,0 +1,274 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Float (module Curry.Module.Float) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++instance Fractional C_Float where+  fromRational x = PrimValue (fromRational x)+  recip (PrimValue x) = PrimValue (recip x)++instance Floating C_Float where+  pi = PrimValue pi+  exp (PrimValue x) = PrimValue (exp x)+  log (PrimValue x) = PrimValue (log x)+  sin (PrimValue x) = PrimValue (sin x)+  cos (PrimValue x) = PrimValue (cos x)+  sinh (PrimValue x) = PrimValue (sinh x)+  cosh (PrimValue x) = PrimValue (cosh x)+  asin (PrimValue x) = PrimValue (asin x)+  acos (PrimValue x) = PrimValue (acos x)+  atan (PrimValue x) = PrimValue (atan x)+  asinh (PrimValue x) = PrimValue (asinh x)+  acosh (PrimValue x) = PrimValue (acosh x)+  atanh (PrimValue x) = PrimValue (atanh x)+  +instance RealFrac C_Float where+  properFraction (PrimValue x) = case properFraction x of (b,a) -> (b,PrimValue a)++prim_Float_plus :: C_Float -> C_Float -> Result C_Float+prim_Float_plus x y _ = x+y++prim_Float_minus :: C_Float -> C_Float -> Result C_Float+prim_Float_minus x y _ = x-y++prim_Float_times :: C_Float -> C_Float -> Result C_Float+prim_Float_times x y _ = x*y++prim_Float_divide :: C_Float -> C_Float -> Result C_Float+prim_Float_divide x y _ = x/y++prim_Float_lt :: C_Float -> C_Float -> Result C_Bool+prim_Float_lt x y _ = toCurry (x<y)++prim_Float_gt :: C_Float -> C_Float -> Result C_Bool+prim_Float_gt x y _ = toCurry (x>y)++prim_Float_leq :: C_Float -> C_Float -> Result C_Bool+prim_Float_leq x y _ = toCurry (x<=y)++prim_Float_geq :: C_Float -> C_Float -> Result C_Bool+prim_Float_geq x y _ = toCurry (x>=y)++prim_i2f :: C_Int -> Result C_Float+prim_i2f x _ = fromInteger (fromCurry x)++prim_truncate :: C_Float -> Result C_Int+prim_truncate x _ = toCurry (truncate x :: Integer)++prim_round :: C_Float  -> Result C_Int+prim_round x _ = toCurry (round x :: Integer)++prim_sqrt :: C_Float  -> Result C_Float+prim_sqrt x _ = sqrt x++prim_log :: C_Float   -> Result C_Float+prim_log x _ = log x++prim_exp :: C_Float   -> Result C_Float+prim_exp x _ = exp x++prim_sin :: C_Float   -> Result C_Float+prim_sin x _ = sin x++prim_cos :: C_Float   -> Result C_Float+prim_cos x _ = cos x++prim_tan :: C_Float   -> Result C_Float+prim_tan x _ = tan x++prim_atan :: C_Float   -> Result C_Float+prim_atan x _ = atan x++++-- end included++op_43_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+op_43_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_plus))(x1)(st))(x2)(st)++++op_45_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+op_45_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_minus))(x1)(st))(x2)(st)++++op_42_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+op_42_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_times))(x1)(st))(x2)(st)++++op_47_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+op_47_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_divide))(x1)(st))(x2)(st)++++op_60_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_60_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_lt))(x1)(st))(x2)(st)++++op_62_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_62_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_gt))(x1)(st))(x2)(st)++++op_60_61_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_60_61_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_leq))(x1)(st))(x2)(st)++++op_62_61_46 :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_62_61_46 x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Float.c_prim_Float_geq))(x1)(st))(x2)(st)++++c_i2f :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_i2f x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_i2f))(x1)(st)++++c_truncate :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_truncate x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_truncate))(x1)(st)++++c_round :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_round x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_round))(x1)(st)++++c_sqrt :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_sqrt x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_sqrt))(x1)(st)++++c_log :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_log x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_log))(x1)(st)++++c_exp :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_exp x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_exp))(x1)(st)++++c_sin :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_sin x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_sin))(x1)(st)++++c_cos :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_cos x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_cos))(x1)(st)++++c_tan :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_tan x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_tan))(x1)(st)++++c_atan :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_atan x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Float.c_prim_atan))(x1)(st)++++c_prim_Float_plus :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_Float_plus x1 x2 st = Curry.Module.Float.prim_Float_plus(x1)(x2)(st)++++c_prim_Float_minus :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_Float_minus x1 x2 st = Curry.Module.Float.prim_Float_minus(x1)(x2)(st)++++c_prim_Float_times :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_Float_times x1 x2 st = Curry.Module.Float.prim_Float_times(x1)(x2)(st)++++c_prim_Float_divide :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_Float_divide x1 x2 st = Curry.Module.Float.prim_Float_divide(x1)(x2)(st)++++c_prim_Float_lt :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_prim_Float_lt x1 x2 st = Curry.Module.Float.prim_Float_lt(x1)(x2)(st)++++c_prim_Float_gt :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_prim_Float_gt x1 x2 st = Curry.Module.Float.prim_Float_gt(x1)(x2)(st)++++c_prim_Float_leq :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_prim_Float_leq x1 x2 st = Curry.Module.Float.prim_Float_leq(x1)(x2)(st)++++c_prim_Float_geq :: Curry.Module.Prelude.C_Float -> Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_prim_Float_geq x1 x2 st = Curry.Module.Float.prim_Float_geq(x1)(x2)(st)++++c_prim_i2f :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_i2f x1 st = Curry.Module.Float.prim_i2f(x1)(st)++++c_prim_truncate :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_prim_truncate x1 st = Curry.Module.Float.prim_truncate(x1)(st)++++c_prim_round :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_prim_round x1 st = Curry.Module.Float.prim_round(x1)(st)++++c_prim_sqrt :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_sqrt x1 st = Curry.Module.Float.prim_sqrt(x1)(st)++++c_prim_log :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_log x1 st = Curry.Module.Float.prim_log(x1)(st)++++c_prim_exp :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_exp x1 st = Curry.Module.Float.prim_exp(x1)(st)++++c_prim_sin :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_sin x1 st = Curry.Module.Float.prim_sin(x1)(st)++++c_prim_cos :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_cos x1 st = Curry.Module.Float.prim_cos(x1)(st)++++c_prim_tan :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_tan x1 st = Curry.Module.Float.prim_tan(x1)(st)++++c_prim_atan :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Float+c_prim_atan x1 st = Curry.Module.Float.prim_atan(x1)(st)++
+ dist/build/Curry/Module/Global.hs view
@@ -0,0 +1,166 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Global (module Curry.Module.Global) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++import System.IO.Unsafe+import qualified Data.IORef as Ref++type C_Global t0 = Prim (Ref.IORef t0)++global :: (Curry t0) => t0 -> C_GlobalSpec -> Result (C_Global t0)+global x spec = ref `seq` (\ _ -> PrimValue ref)+  where ref = unsafePerformIO (Ref.newIORef x) ++prim_readGlobal :: (Curry t0) => C_Global t0 -> Result (C_IO t0)+prim_readGlobal  = prim_readIORef++prim_writeGlobal :: (Curry t0) => C_Global t0 -> t0 -> Result (C_IO T0)+prim_writeGlobal  = prim_writeIORef++----------------------+-- preparing io ref+----------------------++type C_IORef a = Prim (Ref.IORef a)++instance Show (Ref.IORef a) where+  show _ = "IOREF"++instance Read (Ref.IORef a) where+  readsPrec = error "reading IOREF"++instance Generate (Ref.IORef a) where+  genFree    = error "free variable of type IOExts.IORef"+  maxArity _ = error "free variable of type IOExts.IORef"++newIORef :: Curry t0 => t0 -> Result (C_IO (C_IORef t0))+newIORef x = ioFunc0 (Ref.newIORef x) ++prim_readIORef :: Curry t0 => C_IORef t0 -> Result (C_IO t0)+prim_readIORef (PrimValue ref) _ = +   C_IO (\ _ -> do +           v <- Ref.readIORef ref +           Prelude.return (IOVal v))++prim_writeIORef :: Curry t0 => C_IORef t0 -> t0 -> Result (C_IO T0)+prim_writeIORef (PrimValue ref) x = ioFunc0 (Ref.writeIORef ref x) +++-- end included++data C_GlobalSpec = C_Temporary+  | C_Persistent (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+  | C_GlobalSpecFail Curry.RunTimeSystem.C_Exceptions+  | C_GlobalSpecOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Global.C_GlobalSpec)++instance BaseCurry Curry.Module.Global.C_GlobalSpec where+  nf f (Curry.Module.Global.C_Persistent x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Global.C_Persistent(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Global.C_Persistent x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Global.C_Persistent(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Global.C_GlobalSpecOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Global.C_Temporary,Curry.Module.Global.C_Persistent(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Global.C_GlobalSpecFail++  branching  = Curry.Module.Global.C_GlobalSpecOr++  consKind (Curry.Module.Global.C_GlobalSpecOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Global.C_GlobalSpecFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Global.C_GlobalSpecFail x) = x++  orRef (Curry.Module.Global.C_GlobalSpecOr x _) = x++  branches (Curry.Module.Global.C_GlobalSpecOr _ x) = x++++++instance Curry Curry.Module.Global.C_GlobalSpec where+  strEq Curry.Module.Global.C_Temporary Curry.Module.Global.C_Temporary st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Global.C_Persistent x1) (Curry.Module.Global.C_Persistent y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Global.C_Temporary Curry.Module.Global.C_Temporary st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Global.C_Persistent x1) (Curry.Module.Global.C_Persistent y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Global.C_Temporary st = Curry.Module.Global.C_Temporary+  propagate f (Curry.Module.Global.C_Persistent x1) st = Curry.Module.Global.C_Persistent(f((0::Int))(x1)(st))++  foldCurry f c Curry.Module.Global.C_Temporary st = c+  foldCurry f c (Curry.Module.Global.C_Persistent x1) st = f(x1)(c)(st)++  typeName _ = "GlobalSpec"++  showQ _ Curry.Module.Global.C_Temporary = Prelude.showString("Global.Temporary")+  showQ d (Curry.Module.Global.C_Persistent x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Global.Persistent "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Global.C_GlobalSpecOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Global.C_GlobalSpec where+  showsPrec _ Curry.Module.Global.C_Temporary = Prelude.showString("Temporary")+  showsPrec d (Curry.Module.Global.C_Persistent x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Persistent "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Global.C_GlobalSpecOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Read Curry.Module.Global.C_GlobalSpec where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Global.C_Temporary)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Global")("Temporary")(r)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Global.C_Persistent(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Global")("Persistent")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))++++++c_readGlobal :: (Curry t0) => (Curry.Module.Global.C_Global t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_readGlobal x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Global.c_prim_readGlobal))(x1)(st)++++c_writeGlobal :: (Curry t0) => (Curry.Module.Global.C_Global t0) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeGlobal x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Global.c_prim_writeGlobal))(x1)(st))(x2)(st)++++c_global :: (Curry t0) => t0 -> Curry.Module.Global.C_GlobalSpec -> Curry.RunTimeSystem.State -> Curry.Module.Global.C_Global t0+c_global x1 x2 st = Curry.Module.Global.global(x1)(x2)(st)++++c_prim_readGlobal :: (Curry t0) => (Curry.Module.Global.C_Global t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_prim_readGlobal x1 st = Curry.Module.Global.prim_readGlobal(x1)(st)++++c_prim_writeGlobal :: (Curry t0) => (Curry.Module.Global.C_Global t0) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_writeGlobal x1 x2 st = Curry.Module.Global.prim_writeGlobal(x1)(x2)(st)++
+ dist/build/Curry/Module/GraphInductive.hs view
@@ -0,0 +1,1020 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.GraphInductive (module Curry.Module.GraphInductive) where++import Curry.RunTimeSystem+import Curry.Module.FiniteMap+import Curry.Module.Maybe+import Curry.Module.Prelude+import Curry.Module.Sort++++-- begin included++++-- end included++type C_Node = Curry.Module.Prelude.C_Int++type C_LNode t0 = Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0++type C_UNode = Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.T0++type C_Edge = Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int++type C_LEdge t0 = Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0++type C_UEdge = Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int Curry.Module.Prelude.T0++type C_Context t0 t1 = Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int))++type C_Adj t0 = Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)++type C_MContext t0 t1 = Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)))++type C_Context'39 t0 t1 = Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int))++type C_UContext = Curry.Module.Prelude.T3 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) Curry.Module.Prelude.C_Int (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)++type C_GDecomp t0 t1 = Curry.Module.Prelude.T2 (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int))) (Curry.Module.GraphInductive.C_Graph t0 t1)++type C_Decomp t0 t1 = Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t0 t1)++type C_UDecomp t0 = Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) Curry.Module.Prelude.C_Int (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int))) t0++type C_Path = Curry.Module.Prelude.List Curry.Module.Prelude.C_Int++type C_LPath t0 = Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)++type C_UPath = Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.T0)++type C_GraphRep t0 t1 = Curry.Module.FiniteMap.C_FM Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)))++type C_UGr = Curry.Module.GraphInductive.C_Graph Curry.Module.Prelude.T0 Curry.Module.Prelude.T0++data C_Graph t0 t1 = C_Gr (Curry.Module.FiniteMap.C_FM Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int))))+  | C_GraphFail Curry.RunTimeSystem.C_Exceptions+  | C_GraphOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.GraphInductive.C_Graph t0 t1))++instance (BaseCurry t0,BaseCurry t1) => BaseCurry (Curry.Module.GraphInductive.C_Graph t0 t1) where+  nf f (Curry.Module.GraphInductive.C_Gr x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.GraphInductive.C_Gr(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.GraphInductive.C_Gr x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.GraphInductive.C_Gr(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.GraphInductive.C_GraphOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.GraphInductive.C_Gr(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.GraphInductive.C_GraphFail++  branching  = Curry.Module.GraphInductive.C_GraphOr++  consKind (Curry.Module.GraphInductive.C_GraphOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.GraphInductive.C_GraphFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.GraphInductive.C_GraphFail x) = x++  orRef (Curry.Module.GraphInductive.C_GraphOr x _) = x++  branches (Curry.Module.GraphInductive.C_GraphOr _ x) = x++++++instance (Curry t0,Curry t1) => Curry (Curry.Module.GraphInductive.C_Graph t0 t1) where+  strEq (Curry.Module.GraphInductive.C_Gr x1) (Curry.Module.GraphInductive.C_Gr y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.GraphInductive.C_Gr x1) (Curry.Module.GraphInductive.C_Gr y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.GraphInductive.C_Gr x1) st = Curry.Module.GraphInductive.C_Gr(f((0::Int))(x1)(st))++  foldCurry f c (Curry.Module.GraphInductive.C_Gr x1) st = f(x1)(c)(st)++  typeName _ = "Graph"++  showQ d (Curry.Module.GraphInductive.C_Gr x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("GraphInductive.Gr "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.GraphInductive.C_GraphOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1) => Show (Curry.Module.GraphInductive.C_Graph t0 t1) where+  showsPrec d (Curry.Module.GraphInductive.C_Gr x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Gr "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.GraphInductive.C_GraphOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0,Read t1) => Read (Curry.Module.GraphInductive.C_Graph t0 t1) where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.GraphInductive.C_Gr(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("GraphInductive")("Gr")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r)++++++op_58_38 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> (Curry.Module.GraphInductive.C_Graph t1 t0) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t1 t0+op_58_38 x1@(Curry.Module.Prelude.T4 x3 x4 x5 x6) x2 st = Curry.Module.GraphInductive.c_'58'38_case_38(x3)(x4)(x5)(x6)(x2)(st)+op_58_38 (Curry.Module.Prelude.T4Or i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.op_58_38(x)(x2)(st))(i)(xs)(st)+op_58_38 x x2 st = Curry.RunTimeSystem.patternFail("GraphInductive.:&")(x)++++c_matchAny :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int))) (Curry.Module.GraphInductive.C_Graph t0 t1)+c_matchAny x1@(Curry.Module.GraphInductive.C_Gr x2) st = Curry.Module.GraphInductive.c_matchAny_case_35(x2)(Curry.Module.FiniteMap.c_isEmptyFM(x2)(st))(st)+c_matchAny (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_matchAny(x)(st))(i)(xs)(st)+c_matchAny x st = Curry.RunTimeSystem.patternFail("GraphInductive.matchAny")(x)++++c_empty :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1+c_empty st = Curry.Module.GraphInductive.C_Gr(Curry.Module.FiniteMap.c_emptyFM(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_60))(st))++++c_mkGraph :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t1)) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1+c_mkGraph x1 x2 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_insEdges(x2)))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_insNodes(x1)))(st))(Curry.Module.GraphInductive.c_empty(st))(st)++++c_buildGr :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)))) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t1 t0)+c_buildGr st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.op_58_38))(Curry.Module.GraphInductive.c_empty(st)))++++c_mkUGraph :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int)) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph Curry.Module.Prelude.T0 Curry.Module.Prelude.T0+c_mkUGraph x1 x2 st = Curry.Module.GraphInductive.c_mkGraph(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_labUNodes(st))(x1)(st))(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_labUEdges(st))(x2)(st))(st)++++c_insNode :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1)+c_insNode x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.Prelude.pf(Curry.Module.GraphInductive.op_58_38(Curry.Module.Prelude.T4(Curry.Module.Prelude.List)(x2)(x3)(Curry.Module.Prelude.List)))+c_insNode (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insNode(x)(st))(i)(xs)(st)+c_insNode x st = Curry.RunTimeSystem.patternFail("GraphInductive.insNode")(x)++++c_insEdge :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0) -> (Curry.Module.GraphInductive.C_Graph t1 t0) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t1 t0+c_insEdge x1@(Curry.Module.Prelude.T3 x3 x4 x5) x2 st = let {x6 = Curry.Module.GraphInductive.c_match(x3)(x2)(st)} in Curry.Module.GraphInductive.op_58_38(Curry.Module.Prelude.T4(Curry.Module.GraphInductive.c_insEdge'46_'35selFP3'35pr(x6)(st))(x3)(Curry.Module.GraphInductive.c_insEdge'46_'35selFP4'35la(x6)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x5)(x4))(Curry.Module.GraphInductive.c_insEdge'46_'35selFP5'35su(x6)(st))))(Curry.Module.GraphInductive.c_insEdge'46_'35selFP6'35g'39(x6)(st))(st)+c_insEdge (Curry.Module.Prelude.T3Or i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge(x)(x2)(st))(i)(xs)(st)+c_insEdge x x2 st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge")(x)++++c_insEdge'46_'35selFP3'35pr :: (Curry t213,Curry t212) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t212 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t212 t213)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)+c_insEdge'46_'35selFP3'35pr x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP3'35pr_case_30(x2)(st)+c_insEdge'46_'35selFP3'35pr (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP3'35pr(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP3'35pr x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP3#pr")(x)++++c_insEdge'46_'35selFP4'35la :: (Curry t213,Curry t212) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t212 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t212 t213)) -> Curry.RunTimeSystem.State -> t212+c_insEdge'46_'35selFP4'35la x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP4'35la_case_28(x2)(st)+c_insEdge'46_'35selFP4'35la (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP4'35la(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP4'35la x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP4#la")(x)++++c_insEdge'46_'35selFP5'35su :: (Curry t213,Curry t212) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t212 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t212 t213)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)+c_insEdge'46_'35selFP5'35su x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP5'35su_case_26(x2)(st)+c_insEdge'46_'35selFP5'35su (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP5'35su(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP5'35su x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP5#su")(x)++++c_insEdge'46_'35selFP6'35g'39 :: (Curry t213,Curry t212) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t212 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t213 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t212 t213)) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t212 t213+c_insEdge'46_'35selFP6'35g'39 x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP6'35g'39_case_24(x3)(x2)(st)+c_insEdge'46_'35selFP6'35g'39 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP6'35g'39(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP6'35g'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP6#g'")(x)++++c_delNode :: (Curry t0,Curry t1) => Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1)+c_delNode x1 st = Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_delNodes((Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.List)))++++c_delEdge :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1+c_delEdge x1@(Curry.Module.Prelude.T2 x3 x4) x2 st = Curry.Module.GraphInductive.c_delEdge_case_22(x2)(x3)(x4)(Curry.Module.GraphInductive.c_match(x3)(x2)(st))(st)+c_delEdge (Curry.Module.Prelude.T2Or i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_delEdge(x)(x2)(st))(i)(xs)(st)+c_delEdge x x2 st = Curry.RunTimeSystem.patternFail("GraphInductive.delEdge")(x)++++c_insNodes :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)) -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1+c_insNodes x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_insNode))(x2)(x1)(st)++++c_insEdges :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0)) -> (Curry.Module.GraphInductive.C_Graph t1 t0) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t1 t0+c_insEdges x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_insEdge))(x2)(x1)(st)++++c_delNodes :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1+c_delNodes x1@Curry.Module.Prelude.List x2 st = x2+c_delNodes x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.GraphInductive.c_delNodes(x4)(Curry.Module.Prelude.c_snd(Curry.Module.GraphInductive.c_match(x3)(x2)(st))(st))(st)+c_delNodes (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_delNodes(x)(x2)(st))(i)(xs)(st)+c_delNodes x x2 st = Curry.RunTimeSystem.patternFail("GraphInductive.delNodes")(x)++++c_delEdges :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int)) -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t0 t1+c_delEdges x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_delEdge))(x2)(x1)(st)++++c_isEmpty :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isEmpty x1@(Curry.Module.GraphInductive.C_Gr x2) st = Curry.Module.FiniteMap.c_isEmptyFM(x2)(st)+c_isEmpty (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_isEmpty(x)(st))(i)(xs)(st)+c_isEmpty x st = Curry.RunTimeSystem.patternFail("GraphInductive.isEmpty")(x)++++c_match :: (Curry t0,Curry t1) => Curry.Module.Prelude.C_Int -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t0 t1)+c_match x1 x2@(Curry.Module.GraphInductive.C_Gr x3) st = Curry.Module.Prelude.c_maybe(Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Nothing)(Curry.Module.GraphInductive.C_Gr(x3)))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_match'46_'35lambda5(x1)))(Curry.Module.FiniteMap.c_splitFM(x3)(x1)(st))(st)+c_match x1 (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_match(x1)(x)(st))(i)(xs)(st)+c_match x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.match")(x)++++c_match'46_'35lambda5 :: (Curry t146,Curry t148) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 (Curry.Module.FiniteMap.C_FM Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t146 Curry.Module.Prelude.C_Int)) t148 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t146 Curry.Module.Prelude.C_Int)))) (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t146 Curry.Module.Prelude.C_Int)) t148 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t146 Curry.Module.Prelude.C_Int))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t146 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t148 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t146 Curry.Module.Prelude.C_Int)))) (Curry.Module.GraphInductive.C_Graph t148 t146)+c_match'46_'35lambda5 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.GraphInductive.c_match'46_'35lambda5_case_19(x1)(x3)(x4)(st)+c_match'46_'35lambda5 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_match'46_'35lambda5(x1)(x)(st))(i)(xs)(st)+c_match'46_'35lambda5 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.match._#lambda5")(x)++++c_noNodes :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_noNodes x1@(Curry.Module.GraphInductive.C_Gr x2) st = Curry.Module.FiniteMap.c_sizeFM(x2)(st)+c_noNodes (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_noNodes(x)(st))(i)(xs)(st)+c_noNodes x st = Curry.RunTimeSystem.patternFail("GraphInductive.noNodes")(x)++++c_nodeRange :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int+c_nodeRange x1@(Curry.Module.GraphInductive.C_Gr x2) st = let {x3 = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_fromJust))(st)} in Curry.Module.GraphInductive.c_nodeRange_case_17(x2)(x3)(Curry.Module.FiniteMap.c_isEmptyFM(x2)(st))(st)+c_nodeRange (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nodeRange(x)(st))(i)(xs)(st)+c_nodeRange x st = Curry.RunTimeSystem.patternFail("GraphInductive.nodeRange")(x)++++c_context :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t0 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int))+c_context x1 x2 st = Curry.Module.GraphInductive.c_context_case_15(x1)(x2)(Curry.Module.GraphInductive.c_match(x2)(x1)(st))(st)++++c_lab :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t0+c_lab x1 x2 st = Curry.Module.Maybe.op_62_62_45(Curry.Module.Prelude.c_fst(Curry.Module.GraphInductive.c_match(x2)(x1)(st))(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Prelude.C_Just))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_lab'39))(st))(st)++++c_neighbors :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int))+c_neighbors st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_neighbors'46_'35lambda7))(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_context))(st)++++c_neighbors'46_'35lambda7 :: (Curry t416,Curry t415) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t416 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t415 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t416 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_neighbors'46_'35lambda7 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(Curry.Module.Prelude.op_43_43(x2)(x5)(st))(st)+c_neighbors'46_'35lambda7 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_neighbors'46_'35lambda7(x)(st))(i)(xs)(st)+c_neighbors'46_'35lambda7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.neighbors._#lambda7")(x)++++c_suc :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int))+c_suc st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))))(st))(Curry.Module.GraphInductive.c_context4(st))(st)++++c_pre :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int))+c_pre st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))))(st))(Curry.Module.GraphInductive.c_context1(st))(st)++++c_lsuc :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t1)))+c_lsuc st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_flip2))))(st))(Curry.Module.GraphInductive.c_context4(st))(st)++++c_lpre :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t1)))+c_lpre st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_flip2))))(st))(Curry.Module.GraphInductive.c_context1(st))(st)++++c_out :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t1)+c_out x1 x2 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_out'46_'35lambda8(x2)))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_context4(st))(x1)(st))(x2)(st))(st)++++c_out'46_'35lambda8 :: (Curry t511) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 t511 Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t511+c_out'46_'35lambda8 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.T3(x1)(x4)(x3)+c_out'46_'35lambda8 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_out'46_'35lambda8(x1)(x)(st))(i)(xs)(st)+c_out'46_'35lambda8 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.out._#lambda8")(x)++++c_inn :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t1)+c_inn x1 x2 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_inn'46_'35lambda9(x2)))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_context1(st))(x1)(st))(x2)(st))(st)++++c_inn'46_'35lambda9 :: (Curry t521) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 t521 Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t521+c_inn'46_'35lambda9 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.T3(x4)(x1)(x3)+c_inn'46_'35lambda9 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_inn'46_'35lambda9(x1)(x)(st))(i)(xs)(st)+c_inn'46_'35lambda9 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.inn._#lambda9")(x)++++c_outdeg :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int))+c_outdeg st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_length))(st))(Curry.Module.GraphInductive.c_context4(st))(st)++++c_indeg :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int))+c_indeg st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_length))(st))(Curry.Module.GraphInductive.c_context1(st))(st)++++c_deg :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int))+c_deg st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_deg'46_'35lambda10))(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_context))(st)++++c_deg'46_'35lambda10 :: (Curry t553,Curry t552) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t553 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t552 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t553 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_deg'46_'35lambda10 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.c_length(x2)(st))(Curry.Module.Prelude.c_length(x5)(st))(st)+c_deg'46_'35lambda10 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_deg'46_'35lambda10(x)(st))(i)(xs)(st)+c_deg'46_'35lambda10 x st = Curry.RunTimeSystem.patternFail("GraphInductive.deg._#lambda10")(x)++++c_gelem :: (Curry t0,Curry t1) => Curry.Module.Prelude.C_Int -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_gelem x1 x2 st = Curry.Module.Maybe.c_isJust(Curry.Module.Prelude.c_fst(Curry.Module.GraphInductive.c_match(x1)(x2)(st))(st))(st)++++c_equal :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_equal x1 x2 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_slabNodes(st))(x1)(st))(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_slabNodes(st))(x2)(st))(st))(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_slabEdges(st))(x1)(st))(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_slabEdges(st))(x2)(st))(st))(st)++++c_nodeComp :: (Curry t0) => (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0) -> (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_nodeComp x1 x2 st = Curry.Module.GraphInductive.c_nodeComp_case_13(x1)(x2)(Curry.Module.Prelude.op_61_61(x1)(x2)(st))(st)++++c_slabNodes :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0))+c_slabNodes st = Curry.Module.Prelude.op_46(Curry.Module.GraphInductive.c_sortBy(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_nodeComp))(st))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labNodes))(st)++++c_edgeComp :: (Curry t0) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0) -> (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_edgeComp x1 x2 st = let {x4 = Curry.Module.GraphInductive.c_edgeComp'46_'35selFP11'35v(x1)(st)} in let {x7 = Curry.Module.GraphInductive.c_edgeComp'46_'35selFP9'35x(x2)(st)} in Curry.Module.GraphInductive.c_edgeComp_case_10(x1)(x2)(x4)(x7)(Curry.Module.Prelude.op_61_61(x1)(x2)(st))(st)++++c_edgeComp'46_'35selFP11'35v :: (Curry t613) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t613) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_edgeComp'46_'35selFP11'35v x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x2+c_edgeComp'46_'35selFP11'35v (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp'46_'35selFP11'35v(x)(st))(i)(xs)(st)+c_edgeComp'46_'35selFP11'35v x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp._#selFP11#v")(x)++++c_edgeComp'46_'35selFP12'35w :: (Curry t613) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t613) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_edgeComp'46_'35selFP12'35w x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x3+c_edgeComp'46_'35selFP12'35w (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp'46_'35selFP12'35w(x)(st))(i)(xs)(st)+c_edgeComp'46_'35selFP12'35w x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp._#selFP12#w")(x)++++c_edgeComp'46_'35selFP9'35x :: (Curry t613) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t613) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_edgeComp'46_'35selFP9'35x x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x2+c_edgeComp'46_'35selFP9'35x (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp'46_'35selFP9'35x(x)(st))(i)(xs)(st)+c_edgeComp'46_'35selFP9'35x x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp._#selFP9#x")(x)++++c_edgeComp'46_'35selFP10'35y :: (Curry t613) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t613) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_edgeComp'46_'35selFP10'35y x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x3+c_edgeComp'46_'35selFP10'35y (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp'46_'35selFP10'35y(x)(st))(i)(xs)(st)+c_edgeComp'46_'35selFP10'35y x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp._#selFP10#y")(x)++++c_slabEdges :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t1))+c_slabEdges st = Curry.Module.Prelude.op_46(Curry.Module.GraphInductive.c_sortBy(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_edgeComp))(st))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labEdges))(st)++++c_node'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_node'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = x3+c_node'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_node'39(x)(st))(i)(xs)(st)+c_node'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.node'")(x)++++c_lab'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> t1+c_lab'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = x4+c_lab'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_lab'39(x)(st))(i)(xs)(st)+c_lab'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.lab'")(x)++++c_labNode'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t1+c_labNode'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.T2(x3)(x4)+c_labNode'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labNode'39(x)(st))(i)(xs)(st)+c_labNode'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labNode'")(x)++++c_neighbors'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_neighbors'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(x2)(st))(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(x5)(st))(st)+c_neighbors'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_neighbors'39(x)(st))(i)(xs)(st)+c_neighbors'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.neighbors'")(x)++++c_suc'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_suc'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(x5)(st)+c_suc'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_suc'39(x)(st))(i)(xs)(st)+c_suc'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.suc'")(x)++++c_pre'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_pre'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(x2)(st)+c_pre'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_pre'39(x)(st))(i)(xs)(st)+c_pre'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.pre'")(x)++++c_lpre'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)+c_lpre'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_flip2))(x2)(st)+c_lpre'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_lpre'39(x)(st))(i)(xs)(st)+c_lpre'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.lpre'")(x)++++c_lsuc'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)+c_lsuc'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_flip2))(x5)(st)+c_lsuc'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_lsuc'39(x)(st))(i)(xs)(st)+c_lsuc'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.lsuc'")(x)++++c_out'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0)+c_out'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_out'39'46_'35lambda11(x3)))(x5)(st)+c_out'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_out'39(x)(st))(i)(xs)(st)+c_out'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.out'")(x)++++c_out'39'46_'35lambda11 :: (Curry t732) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 t732 Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t732+c_out'39'46_'35lambda11 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.T3(x1)(x4)(x3)+c_out'39'46_'35lambda11 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_out'39'46_'35lambda11(x1)(x)(st))(i)(xs)(st)+c_out'39'46_'35lambda11 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.out'._#lambda11")(x)++++c_inn'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t0)+c_inn'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_inn'39'46_'35lambda12(x3)))(x2)(st)+c_inn'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_inn'39(x)(st))(i)(xs)(st)+c_inn'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.inn'")(x)++++c_inn'39'46_'35lambda12 :: (Curry t742) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 t742 Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t742+c_inn'39'46_'35lambda12 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.T3(x4)(x1)(x3)+c_inn'39'46_'35lambda12 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_inn'39'46_'35lambda12(x1)(x)(st))(i)(xs)(st)+c_inn'39'46_'35lambda12 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.inn'._#lambda12")(x)++++c_outdeg'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_outdeg'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_length(x5)(st)+c_outdeg'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_outdeg'39(x)(st))(i)(xs)(st)+c_outdeg'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.outdeg'")(x)++++c_indeg'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_indeg'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.c_length(x2)(st)+c_indeg'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_indeg'39(x)(st))(i)(xs)(st)+c_indeg'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.indeg'")(x)++++c_deg'39 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_deg'39 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.c_length(x2)(st))(Curry.Module.Prelude.c_length(x5)(st))(st)+c_deg'39 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_deg'39(x)(st))(i)(xs)(st)+c_deg'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.deg'")(x)++++c_labNodes :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t0)+c_labNodes x1@(Curry.Module.GraphInductive.C_Gr x2) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labNodes'46_'35lambda13))(Curry.Module.FiniteMap.c_fmToList(x2)(st))(st)+c_labNodes (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labNodes(x)(st))(i)(xs)(st)+c_labNodes x st = Curry.RunTimeSystem.patternFail("GraphInductive.labNodes")(x)++++c_labNodes'46_'35lambda13 :: (Curry t574,Curry t573) => (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t574 Curry.Module.Prelude.C_Int)) t573 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t574 Curry.Module.Prelude.C_Int)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int t573+c_labNodes'46_'35lambda13 x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_labNodes'46_'35lambda13_case_7(x2)(x3)(st)+c_labNodes'46_'35lambda13 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labNodes'46_'35lambda13(x)(st))(i)(xs)(st)+c_labNodes'46_'35lambda13 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labNodes._#lambda13")(x)++++c_labEdges :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t1)+c_labEdges x1@(Curry.Module.GraphInductive.C_Gr x2) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labEdges'46_'35lambda14))(st))(Curry.Module.FiniteMap.c_fmToList(x2)(st))(st)+c_labEdges (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labEdges(x)(st))(i)(xs)(st)+c_labEdges x st = Curry.RunTimeSystem.patternFail("GraphInductive.labEdges")(x)++++c_labEdges'46_'35lambda14 :: (Curry t620,Curry t619) => (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t620 Curry.Module.Prelude.C_Int)) t619 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t620 Curry.Module.Prelude.C_Int)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t620)+c_labEdges'46_'35lambda14 x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_labEdges'46_'35lambda14_case_6(x2)(x3)(st)+c_labEdges'46_'35lambda14 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labEdges'46_'35lambda14(x)(st))(i)(xs)(st)+c_labEdges'46_'35lambda14 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labEdges._#lambda14")(x)++++c_labEdges'46_'35lambda14'46_'35lambda15 :: (Curry t620) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.T2 t620 Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t620+c_labEdges'46_'35lambda14'46_'35lambda15 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.T3(x1)(x4)(x3)+c_labEdges'46_'35lambda14'46_'35lambda15 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labEdges'46_'35lambda14'46_'35lambda15(x1)(x)(st))(i)(xs)(st)+c_labEdges'46_'35lambda14'46_'35lambda15 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labEdges._#lambda14._#lambda15")(x)++++c_nodes :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)+c_nodes st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labNodes))(st)++++c_edges :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int))+c_edges st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_edges'46_'35lambda16))))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labEdges))(st)++++c_edges'46_'35lambda16 :: (Curry t788) => (Curry.Module.Prelude.T3 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int t788) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int+c_edges'46_'35lambda16 x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = Curry.Module.Prelude.T2(x2)(x3)+c_edges'46_'35lambda16 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edges'46_'35lambda16(x)(st))(i)(xs)(st)+c_edges'46_'35lambda16 x st = Curry.RunTimeSystem.patternFail("GraphInductive.edges._#lambda16")(x)++++c_newNodes :: (Curry t0,Curry t1) => Curry.Module.Prelude.C_Int -> (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_newNodes x1 x2 st = let {x4 = Curry.Module.GraphInductive.c_newNodes'46_'35selFP14'35n(Curry.Module.GraphInductive.c_nodeRange(x2)(st))(st)} in Curry.Module.Prelude.c_enumFromTo(Curry.Module.Prelude.op_43(x4)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Prelude.op_43(x4)(x1)(st))(st)++++c_newNodes'46_'35selFP14'35n :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_newNodes'46_'35selFP14'35n x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_newNodes'46_'35selFP14'35n (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_newNodes'46_'35selFP14'35n(x)(st))(i)(xs)(st)+c_newNodes'46_'35selFP14'35n x st = Curry.RunTimeSystem.patternFail("GraphInductive.newNodes._#selFP14#n")(x)++++c_ufold :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t2))) -> t2 -> (Curry.Module.GraphInductive.C_Graph t1 t0) -> Curry.RunTimeSystem.State -> t2+c_ufold x1 x2 x3 st = let {x4 = Curry.Module.GraphInductive.c_matchAny(x3)(st)} in Curry.Module.GraphInductive.c_ufold_case_5(x1)(x2)(x3)(x4)(Curry.Module.GraphInductive.c_isEmpty(x3)(st))(st)++++c_ufold'46_'35selFP16'35c :: (Curry t807,Curry t806) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t807 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t806 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t807 Curry.Module.Prelude.C_Int))) (Curry.Module.GraphInductive.C_Graph t806 t807)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t807 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t806 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t807 Curry.Module.Prelude.C_Int))+c_ufold'46_'35selFP16'35c x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_ufold'46_'35selFP16'35c (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_ufold'46_'35selFP16'35c(x)(st))(i)(xs)(st)+c_ufold'46_'35selFP16'35c x st = Curry.RunTimeSystem.patternFail("GraphInductive.ufold._#selFP16#c")(x)++++c_ufold'46_'35selFP17'35g'39 :: (Curry t807,Curry t806) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t807 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t806 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t807 Curry.Module.Prelude.C_Int))) (Curry.Module.GraphInductive.C_Graph t806 t807)) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t806 t807+c_ufold'46_'35selFP17'35g'39 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_ufold'46_'35selFP17'35g'39 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_ufold'46_'35selFP17'35g'39(x)(st))(i)(xs)(st)+c_ufold'46_'35selFP17'35g'39 x st = Curry.RunTimeSystem.patternFail("GraphInductive.ufold._#selFP17#g'")(x)++++c_gmap :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t2 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t2 Curry.Module.Prelude.C_Int)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t1 t0) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t3 t2)+c_gmap x1 st = Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_ufold(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_gmap'46_'35lambda17(x1)))(Curry.Module.GraphInductive.c_empty(st)))++++c_gmap'46_'35lambda17 :: (Curry t821,Curry t822,Curry t830,Curry t829) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t821 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t822 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t821 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t830 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t829 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t830 Curry.Module.Prelude.C_Int)))) -> (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t821 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t822 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t821 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t829 t830) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t829 t830)+c_gmap'46_'35lambda17 x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.GraphInductive.op_58_38(Curry.Module.Prelude.c_apply(x1)(x2)(st)))++++c_nmap :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t2) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t1 t2)+c_nmap x1 st = Curry.Module.GraphInductive.c_gmap(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_nmap'46_'35lambda18(x1)))(st)++++c_nmap'46_'35lambda18 :: (Curry t841,Curry t844,Curry t837) => (Curry.Module.Prelude.Prim (t841 -> Curry.RunTimeSystem.State -> t844)) -> (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t837 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t841 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t837 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t837 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t844 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t837 Curry.Module.Prelude.C_Int))+c_nmap'46_'35lambda18 x1 x2@(Curry.Module.Prelude.T4 x3 x4 x5 x6) st = Curry.Module.Prelude.T4(x3)(x4)(Curry.Module.Prelude.c_apply(x1)(x5)(st))(x6)+c_nmap'46_'35lambda18 x1 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nmap'46_'35lambda18(x1)(x)(st))(i)(xs)(st)+c_nmap'46_'35lambda18 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.nmap._#lambda18")(x)++++c_emap :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t2 t0) -> Curry.RunTimeSystem.State -> Curry.Module.GraphInductive.C_Graph t2 t1)+c_emap x1 st = Curry.Module.GraphInductive.c_gmap(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_emap'46_'35lambda20(x1)))(st)++++c_emap'46map1'46213 :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t2)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 t2))+c_emap'46map1'46213 x1 st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_emap'46map1'46213'46_'35lambda19(x1))))++++c_emap'46map1'46213'46_'35lambda19 :: (Curry t853,Curry t856,Curry t854) => (Curry.Module.Prelude.Prim (t853 -> Curry.RunTimeSystem.State -> t856)) -> (Curry.Module.Prelude.T2 t853 t854) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 t856 t854+c_emap'46map1'46213'46_'35lambda19 x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.T2(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)+c_emap'46map1'46213'46_'35lambda19 x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_emap'46map1'46213'46_'35lambda19(x1)(x)(st))(i)(xs)(st)+c_emap'46map1'46213'46_'35lambda19 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.emap.map1.213._#lambda19")(x)++++c_emap'46_'35lambda20 :: (Curry t865,Curry t866,Curry t863) => (Curry.Module.Prelude.Prim (t865 -> Curry.RunTimeSystem.State -> t866)) -> (Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t865 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t863 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t865 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T4 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t866 Curry.Module.Prelude.C_Int)) Curry.Module.Prelude.C_Int t863 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t866 Curry.Module.Prelude.C_Int))+c_emap'46_'35lambda20 x1 x2@(Curry.Module.Prelude.T4 x3 x4 x5 x6) st = Curry.Module.Prelude.T4(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_emap'46map1'46213(x1)(st))(x3)(st))(x4)(x5)(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.c_emap'46map1'46213(x1)(st))(x6)(st))+c_emap'46_'35lambda20 x1 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_emap'46_'35lambda20(x1)(x)(st))(i)(xs)(st)+c_emap'46_'35lambda20 x1 x st = Curry.RunTimeSystem.patternFail("GraphInductive.emap._#lambda20")(x)++++c_labUEdges :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 t0 t1 Curry.Module.Prelude.T0))+c_labUEdges st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labUEdges'46_'35lambda21)))++++c_labUEdges'46_'35lambda21 :: (Curry t249,Curry t250) => (Curry.Module.Prelude.T2 t249 t250) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 t249 t250 Curry.Module.Prelude.T0+c_labUEdges'46_'35lambda21 x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.Prelude.T3(x2)(x3)(Curry.Module.Prelude.T0)+c_labUEdges'46_'35lambda21 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labUEdges'46_'35lambda21(x)(st))(i)(xs)(st)+c_labUEdges'46_'35lambda21 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labUEdges._#lambda21")(x)++++c_labUNodes :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.T0))+c_labUNodes st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labUNodes'46_'35lambda22)))++++c_labUNodes'46_'35lambda22 :: (Curry t254) => t254 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 t254 Curry.Module.Prelude.T0+c_labUNodes'46_'35lambda22 x1 st = Curry.Module.Prelude.T2(x1)(Curry.Module.Prelude.T0)++++c_showGraph :: (Curry t0,Curry t1) => (Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showGraph x1@(Curry.Module.GraphInductive.C_Gr x2) st = Curry.Module.Prelude.c_unlines(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_showNode))(Curry.Module.FiniteMap.c_fmToList(x2)(st))(st))(st)+c_showGraph (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_showGraph(x)(st))(i)(xs)(st)+c_showGraph x st = Curry.RunTimeSystem.patternFail("GraphInductive.showGraph")(x)++++c_showNode :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.T3 t1 t2 t3)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showNode x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.GraphInductive.c_showNode_case_3(x2)(x3)(st)+c_showNode (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_showNode(x)(st))(i)(xs)(st)+c_showNode x st = Curry.RunTimeSystem.patternFail("GraphInductive.showNode")(x)++++op_46_58 :: (Curry t0,Curry t1,Curry t2,Curry t3) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> t0))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t3 -> Curry.RunTimeSystem.State -> t1))))+op_46_58 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_46))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_46))(st)++++c_fst4 :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.T4 t0 t1 t2 t3) -> Curry.RunTimeSystem.State -> t0+c_fst4 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = x2+c_fst4 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_fst4(x)(st))(i)(xs)(st)+c_fst4 x st = Curry.RunTimeSystem.patternFail("GraphInductive.fst4")(x)++++c_fth4 :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.T4 t0 t1 t2 t3) -> Curry.RunTimeSystem.State -> t3+c_fth4 x1@(Curry.Module.Prelude.T4 x2 x3 x4 x5) st = x5+c_fth4 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_fth4(x)(st))(i)(xs)(st)+c_fth4 x st = Curry.RunTimeSystem.patternFail("GraphInductive.fth4")(x)++++c_flip2 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T2 t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 t1 t0+c_flip2 x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.Prelude.T2(x3)(x2)+c_flip2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_flip2(x)(st))(i)(xs)(st)+c_flip2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.flip2")(x)++++c_context1 :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)))+c_context1 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_fst4))(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_context))(st)++++c_context4 :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.GraphInductive.C_Graph t0 t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 Curry.Module.Prelude.C_Int)))+c_context4 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.GraphInductive.op_46_58(st))(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_fth4))(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_context))(st)++++c_addSucc :: (Curry t0,Curry t1,Curry t2,Curry t3) => t0 -> t1 -> (Curry.Module.Prelude.T3 t2 t3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 t0))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 t2 t3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 t0))+c_addSucc x1 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.T3(x4)(x5)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x2)(x1))(x6))+c_addSucc x1 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_addSucc(x1)(x2)(x)(st))(i)(xs)(st)+c_addSucc x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.addSucc")(x)++++c_addPred :: (Curry t0,Curry t1,Curry t2,Curry t3) => t0 -> t1 -> (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 t0)) t2 t3) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t1 t0)) t2 t3+c_addPred x1 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.T3((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x2)(x1))(x4))(x5)(x6)+c_addPred x1 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_addPred(x1)(x2)(x)(st))(i)(xs)(st)+c_addPred x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.addPred")(x)++++c_clearSucc :: (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4) => t0 -> t1 -> (Curry.Module.Prelude.T3 t2 t3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t4 t0))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 t2 t3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t4 t0))+c_clearSucc x1 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.T3(x4)(x5)(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(st))(x6)(st))+c_clearSucc x1 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_clearSucc(x1)(x2)(x)(st))(i)(xs)(st)+c_clearSucc x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.clearSucc")(x)++++c_clearPred :: (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4) => t0 -> t1 -> (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t2 t0)) t3 t4) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t2 t0)) t3 t4+c_clearPred x1 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.T3(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(st))(x4)(st))(x5)(x6)+c_clearPred x1 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_clearPred(x1)(x2)(x)(st))(i)(xs)(st)+c_clearPred x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.clearPred")(x)++++c_updAdj :: (Curry t0,Curry t1) => (Curry.Module.FiniteMap.C_FM Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)))) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int))))) -> Curry.RunTimeSystem.State -> Curry.Module.FiniteMap.C_FM Curry.Module.Prelude.C_Int (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)) t1 (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 Curry.Module.Prelude.C_Int)))+c_updAdj x1 x2@Curry.Module.Prelude.List x3 st = x1+c_updAdj x1 x2@((Curry.Module.Prelude.:<) x4 x5) x3 st = Curry.Module.GraphInductive.c_updAdj_case_2(x1)(x3)(x5)(x4)(st)+c_updAdj x1 (Curry.Module.Prelude.ListOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_updAdj(x1)(x)(x3)(st))(i)(xs)(st)+c_updAdj x1 x x3 st = Curry.RunTimeSystem.patternFail("GraphInductive.updAdj")(x)++++c_sortBy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_sortBy x1 st = Curry.Module.Prelude.pf(Curry.Module.Sort.c_mergeSort(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_sortBy'46_'35lambda23(x1))))++++c_sortBy'46_'35lambda23 :: (Curry t587) => (Curry.Module.Prelude.Prim (t587 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t587 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering))) -> t587 -> t587 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_sortBy'46_'35lambda23 x1 x2 x3 st = let {x4 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(x3)(st)} in Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.Prelude.C_EQ)(st))(Curry.Module.Prelude.op_61_61(x4)(Curry.Module.Prelude.C_LT)(st))(st)++++c_updAdj_case_2 x1 x3 x5 x4@(Curry.Module.Prelude.T2 x6 x7) st = Curry.Module.GraphInductive.c_updAdj_case_1(x1)(x3)(x5)(x6)(x7)(Curry.Module.FiniteMap.c_elemFM(x7)(x1)(st))(st)+c_updAdj_case_2 x1 x3 x5 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_updAdj_case_2(x1)(x3)(x5)(x)(st))(i)(xs)(st)+c_updAdj_case_2 x1 x3 x5 x st = Curry.RunTimeSystem.patternFail("GraphInductive.updAdj_case_2")(x)++++c_updAdj_case_1 x1 x3 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.GraphInductive.c_updAdj(Curry.Module.FiniteMap.c_updFM(x1)(x7)(Curry.Module.Prelude.c_apply(x3)(x6)(st))(st))(x5)(x3)(st)+c_updAdj_case_1 x1 x3 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_updAdj_case_0(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_updAdj_case_1 x1 x3 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_updAdj_case_1(x1)(x3)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_updAdj_case_1 x1 x3 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.updAdj_case_1")(x)++++c_updAdj_case_0 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))))))))))))(Curry.Module.Prelude.c_show(x7)(st))(st))(st)+c_updAdj_case_0 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_updAdj_case_0(x7)(x)(st))(i)(xs)(st)+c_updAdj_case_0 x7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.updAdj_case_0")(x)++++c_showNode_case_3 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x2)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x5)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('>'))(Curry.Module.Prelude.List)))(Curry.Module.Prelude.c_show(x6)(st))(st))(st))(st))(st)+c_showNode_case_3 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_showNode_case_3(x2)(x)(st))(i)(xs)(st)+c_showNode_case_3 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.showNode_case_3")(x)++++c_ufold_case_5 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = x2+c_ufold_case_5 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_ufold_case_4(x1)(x2)(x4)(Curry.Module.Prelude.c_otherwise(st))(st)+c_ufold_case_5 x1 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_ufold_case_5(x1)(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_ufold_case_5 x1 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("GraphInductive.ufold_case_5")(x)++++c_ufold_case_4 x1 x2 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(Curry.Module.GraphInductive.c_ufold'46_'35selFP16'35c(x4)(st))(st))(Curry.Module.GraphInductive.c_ufold(x1)(x2)(Curry.Module.GraphInductive.c_ufold'46_'35selFP17'35g'39(x4)(st))(st))(st)+c_ufold_case_4 x1 x2 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_ufold_case_4(x1)(x2)(x4)(x)(st))(i)(xs)(st)+c_ufold_case_4 x1 x2 x4 x st = Curry.RunTimeSystem.patternFail("GraphInductive.ufold_case_4")(x)++++c_labEdges'46_'35lambda14_case_6 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.GraphInductive.c_labEdges'46_'35lambda14'46_'35lambda15(x2)))(x6)(st)+c_labEdges'46_'35lambda14_case_6 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labEdges'46_'35lambda14_case_6(x2)(x)(st))(i)(xs)(st)+c_labEdges'46_'35lambda14_case_6 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labEdges._#lambda14_case_6")(x)++++c_labNodes'46_'35lambda13_case_7 x2 x3@(Curry.Module.Prelude.T3 x4 x5 x6) st = Curry.Module.Prelude.T2(x2)(x5)+c_labNodes'46_'35lambda13_case_7 x2 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_labNodes'46_'35lambda13_case_7(x2)(x)(st))(i)(xs)(st)+c_labNodes'46_'35lambda13_case_7 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.labNodes._#lambda13_case_7")(x)++++c_edgeComp_case_10 x1 x2 x4 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_EQ+c_edgeComp_case_10 x1 x2 x4 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_edgeComp_case_9(x1)(x2)(x4)(x7)(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_60(x4)(x7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x4)(x7)(st))(Curry.Module.Prelude.op_60(Curry.Module.GraphInductive.c_edgeComp'46_'35selFP12'35w(x1)(st))(Curry.Module.GraphInductive.c_edgeComp'46_'35selFP10'35y(x2)(st))(st))(st))(st))(st)+c_edgeComp_case_10 x1 x2 x4 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp_case_10(x1)(x2)(x4)(x7)(x)(st))(i)(xs)(st)+c_edgeComp_case_10 x1 x2 x4 x7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp_case_10")(x)++++c_edgeComp_case_9 x1 x2 x4 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_LT+c_edgeComp_case_9 x1 x2 x4 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_edgeComp_case_8(Curry.Module.Prelude.c_otherwise(st))(st)+c_edgeComp_case_9 x1 x2 x4 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp_case_9(x1)(x2)(x4)(x7)(x)(st))(i)(xs)(st)+c_edgeComp_case_9 x1 x2 x4 x7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp_case_9")(x)++++c_edgeComp_case_8 x1@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_GT+c_edgeComp_case_8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_edgeComp_case_8(x)(st))(i)(xs)(st)+c_edgeComp_case_8 x st = Curry.RunTimeSystem.patternFail("GraphInductive.edgeComp_case_8")(x)++++c_nodeComp_case_13 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_EQ+c_nodeComp_case_13 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_nodeComp_case_12(x1)(x2)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.c_fst(x1)(st))(Curry.Module.Prelude.c_fst(x2)(st))(st))(st)+c_nodeComp_case_13 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nodeComp_case_13(x1)(x2)(x)(st))(i)(xs)(st)+c_nodeComp_case_13 x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.nodeComp_case_13")(x)++++c_nodeComp_case_12 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_LT+c_nodeComp_case_12 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_nodeComp_case_11(Curry.Module.Prelude.c_otherwise(st))(st)+c_nodeComp_case_12 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nodeComp_case_12(x1)(x2)(x)(st))(i)(xs)(st)+c_nodeComp_case_12 x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.nodeComp_case_12")(x)++++c_nodeComp_case_11 x1@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_GT+c_nodeComp_case_11 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nodeComp_case_11(x)(st))(i)(xs)(st)+c_nodeComp_case_11 x st = Curry.RunTimeSystem.patternFail("GraphInductive.nodeComp_case_11")(x)++++c_context_case_15 x1 x2 (Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.GraphInductive.c_context_case_14(x2)(x3)(st)+c_context_case_15 x1 x2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_context_case_15(x1)(x2)(x)(st))(i)(xs)(st)+c_context_case_15 x1 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.context_case_15")(x)++++c_context_case_14 x2 x3@Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))))))))(Curry.Module.Prelude.c_show(x2)(st))(st))(st)+c_context_case_14 x2 x3@(Curry.Module.Prelude.C_Just x5) st = x5+c_context_case_14 x2 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_context_case_14(x2)(x)(st))(i)(xs)(st)+c_context_case_14 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.context_case_14")(x)++++c_nodeRange_case_17 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.C_Zero)+c_nodeRange_case_17 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_nodeRange_case_16(x2)(x3)(Curry.Module.Prelude.c_otherwise(st))(st)+c_nodeRange_case_17 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nodeRange_case_17(x2)(x3)(x)(st))(i)(xs)(st)+c_nodeRange_case_17 x2 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.nodeRange_case_17")(x)++++c_nodeRange_case_16 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(Curry.Module.Prelude.c_apply(x3)(Curry.Module.Prelude.c_apply(Curry.Module.FiniteMap.c_minFM(st))(x2)(st))(st))(Curry.Module.Prelude.c_apply(x3)(Curry.Module.Prelude.c_apply(Curry.Module.FiniteMap.c_maxFM(st))(x2)(st))(st))+c_nodeRange_case_16 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_nodeRange_case_16(x2)(x3)(x)(st))(i)(xs)(st)+c_nodeRange_case_16 x2 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.nodeRange_case_16")(x)++++c_match'46_'35lambda5_case_19 x1 x3 x4@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.GraphInductive.c_match'46_'35lambda5_case_18(x1)(x3)(x6)(st)+c_match'46_'35lambda5_case_19 x1 x3 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_match'46_'35lambda5_case_19(x1)(x3)(x)(st))(i)(xs)(st)+c_match'46_'35lambda5_case_19 x1 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.match._#lambda5_case_19")(x)++++c_match'46_'35lambda5_case_18 x1 x3 x6@(Curry.Module.Prelude.T3 x7 x8 x9) st = let {x11 = Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(st))(x7)(st)} in Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Just(Curry.Module.Prelude.T4(x11)(x1)(x8)(x9)))(Curry.Module.GraphInductive.C_Gr(Curry.Module.GraphInductive.c_updAdj(Curry.Module.GraphInductive.c_updAdj(x3)(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(st))(x9)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_clearPred(x1)))(st))(x11)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_clearSucc(x1)))(st)))+c_match'46_'35lambda5_case_18 x1 x3 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_match'46_'35lambda5_case_18(x1)(x3)(x)(st))(i)(xs)(st)+c_match'46_'35lambda5_case_18 x1 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.match._#lambda5_case_18")(x)++++c_delEdge_case_22 x2 x3 x4 (Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.GraphInductive.c_delEdge_case_21(x2)(x4)(x6)(x5)(st)+c_delEdge_case_22 x2 x3 x4 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_delEdge_case_22(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_delEdge_case_22 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("GraphInductive.delEdge_case_22")(x)++++c_delEdge_case_21 x2 x4 x6 x5@Curry.Module.Prelude.C_Nothing st = x2+c_delEdge_case_21 x2 x4 x6 x5@(Curry.Module.Prelude.C_Just x7) st = Curry.Module.GraphInductive.c_delEdge_case_20(x4)(x6)(x7)(st)+c_delEdge_case_21 x2 x4 x6 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_delEdge_case_21(x2)(x4)(x6)(x)(st))(i)(xs)(st)+c_delEdge_case_21 x2 x4 x6 x st = Curry.RunTimeSystem.patternFail("GraphInductive.delEdge_case_21")(x)++++c_delEdge_case_20 x4 x6 x7@(Curry.Module.Prelude.T4 x8 x9 x10 x11) st = Curry.Module.GraphInductive.op_58_38(Curry.Module.Prelude.T4(x8)(x9)(x10)(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x4)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(st))(x11)(st)))(x6)(st)+c_delEdge_case_20 x4 x6 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_delEdge_case_20(x4)(x6)(x)(st))(i)(xs)(st)+c_delEdge_case_20 x4 x6 x st = Curry.RunTimeSystem.patternFail("GraphInductive.delEdge_case_20")(x)++++c_insEdge'46_'35selFP6'35g'39_case_24 x3 x2@(Curry.Module.Prelude.C_Just x4) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP6'35g'39_case_23(x3)(x4)(st)+c_insEdge'46_'35selFP6'35g'39_case_24 x3 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP6'35g'39_case_24(x3)(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP6'35g'39_case_24 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP6#g'_case_24")(x)++++c_insEdge'46_'35selFP6'35g'39_case_23 x3 x4@(Curry.Module.Prelude.T4 x5 x6 x7 x8) st = x3+c_insEdge'46_'35selFP6'35g'39_case_23 x3 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP6'35g'39_case_23(x3)(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP6'35g'39_case_23 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP6#g'_case_23")(x)++++c_insEdge'46_'35selFP5'35su_case_26 x2@(Curry.Module.Prelude.C_Just x4) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP5'35su_case_25(x4)(st)+c_insEdge'46_'35selFP5'35su_case_26 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP5'35su_case_26(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP5'35su_case_26 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP5#su_case_26")(x)++++c_insEdge'46_'35selFP5'35su_case_25 x4@(Curry.Module.Prelude.T4 x5 x6 x7 x8) st = x8+c_insEdge'46_'35selFP5'35su_case_25 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP5'35su_case_25(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP5'35su_case_25 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP5#su_case_25")(x)++++c_insEdge'46_'35selFP4'35la_case_28 x2@(Curry.Module.Prelude.C_Just x4) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP4'35la_case_27(x4)(st)+c_insEdge'46_'35selFP4'35la_case_28 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP4'35la_case_28(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP4'35la_case_28 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP4#la_case_28")(x)++++c_insEdge'46_'35selFP4'35la_case_27 x4@(Curry.Module.Prelude.T4 x5 x6 x7 x8) st = x7+c_insEdge'46_'35selFP4'35la_case_27 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP4'35la_case_27(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP4'35la_case_27 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP4#la_case_27")(x)++++c_insEdge'46_'35selFP3'35pr_case_30 x2@(Curry.Module.Prelude.C_Just x4) st = Curry.Module.GraphInductive.c_insEdge'46_'35selFP3'35pr_case_29(x4)(st)+c_insEdge'46_'35selFP3'35pr_case_30 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP3'35pr_case_30(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP3'35pr_case_30 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP3#pr_case_30")(x)++++c_insEdge'46_'35selFP3'35pr_case_29 x4@(Curry.Module.Prelude.T4 x5 x6 x7 x8) st = x5+c_insEdge'46_'35selFP3'35pr_case_29 (Curry.Module.Prelude.T4Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_insEdge'46_'35selFP3'35pr_case_29(x)(st))(i)(xs)(st)+c_insEdge'46_'35selFP3'35pr_case_29 x st = Curry.RunTimeSystem.patternFail("GraphInductive.insEdge._#selFP3#pr_case_29")(x)++++c_matchAny_case_35 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('G'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))(st)+c_matchAny_case_35 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_matchAny_case_34(x2)(Curry.Module.Prelude.c_otherwise(st))(st)+c_matchAny_case_35 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_matchAny_case_35(x2)(x)(st))(i)(xs)(st)+c_matchAny_case_35 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.matchAny_case_35")(x)++++c_matchAny_case_34 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.GraphInductive.c_matchAny_case_33(x2)(Curry.Module.Prelude.c_head(Curry.Module.FiniteMap.c_fmToListPreOrder(x2)(st))(st))(st)+c_matchAny_case_34 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_matchAny_case_34(x2)(x)(st))(i)(xs)(st)+c_matchAny_case_34 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.matchAny_case_34")(x)++++c_matchAny_case_33 x2 (Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.GraphInductive.c_matchAny_case_32(x2)(x3)(Curry.Module.GraphInductive.c_match(x3)(Curry.Module.GraphInductive.C_Gr(x2))(st))(st)+c_matchAny_case_33 x2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_matchAny_case_33(x2)(x)(st))(i)(xs)(st)+c_matchAny_case_33 x2 x st = Curry.RunTimeSystem.patternFail("GraphInductive.matchAny_case_33")(x)++++c_matchAny_case_32 x2 x3 x4@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.GraphInductive.c_matchAny_case_31(x6)(x5)(st)+c_matchAny_case_32 x2 x3 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_matchAny_case_32(x2)(x3)(x)(st))(i)(xs)(st)+c_matchAny_case_32 x2 x3 x st = Curry.RunTimeSystem.patternFail("GraphInductive.matchAny_case_32")(x)++++c_matchAny_case_31 x6 x5@(Curry.Module.Prelude.C_Just x7) st = Curry.Module.Prelude.T2(x7)(x6)+c_matchAny_case_31 x6 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_matchAny_case_31(x6)(x)(st))(i)(xs)(st)+c_matchAny_case_31 x6 x st = Curry.RunTimeSystem.patternFail("GraphInductive.matchAny_case_31")(x)++++c_'58'38_case_38 x3 x4 x5 x6 x2@(Curry.Module.GraphInductive.C_Gr x7) st = Curry.Module.GraphInductive.c_'58'38_case_37(x3)(x4)(x5)(x6)(x7)(Curry.Module.FiniteMap.c_elemFM(x4)(x7)(st))(st)+c_'58'38_case_38 x3 x4 x5 x6 (Curry.Module.GraphInductive.C_GraphOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_'58'38_case_38(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_'58'38_case_38 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("GraphInductive.:&_case_38")(x)++++c_'58'38_case_37 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('E'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))))))))))))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x4)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))(Curry.Module.Prelude.c_show(x5)(st))(st))(st))(st))(st)+c_'58'38_case_37 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.GraphInductive.c_'58'38_case_36(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_'58'38_case_37 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_'58'38_case_37(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_'58'38_case_37 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.:&_case_37")(x)++++c_'58'38_case_36 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.GraphInductive.C_Gr(Curry.Module.GraphInductive.c_updAdj(Curry.Module.GraphInductive.c_updAdj(Curry.Module.FiniteMap.c_addToFM(x7)(x4)(Curry.Module.Prelude.T3(x3)(x5)(x6))(st))(x3)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_addSucc(x4)))(st))(x6)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.GraphInductive.c_addPred(x4)))(st))+c_'58'38_case_36 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.GraphInductive.c_'58'38_case_36(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_'58'38_case_36 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("GraphInductive.:&_case_36")(x)++
+ dist/build/Curry/Module/IO.hs view
@@ -0,0 +1,490 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.IO (module Curry.Module.IO) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++import System.IO+import qualified System.IO as SI+import Control.Concurrent+import qualified Control.Exception as CE++-- somehow using an either type did not get the curry class for prim through.+data IOHandle = One Handle | Two Handle Handle deriving (Show,Eq)+type C_Handle = Prim IOHandle++inputHandle, outputHandle :: IOHandle -> Handle+inputHandle  (One h)   = h+inputHandle  (Two h _) = h+outputHandle (One h)   = h+outputHandle (Two _ h) = h+++instance Read IOHandle where+  readsPrec = error "reading Handle"++instance Generate IOHandle where+  genFree    = error "free variable of type IO-Handle"+  maxArity _ = error "free variable of type IO-Handle"+++instance ConvertCH C_IOMode SI.IOMode where+  toCurry SI.ReadMode = C_ReadMode+  toCurry SI.WriteMode = C_WriteMode+  toCurry SI.AppendMode = C_AppendMode++  fromCurry C_ReadMode = SI.ReadMode+  fromCurry C_WriteMode = SI.WriteMode+  fromCurry C_AppendMode = SI.AppendMode++instance ConvertCH C_SeekMode SI.SeekMode where+  toCurry SI.AbsoluteSeek = C_AbsoluteSeek+  toCurry SI.RelativeSeek = C_RelativeSeek+  toCurry SI.SeekFromEnd  = C_SeekFromEnd++  fromCurry C_AbsoluteSeek = SI.AbsoluteSeek+  fromCurry C_RelativeSeek = SI.RelativeSeek+  fromCurry C_SeekFromEnd  = SI.SeekFromEnd++stdin :: Result C_Handle+stdin _ = PrimValue (One SI.stdin)++stdout :: Result C_Handle+stdout _ = PrimValue (One SI.stdout)++stderr :: Result C_Handle+stderr _ = PrimValue (One SI.stderr)++prim_openFile :: List C_Char -> C_IOMode -> Result (C_IO C_Handle)+prim_openFile = ioFunc2 (\ s m -> do+  h <- SI.openFile s m+  Prelude.return (One h))++prim_hClose :: C_Handle -> Result (C_IO T0)+prim_hClose = ioFunc1 (\ eh -> case eh of+  One h     -> SI.hClose h+  Two h1 h2 -> SI.hClose h1 Prelude.>> SI.hClose h2)++prim_hFlush :: C_Handle -> Result (C_IO T0)+prim_hFlush = ioFunc1 (SI.hFlush . outputHandle)++prim_hIsEOF :: C_Handle -> Result (C_IO C_Bool)+prim_hIsEOF = ioFunc1 (SI.hIsEOF . inputHandle)++prim_hSeek :: C_Handle -> C_SeekMode -> C_Int -> Result (C_IO T0)+prim_hSeek = ioFunc3 (\ h -> SI.hSeek (inputHandle h))++prim_hWaitForInput ::  C_Handle -> C_Int -> Result (C_IO C_Bool)+prim_hWaitForInput = ioFunc2 (\ h -> myhWaitForInput (inputHandle h))++myhWaitForInput :: SI.Handle -> Int -> IO Bool+myhWaitForInput h i =+  if i Prelude.< 0 +  then SI.hIsEOF h Prelude.>>= Prelude.return . Prelude.not+  else SI.hWaitForInput h i ++selectHandle :: [IOHandle] -> Int -> IO Int+selectHandle handles t = do+  mvar <- newEmptyMVar+  threads <- mapM (\ (i,h) -> forkIO (waitOnHandle (inputHandle h) i t mvar)) +                  (zip [0..] handles)+  inspectRes (length handles) mvar threads++inspectRes :: Int -> MVar (Maybe Int) -> [ThreadId] ->  IO Int+inspectRes 0 _    _       = Prelude.return (-1)+inspectRes n mvar threads = do+  res <- readMVar mvar+  case res of +    Nothing -> inspectRes (n-1) mvar threads+    Just v  -> mapM_ killThread threads Prelude.>> Prelude.return v++waitOnHandle :: SI.Handle -> Int -> Int -> MVar (Maybe Int) -> IO ()+waitOnHandle h v t mvar = do+   	    ready <- myhWaitForInput h t+  	    putMVar mvar (if ready then Just v else Nothing)++prim_hWaitForInputs :: List C_Handle -> C_Int -> Result (C_IO C_Int)+prim_hWaitForInputs  = ioFunc2 selectHandle++prim_hGetChar :: C_Handle -> Result (C_IO C_Char)+prim_hGetChar = ioFunc1 (SI.hGetChar . inputHandle)++prim_hPutChar :: C_Handle -> C_Char -> Result (C_IO T0)+prim_hPutChar = ioFunc2 (SI.hPutChar . outputHandle)++prim_hIsReadable :: C_Handle -> Result (C_IO C_Bool)+prim_hIsReadable = ioFunc1 (SI.hIsReadable . inputHandle)++prim_hIsWritable :: C_Handle -> Result (C_IO C_Bool)+prim_hIsWritable = ioFunc1 (SI.hIsWritable . outputHandle)+++-- end included++data C_IOMode = C_ReadMode+  | C_WriteMode+  | C_AppendMode+  | C_IOModeFail Curry.RunTimeSystem.C_Exceptions+  | C_IOModeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.IO.C_IOMode)++data C_SeekMode = C_AbsoluteSeek+  | C_RelativeSeek+  | C_SeekFromEnd+  | C_SeekModeFail Curry.RunTimeSystem.C_Exceptions+  | C_SeekModeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.IO.C_SeekMode)++instance BaseCurry Curry.Module.IO.C_IOMode where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.IO.C_IOModeOr(Curry.RunTimeSystem.mkRef(r)(0)(i))([Curry.Module.IO.C_ReadMode,Curry.Module.IO.C_WriteMode,Curry.Module.IO.C_AppendMode]))(0)++  failed  = Curry.Module.IO.C_IOModeFail++  branching  = Curry.Module.IO.C_IOModeOr++  consKind (Curry.Module.IO.C_IOModeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.IO.C_IOModeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.IO.C_IOModeFail x) = x++  orRef (Curry.Module.IO.C_IOModeOr x _) = x++  branches (Curry.Module.IO.C_IOModeOr _ x) = x++++++instance BaseCurry Curry.Module.IO.C_SeekMode where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.IO.C_SeekModeOr(Curry.RunTimeSystem.mkRef(r)(0)(i))([Curry.Module.IO.C_AbsoluteSeek,Curry.Module.IO.C_RelativeSeek,Curry.Module.IO.C_SeekFromEnd]))(0)++  failed  = Curry.Module.IO.C_SeekModeFail++  branching  = Curry.Module.IO.C_SeekModeOr++  consKind (Curry.Module.IO.C_SeekModeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.IO.C_SeekModeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.IO.C_SeekModeFail x) = x++  orRef (Curry.Module.IO.C_SeekModeOr x _) = x++  branches (Curry.Module.IO.C_SeekModeOr _ x) = x++++++instance Curry Curry.Module.IO.C_IOMode where+  strEq Curry.Module.IO.C_ReadMode Curry.Module.IO.C_ReadMode st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.IO.C_WriteMode Curry.Module.IO.C_WriteMode st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.IO.C_AppendMode Curry.Module.IO.C_AppendMode st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.IO.C_ReadMode Curry.Module.IO.C_ReadMode st = Curry.Module.Prelude.C_True+  eq Curry.Module.IO.C_WriteMode Curry.Module.IO.C_WriteMode st = Curry.Module.Prelude.C_True+  eq Curry.Module.IO.C_AppendMode Curry.Module.IO.C_AppendMode st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.IO.C_ReadMode st = Curry.Module.IO.C_ReadMode+  propagate f Curry.Module.IO.C_WriteMode st = Curry.Module.IO.C_WriteMode+  propagate f Curry.Module.IO.C_AppendMode st = Curry.Module.IO.C_AppendMode++  foldCurry f c Curry.Module.IO.C_ReadMode st = c+  foldCurry f c Curry.Module.IO.C_WriteMode st = c+  foldCurry f c Curry.Module.IO.C_AppendMode st = c++  typeName _ = "IOMode"++  showQ _ Curry.Module.IO.C_ReadMode = Prelude.showString("IO.ReadMode")+  showQ _ Curry.Module.IO.C_WriteMode = Prelude.showString("IO.WriteMode")+  showQ _ Curry.Module.IO.C_AppendMode = Prelude.showString("IO.AppendMode")+  showQ _ (Curry.Module.IO.C_IOModeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.IO.C_SeekMode where+  strEq Curry.Module.IO.C_AbsoluteSeek Curry.Module.IO.C_AbsoluteSeek st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.IO.C_RelativeSeek Curry.Module.IO.C_RelativeSeek st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.IO.C_SeekFromEnd Curry.Module.IO.C_SeekFromEnd st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.IO.C_AbsoluteSeek Curry.Module.IO.C_AbsoluteSeek st = Curry.Module.Prelude.C_True+  eq Curry.Module.IO.C_RelativeSeek Curry.Module.IO.C_RelativeSeek st = Curry.Module.Prelude.C_True+  eq Curry.Module.IO.C_SeekFromEnd Curry.Module.IO.C_SeekFromEnd st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.IO.C_AbsoluteSeek st = Curry.Module.IO.C_AbsoluteSeek+  propagate f Curry.Module.IO.C_RelativeSeek st = Curry.Module.IO.C_RelativeSeek+  propagate f Curry.Module.IO.C_SeekFromEnd st = Curry.Module.IO.C_SeekFromEnd++  foldCurry f c Curry.Module.IO.C_AbsoluteSeek st = c+  foldCurry f c Curry.Module.IO.C_RelativeSeek st = c+  foldCurry f c Curry.Module.IO.C_SeekFromEnd st = c++  typeName _ = "SeekMode"++  showQ _ Curry.Module.IO.C_AbsoluteSeek = Prelude.showString("IO.AbsoluteSeek")+  showQ _ Curry.Module.IO.C_RelativeSeek = Prelude.showString("IO.RelativeSeek")+  showQ _ Curry.Module.IO.C_SeekFromEnd = Prelude.showString("IO.SeekFromEnd")+  showQ _ (Curry.Module.IO.C_SeekModeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.IO.C_IOMode where+  showsPrec _ Curry.Module.IO.C_ReadMode = Prelude.showString("ReadMode")+  showsPrec _ Curry.Module.IO.C_WriteMode = Prelude.showString("WriteMode")+  showsPrec _ Curry.Module.IO.C_AppendMode = Prelude.showString("AppendMode")+  showsPrec _ (Curry.Module.IO.C_IOModeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.IO.C_SeekMode where+  showsPrec _ Curry.Module.IO.C_AbsoluteSeek = Prelude.showString("AbsoluteSeek")+  showsPrec _ Curry.Module.IO.C_RelativeSeek = Prelude.showString("RelativeSeek")+  showsPrec _ Curry.Module.IO.C_SeekFromEnd = Prelude.showString("SeekFromEnd")+  showsPrec _ (Curry.Module.IO.C_SeekModeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Read Curry.Module.IO.C_IOMode where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.IO.C_ReadMode)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("IO")("ReadMode")(r)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.IO.C_WriteMode)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("IO")("WriteMode")(r)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.IO.C_AppendMode)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("IO")("AppendMode")(r)])(r)))++++++instance Read Curry.Module.IO.C_SeekMode where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.IO.C_AbsoluteSeek)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("IO")("AbsoluteSeek")(r)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.IO.C_RelativeSeek)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("IO")("RelativeSeek")(r)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.IO.C_SeekFromEnd)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("IO")("SeekFromEnd")(r)])(r)))++++++c_openFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.IO.C_IOMode -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.IO.C_Handle+c_openFile x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.IO.c_prim_openFile))(x1)(st))(x2)(st)++++c_hClose :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_hClose x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IO.c_prim_hClose))(x1)(st)++++c_hFlush :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_hFlush x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IO.c_prim_hFlush))(x1)(st)++++c_hIsEOF :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_hIsEOF x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IO.c_prim_hIsEOF))(x1)(st)++++c_isEOF :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_isEOF st = Curry.Module.IO.c_hIsEOF(Curry.Module.IO.c_stdin(st))(st)++++c_hSeek :: Curry.Module.IO.C_Handle -> Curry.Module.IO.C_SeekMode -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_hSeek x1 x2 x3 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.IO.c_prim_hSeek))(x1)(st))(x2)(st))(x3)(st)++++c_hWaitForInput :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_hWaitForInput x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.IO.c_prim_hWaitForInput))(x1)(st))(x2)(st)++++c_hWaitForInputs :: (Curry.Module.Prelude.List Curry.Module.IO.C_Handle) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_hWaitForInputs x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.IO.c_prim_hWaitForInputs))(x1)(st))(x2)(st)++++c_hReady :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_hReady x1 st = Curry.Module.IO.c_hWaitForInput(x1)(Curry.Module.Prelude.C_Zero)(st)++++c_hGetChar :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Char+c_hGetChar x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IO.c_prim_hGetChar))(x1)(st)++++c_hGetLine :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetLine x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.IO.c_hGetChar(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.IO.c_hGetLine'46_'35lambda2(x1)))(st)++++c_hGetLine'46_'35lambda2 :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetLine'46_'35lambda2 x1 x2 st = Curry.Module.IO.c_hGetLine'46_'35lambda2_case_0(x1)(x2)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Char('\n'))(st))(st)++++c_hGetLine'46_'35lambda2'46_'35lambda3 :: Curry.Module.Prelude.C_Char -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetLine'46_'35lambda2'46_'35lambda3 x1 x2 st = Curry.Module.Prelude.c_return((Curry.Module.Prelude.:<)(x1)(x2))(st)++++c_hGetContents :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetContents x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.IO.c_hIsEOF(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.IO.c_hGetContents'46_'35lambda4(x1)))(st)++++c_hGetContents'46_'35lambda4 :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetContents'46_'35lambda4 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_62_62(Curry.Module.IO.c_hClose(x1)(st))(Curry.Module.Prelude.c_return(Curry.Module.Prelude.List)(st))(st)+c_hGetContents'46_'35lambda4 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_62_62_61(Curry.Module.IO.c_hGetChar(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.IO.c_hGetContents'46_'35lambda4'46_'35lambda5(x1)))(st)+c_hGetContents'46_'35lambda4 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.IO.c_hGetContents'46_'35lambda4(x1)(x)(st))(i)(xs)(st)+c_hGetContents'46_'35lambda4 x1 x st = Curry.RunTimeSystem.patternFail("IO.hGetContents._#lambda4")(x)++++c_hGetContents'46_'35lambda4'46_'35lambda5 :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetContents'46_'35lambda4'46_'35lambda5 x1 x2 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.IO.c_hGetContents(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.IO.c_hGetContents'46_'35lambda4'46_'35lambda5'46_'35lambda6(x2)))(st)++++c_hGetContents'46_'35lambda4'46_'35lambda5'46_'35lambda6 :: Curry.Module.Prelude.C_Char -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_hGetContents'46_'35lambda4'46_'35lambda5'46_'35lambda6 x1 x2 st = Curry.Module.Prelude.c_return((Curry.Module.Prelude.:<)(x1)(x2))(st)++++c_getContents :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getContents st = Curry.Module.IO.c_hGetContents(Curry.Module.IO.c_stdin(st))(st)++++c_hPutChar :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_hPutChar x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.IO.c_prim_hPutChar))(x1)(st))(x2)(st)++++c_hPutStr :: Curry.Module.IO.C_Handle -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_hPutStr x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_done(st)+c_hPutStr x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.op_62_62(Curry.Module.IO.c_hPutChar(x1)(x3)(st))(Curry.Module.IO.c_hPutStr(x1)(x4)(st))(st)+c_hPutStr x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.IO.c_hPutStr(x1)(x)(st))(i)(xs)(st)+c_hPutStr x1 x st = Curry.RunTimeSystem.patternFail("IO.hPutStr")(x)++++c_hPutStrLn :: Curry.Module.IO.C_Handle -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_hPutStrLn x1 x2 st = Curry.Module.Prelude.op_62_62(Curry.Module.IO.c_hPutStr(x1)(x2)(st))(Curry.Module.IO.c_hPutChar(x1)(Curry.Module.Prelude.C_Char('\n'))(st))(st)++++c_hPrint :: (Curry t0) => Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_hPrint x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.IO.c_hPutStrLn(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_show))(st)++++c_hIsReadable :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_hIsReadable x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IO.c_prim_hIsReadable))(x1)(st)++++c_hIsWritable :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_hIsWritable x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IO.c_prim_hIsWritable))(x1)(st)++++c_hGetLine'46_'35lambda2_case_0 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.List)(st)+c_hGetLine'46_'35lambda2_case_0 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_62_62_61(Curry.Module.IO.c_hGetLine(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.IO.c_hGetLine'46_'35lambda2'46_'35lambda3(x2)))(st)+c_hGetLine'46_'35lambda2_case_0 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.IO.c_hGetLine'46_'35lambda2_case_0(x1)(x2)(x)(st))(i)(xs)(st)+c_hGetLine'46_'35lambda2_case_0 x1 x2 x st = Curry.RunTimeSystem.patternFail("IO.hGetLine._#lambda2_case_0")(x)++++c_stdin :: Curry.RunTimeSystem.State -> Curry.Module.IO.C_Handle+c_stdin st = Curry.Module.IO.stdin(st)++++c_stdout :: Curry.RunTimeSystem.State -> Curry.Module.IO.C_Handle+c_stdout st = Curry.Module.IO.stdout(st)++++c_stderr :: Curry.RunTimeSystem.State -> Curry.Module.IO.C_Handle+c_stderr st = Curry.Module.IO.stderr(st)++++c_prim_openFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.IO.C_IOMode -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.IO.C_Handle+c_prim_openFile x1 x2 st = Curry.Module.IO.prim_openFile(x1)(x2)(st)++++c_prim_hClose :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_hClose x1 st = Curry.Module.IO.prim_hClose(x1)(st)++++c_prim_hFlush :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_hFlush x1 st = Curry.Module.IO.prim_hFlush(x1)(st)++++c_prim_hIsEOF :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_prim_hIsEOF x1 st = Curry.Module.IO.prim_hIsEOF(x1)(st)++++c_prim_hSeek :: Curry.Module.IO.C_Handle -> Curry.Module.IO.C_SeekMode -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_hSeek x1 x2 x3 st = Curry.Module.IO.prim_hSeek(x1)(x2)(x3)(st)++++c_prim_hWaitForInput :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_prim_hWaitForInput x1 x2 st = Curry.Module.IO.prim_hWaitForInput(x1)(x2)(st)++++c_prim_hWaitForInputs :: (Curry.Module.Prelude.List Curry.Module.IO.C_Handle) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_prim_hWaitForInputs x1 x2 st = Curry.Module.IO.prim_hWaitForInputs(x1)(x2)(st)++++c_prim_hGetChar :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Char+c_prim_hGetChar x1 st = Curry.Module.IO.prim_hGetChar(x1)(st)++++c_prim_hPutChar :: Curry.Module.IO.C_Handle -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_hPutChar x1 x2 st = Curry.Module.IO.prim_hPutChar(x1)(x2)(st)++++c_prim_hIsReadable :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_prim_hIsReadable x1 st = Curry.Module.IO.prim_hIsReadable(x1)(st)++++c_prim_hIsWritable :: Curry.Module.IO.C_Handle -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Bool+c_prim_hIsWritable x1 st = Curry.Module.IO.prim_hIsWritable(x1)(st)++
+ dist/build/Curry/Module/IOExts.hs view
@@ -0,0 +1,194 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.IOExts (module Curry.Module.IOExts) where++import Curry.RunTimeSystem+import Curry.Module.IO+import Curry.Module.Prelude+import Curry.Module.System++++-- begin included++++import Data.IORef+import qualified Data.IORef as Ref+import System.Process+import Network+import qualified Network.Socket as SO+import System.IO.Unsafe+import Control.Concurrent+import System.IO++import Curry.Module.IO+import qualified Curry.Module.Global++instance Eq (List C_Char) where+  List == List = True+  List == (_ :< _) = False+  (_ :< _) == List = False+  (C_Char c :< xs) == (C_Char c' :< ys) = c Prelude.== c' && xs Prelude.== ys++type Assocs = [(C_String,C_String)]++assocs :: Ref.IORef Assocs+assocs = unsafePerformIO (Ref.newIORef [])++getAssocs :: IO Assocs+getAssocs = Ref.readIORef assocs++setAssocs :: Assocs -> IO ()+setAssocs as = Ref.writeIORef assocs as++prim_execCmd :: List C_Char -> Result (C_IO (T3 C_Handle C_Handle C_Handle))+prim_execCmd = ioFunc1 (\s -> do+     (h1,h2,h3,_) <- runInteractiveCommand s+     Prelude.return (One h1,One h2,One h3))++prim_connectToCmd :: List C_Char -> Result (C_IO C_Handle)+prim_connectToCmd = ioFunc1 (\s -> do+  (hin,hout,herr,_) <- runInteractiveCommand s+  forkIO (forwardError herr)+  Prelude.return (Two hout hin))++forwardError :: Handle -> IO ()+forwardError h = do+   eof <- hIsEOF h +   if eof then Prelude.return ()+          else do+            line <- hGetLine h +            hPutStrLn System.IO.stderr line+            forwardError h++prim_setAssoc :: List C_Char -> List C_Char -> Result (C_IO T0)+prim_setAssoc key val = ioFunc0 (do +                    as <- getAssocs +                    setAssocs ((key,val):as))+++prim_getAssoc :: List C_Char -> Result (C_IO (C_Maybe (List C_Char)))+prim_getAssoc key _ = C_IO (\_ -> do +         as <- getAssocs+         Prelude.return (IOVal (maybe C_Nothing C_Just (lookup key as))))+++type C_IORef a = Curry.Module.Global.C_IORef a++newIORef :: Curry t0 => t0 -> Result (C_IO (C_IORef t0))+newIORef = Curry.Module.Global.newIORef++prim_readIORef :: Curry t0 => C_IORef t0 -> Result (C_IO t0)+prim_readIORef = Curry.Module.Global.prim_readIORef++prim_writeIORef :: Curry t0 => C_IORef t0 -> t0 -> Result (C_IO T0)+prim_writeIORef = Curry.Module.Global.prim_writeIORef+++-- end included++c_execCmd :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T3 Curry.Module.IO.C_Handle Curry.Module.IO.C_Handle Curry.Module.IO.C_Handle)+c_execCmd x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_prim_execCmd))(x1)(st)++++c_connectToCommand :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.IO.C_Handle+c_connectToCommand x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_prim_connectToCmd))(x1)(st)++++c_readCompleteFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_readCompleteFile x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_readFile(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_readCompleteFile'46_'35lambda2))(st)++++c_readCompleteFile'46f'467 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List t0) -> t1 -> Curry.RunTimeSystem.State -> t1+c_readCompleteFile'46f'467 x1@Curry.Module.Prelude.List x2 st = x2+c_readCompleteFile'46f'467 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.IOExts.c_readCompleteFile'46f'467(x4)(x2)(st)+c_readCompleteFile'46f'467 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.IOExts.c_readCompleteFile'46f'467(x)(x2)(st))(i)(xs)(st)+c_readCompleteFile'46f'467 x x2 st = Curry.RunTimeSystem.patternFail("IOExts.readCompleteFile.f.7")(x)++++c_readCompleteFile'46_'35lambda2 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_readCompleteFile'46_'35lambda2 x1 st = Curry.Module.IOExts.c_readCompleteFile'46f'467(x1)(Curry.Module.Prelude.c_return(x1)(st))(st)++++c_updateFile :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_updateFile x1 x2 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.IOExts.c_readCompleteFile(x2)(st))(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_updateFile'46_'35lambda3(x1)(x2)))(st)++++c_updateFile'46_'35lambda3 :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_updateFile'46_'35lambda3 x1 x2 x3 st = Curry.Module.Prelude.c_writeFile(x2)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)++++c_exclusiveIO :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_exclusiveIO x1 x2 st = Curry.Module.Prelude.op_62_62(Curry.Module.System.c_system(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('k'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('1'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))(x1)(st))(st))(Curry.Module.Prelude.c_catchFail(Curry.Module.Prelude.op_62_62_61(x2)(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_exclusiveIO'46_'35lambda4(x1)))(st))(Curry.Module.Prelude.op_62_62(Curry.Module.System.c_system(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))(x1)(st))(st))(Curry.Module.Prelude.c_failed(st))(st))(st))(st)++++c_exclusiveIO'46_'35lambda4 :: (Curry t44) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t44 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t44+c_exclusiveIO'46_'35lambda4 x1 x2 st = Curry.Module.Prelude.op_62_62(Curry.Module.System.c_system(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('-'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))(x1)(st))(st))(Curry.Module.Prelude.c_return(x2)(st))(st)++++c_setAssoc :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_setAssoc x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.IOExts.c_prim_setAssoc))(x1)(st))(x2)(st)++++c_getAssoc :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_getAssoc x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_prim_getAssoc))(x1)(st)++++c_readIORef :: (Curry t0) => (Curry.Module.IOExts.C_IORef t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_readIORef x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.IOExts.c_prim_readIORef))(x1)(st)++++c_writeIORef :: (Curry t0) => (Curry.Module.IOExts.C_IORef t0) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeIORef x1 x2 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.IOExts.c_prim_writeIORef))(x1)(st))(x2)(st)++++c_prim_execCmd :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T3 Curry.Module.IO.C_Handle Curry.Module.IO.C_Handle Curry.Module.IO.C_Handle)+c_prim_execCmd x1 st = Curry.Module.IOExts.prim_execCmd(x1)(st)++++c_prim_connectToCmd :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.IO.C_Handle+c_prim_connectToCmd x1 st = Curry.Module.IOExts.prim_connectToCmd(x1)(st)++++c_prim_setAssoc :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_setAssoc x1 x2 st = Curry.Module.IOExts.prim_setAssoc(x1)(x2)(st)++++c_prim_getAssoc :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_prim_getAssoc x1 st = Curry.Module.IOExts.prim_getAssoc(x1)(st)++++c_newIORef :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.IOExts.C_IORef t0)+c_newIORef x1 st = Curry.Module.IOExts.newIORef(x1)(st)++++c_prim_readIORef :: (Curry t0) => (Curry.Module.IOExts.C_IORef t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_prim_readIORef x1 st = Curry.Module.IOExts.prim_readIORef(x1)(st)++++c_prim_writeIORef :: (Curry t0) => (Curry.Module.IOExts.C_IORef t0) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_writeIORef x1 x2 st = Curry.Module.IOExts.prim_writeIORef(x1)(x2)(st)++
+ dist/build/Curry/Module/Integer.hs view
@@ -0,0 +1,312 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Integer (module Curry.Module.Integer) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++c_pow :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_pow x1 x2 st = Curry.Module.Integer.c_pow_case_25(x1)(x2)(Curry.Module.Prelude.op_62_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_pow'46powaux'463 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_pow'46powaux'463 x1 x2 x3 st = Curry.Module.Integer.c_pow'46powaux'463_case_24(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_ilog :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ilog x1 st = Curry.Module.Integer.c_ilog_case_22(x1)(Curry.Module.Prelude.op_62(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_isqrt :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_isqrt x1 st = Curry.Module.Integer.c_isqrt_case_20(x1)(Curry.Module.Prelude.op_62_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_isqrt'46aux'4621 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_isqrt'46aux'4621 x1 x2 x3 st = Curry.Module.Integer.c_isqrt'46aux'4621_case_17(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.op_43(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st)++++c_factorial :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_factorial x1 st = Curry.Module.Integer.c_factorial_case_15(x1)(Curry.Module.Prelude.op_62_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_binomial :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_binomial x1 x2 st = Curry.Module.Integer.c_binomial_case_13(x1)(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62(x2)(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_62_61(x1)(x2)(st))(st))(st)++++c_binomial'46aux'4641 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_binomial'46aux'4641 x1 x2 st = Curry.Module.Integer.c_binomial'46aux'4641_case_12(x1)(x2)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_abs :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_abs x1 st = Curry.Module.Integer.c_abs_case_11(x1)(Curry.Module.Prelude.op_60(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_max :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_max x1 x2 st = Curry.Module.Integer.c_max_case_10(x1)(x2)(Curry.Module.Prelude.op_60(x1)(x2)(st))(st)++++c_min :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_min x1 x2 st = Curry.Module.Integer.c_min_case_9(x1)(x2)(Curry.Module.Prelude.op_60(x1)(x2)(st))(st)++++c_max3 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_max3 x1 x2 x3 st = Curry.Module.Integer.c_max(x1)(Curry.Module.Integer.c_max(x2)(x3)(st))(st)++++c_min3 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_min3 x1 x2 x3 st = Curry.Module.Integer.c_min(x1)(Curry.Module.Integer.c_min(x2)(x3)(st))(st)++++c_maxlist :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_maxlist x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Integer.c_maxlist_case_8(x2)(x3)(st)+c_maxlist (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_maxlist(x)(st))(i)(xs)(st)+c_maxlist x st = Curry.RunTimeSystem.patternFail("Integer.maxlist")(x)++++c_minlist :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_minlist x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Integer.c_minlist_case_7(x2)(x3)(st)+c_minlist (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_minlist(x)(st))(i)(xs)(st)+c_minlist x st = Curry.RunTimeSystem.patternFail("Integer.minlist")(x)++++c_bitTrunc :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_bitTrunc x1 x2 st = Curry.Module.Integer.c_bitAnd(Curry.Module.Prelude.op_45(Curry.Module.Integer.c_pow(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x2)(st)++++c_bitAnd :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_bitAnd x1 x2 st = Curry.Module.Integer.c_bitAnd_case_6(x1)(x2)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_bitOr :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_bitOr x1 x2 st = Curry.Module.Integer.c_bitOr_case_4(x1)(x2)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_bitNot :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_bitNot x1 st = Curry.Module.Integer.c_bitNot'46aux'46100(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))(x1)(st)++++c_bitNot'46aux'46100 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_bitNot'46aux'46100 x1 x2 st = Curry.Module.Integer.c_bitNot'46aux'46100_case_2(x1)(x2)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_bitXor :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_bitXor x1 x2 st = Curry.Module.Integer.c_bitXor_case_1(x1)(x2)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_even :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_even x1 st = Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Zero)(st)++++c_odd :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_odd x1 st = Curry.Module.Prelude.op_47_61(Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Zero)(st)++++c_bitXor_case_1 x1 x2 x3@Curry.Module.Prelude.C_True st = x1+c_bitXor_case_1 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.Integer.c_bitXor(Curry.Module.Prelude.c_div(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.c_div(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(Curry.Module.Integer.c_bitXor_case_0(x1)(x2)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(st)+c_bitXor_case_1 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitXor_case_1(x1)(x2)(x)(st))(i)(xs)(st)+c_bitXor_case_1 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitXor_case_1")(x)++++c_bitXor_case_0 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_bitXor_case_0 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_bitXor_case_0 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitXor_case_0(x1)(x2)(x)(st))(i)(xs)(st)+c_bitXor_case_0 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitXor_case_0")(x)++++c_bitNot'46aux'46100_case_2 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_bitNot'46aux'46100_case_2 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.Integer.c_bitNot'46aux'46100(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Prelude.c_div(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(Curry.Module.Prelude.op_45(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st)+c_bitNot'46aux'46100_case_2 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitNot'46aux'46100_case_2(x1)(x2)(x)(st))(i)(xs)(st)+c_bitNot'46aux'46100_case_2 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitNot.aux.100_case_2")(x)++++c_bitOr_case_4 x1 x2 x3@Curry.Module.Prelude.C_True st = x1+c_bitOr_case_4 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.Integer.c_bitOr(Curry.Module.Prelude.c_div(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.c_div(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(Curry.Module.Integer.c_bitOr_case_3(x1)(x2)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st)+c_bitOr_case_4 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitOr_case_4(x1)(x2)(x)(st))(i)(xs)(st)+c_bitOr_case_4 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitOr_case_4")(x)++++c_bitOr_case_3 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_bitOr_case_3 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st)+c_bitOr_case_3 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitOr_case_3(x1)(x2)(x)(st))(i)(xs)(st)+c_bitOr_case_3 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitOr_case_3")(x)++++c_bitAnd_case_6 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_bitAnd_case_6 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.Integer.c_bitAnd(Curry.Module.Prelude.c_div(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.c_div(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(Curry.Module.Integer.c_bitAnd_case_5(x1)(x2)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Zero)(st))(st))(st)+c_bitAnd_case_6 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitAnd_case_6(x1)(x2)(x)(st))(i)(xs)(st)+c_bitAnd_case_6 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitAnd_case_6")(x)++++c_bitAnd_case_5 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_bitAnd_case_5 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st)+c_bitAnd_case_5 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_bitAnd_case_5(x1)(x2)(x)(st))(i)(xs)(st)+c_bitAnd_case_5 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.bitAnd_case_5")(x)++++c_minlist_case_7 x2 x3@Curry.Module.Prelude.List st = x2+c_minlist_case_7 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Integer.c_min(x2)(Curry.Module.Integer.c_minlist((Curry.Module.Prelude.:<)(x4)(x5))(st))(st)+c_minlist_case_7 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_minlist_case_7(x2)(x)(st))(i)(xs)(st)+c_minlist_case_7 x2 x st = Curry.RunTimeSystem.patternFail("Integer.minlist_case_7")(x)++++c_maxlist_case_8 x2 x3@Curry.Module.Prelude.List st = x2+c_maxlist_case_8 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Integer.c_max(x2)(Curry.Module.Integer.c_maxlist((Curry.Module.Prelude.:<)(x4)(x5))(st))(st)+c_maxlist_case_8 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_maxlist_case_8(x2)(x)(st))(i)(xs)(st)+c_maxlist_case_8 x2 x st = Curry.RunTimeSystem.patternFail("Integer.maxlist_case_8")(x)++++c_min_case_9 x1 x2 x3@Curry.Module.Prelude.C_True st = x1+c_min_case_9 x1 x2 x3@Curry.Module.Prelude.C_False st = x2+c_min_case_9 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_min_case_9(x1)(x2)(x)(st))(i)(xs)(st)+c_min_case_9 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.min_case_9")(x)++++c_max_case_10 x1 x2 x3@Curry.Module.Prelude.C_True st = x2+c_max_case_10 x1 x2 x3@Curry.Module.Prelude.C_False st = x1+c_max_case_10 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_max_case_10(x1)(x2)(x)(st))(i)(xs)(st)+c_max_case_10 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.max_case_10")(x)++++c_abs_case_11 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_negate(x1)(st)+c_abs_case_11 x1 x2@Curry.Module.Prelude.C_False st = x1+c_abs_case_11 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_abs_case_11(x1)(x)(st))(i)(xs)(st)+c_abs_case_11 x1 x st = Curry.RunTimeSystem.patternFail("Integer.abs_case_11")(x)++++c_binomial'46aux'4641_case_12 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_binomial'46aux'4641_case_12 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_42(x2)(Curry.Module.Integer.c_binomial'46aux'4641(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st)+c_binomial'46aux'4641_case_12 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_binomial'46aux'4641_case_12(x1)(x2)(x)(st))(i)(xs)(st)+c_binomial'46aux'4641_case_12 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.binomial.aux.41_case_12")(x)++++c_binomial_case_13 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_div(Curry.Module.Integer.c_binomial'46aux'4641(x2)(x1)(st))(Curry.Module.Integer.c_factorial(x2)(st))(st)+c_binomial_case_13 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_binomial_case_13(x1)(x2)(x)(st))(i)(xs)(st)+c_binomial_case_13 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.binomial_case_13")(x)++++c_factorial_case_15 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Integer.c_factorial_case_14(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)+c_factorial_case_15 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_factorial_case_15(x1)(x)(st))(i)(xs)(st)+c_factorial_case_15 x1 x st = Curry.RunTimeSystem.patternFail("Integer.factorial_case_15")(x)++++c_factorial_case_14 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_factorial_case_14 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_42(x1)(Curry.Module.Integer.c_factorial(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st)+c_factorial_case_14 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_factorial_case_14(x1)(x)(st))(i)(xs)(st)+c_factorial_case_14 x1 x st = Curry.RunTimeSystem.patternFail("Integer.factorial_case_14")(x)++++c_isqrt'46aux'4621_case_17 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x2+c_isqrt'46aux'4621_case_17 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = let {x4 = Curry.Module.Prelude.c_div(Curry.Module.Prelude.op_43(x3)(x2)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st)} in Curry.Module.Integer.c_isqrt'46aux'4621_case_16(x1)(x2)(x3)(x4)(Curry.Module.Prelude.op_62(Curry.Module.Prelude.op_42(x4)(x4)(st))(x1)(st))(st)+c_isqrt'46aux'4621_case_17 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_isqrt'46aux'4621_case_17(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_isqrt'46aux'4621_case_17 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Integer.isqrt.aux.21_case_17")(x)++++c_isqrt'46aux'4621_case_16 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Integer.c_isqrt'46aux'4621(x1)(x2)(x4)(st)+c_isqrt'46aux'4621_case_16 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Integer.c_isqrt'46aux'4621(x1)(x4)(x3)(st)+c_isqrt'46aux'4621_case_16 x1 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_isqrt'46aux'4621_case_16(x1)(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_isqrt'46aux'4621_case_16 x1 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("Integer.isqrt.aux.21_case_16")(x)++++c_isqrt_case_20 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Integer.c_isqrt_case_19(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)+c_isqrt_case_20 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_isqrt_case_20(x1)(x)(st))(i)(xs)(st)+c_isqrt_case_20 x1 x st = Curry.RunTimeSystem.patternFail("Integer.isqrt_case_20")(x)++++c_isqrt_case_19 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_isqrt_case_19 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Integer.c_isqrt_case_18(x1)(Curry.Module.Prelude.op_60(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(st))(st)+c_isqrt_case_19 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_isqrt_case_19(x1)(x)(st))(i)(xs)(st)+c_isqrt_case_19 x1 x st = Curry.RunTimeSystem.patternFail("Integer.isqrt_case_19")(x)++++c_isqrt_case_18 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_isqrt_case_18 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Integer.c_isqrt'46aux'4621(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(x1)(st)+c_isqrt_case_18 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_isqrt_case_18(x1)(x)(st))(i)(xs)(st)+c_isqrt_case_18 x1 x st = Curry.RunTimeSystem.patternFail("Integer.isqrt_case_18")(x)++++c_ilog_case_22 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Integer.c_ilog_case_21(x1)(Curry.Module.Prelude.op_60(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(st)+c_ilog_case_22 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_ilog_case_22(x1)(x)(st))(i)(xs)(st)+c_ilog_case_22 x1 x st = Curry.RunTimeSystem.patternFail("Integer.ilog_case_22")(x)++++c_ilog_case_21 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_ilog_case_21 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.Integer.c_ilog(Curry.Module.Prelude.c_div(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(st))(st)+c_ilog_case_21 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_ilog_case_21(x1)(x)(st))(i)(xs)(st)+c_ilog_case_21 x1 x st = Curry.RunTimeSystem.patternFail("Integer.ilog_case_21")(x)++++c_pow'46powaux'463_case_24 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x1+c_pow'46powaux'463_case_24 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Integer.c_pow'46powaux'463(Curry.Module.Prelude.op_42(x1)(Curry.Module.Integer.c_pow'46powaux'463_case_23(x2)(x3)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st))(Curry.Module.Prelude.op_42(x2)(x2)(st))(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st)+c_pow'46powaux'463_case_24 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_pow'46powaux'463_case_24(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_pow'46powaux'463_case_24 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Integer.pow.powaux.3_case_24")(x)++++c_pow'46powaux'463_case_23 x2 x3 x4@Curry.Module.Prelude.C_True st = x2+c_pow'46powaux'463_case_23 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_pow'46powaux'463_case_23 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_pow'46powaux'463_case_23(x2)(x3)(x)(st))(i)(xs)(st)+c_pow'46powaux'463_case_23 x2 x3 x st = Curry.RunTimeSystem.patternFail("Integer.pow.powaux.3_case_23")(x)++++c_pow_case_25 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Integer.c_pow'46powaux'463(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(x1)(x2)(st)+c_pow_case_25 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Integer.c_pow_case_25(x1)(x2)(x)(st))(i)(xs)(st)+c_pow_case_25 x1 x2 x st = Curry.RunTimeSystem.patternFail("Integer.pow_case_25")(x)++
+ dist/build/Curry/Module/Interactive.hs view
@@ -0,0 +1,66 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Interactive (module Curry.Module.Interactive) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++printTerm :: (Show t0,Curry t0) => t0 -> Result (C_IO T0)+printTerm x _ = C_IO (\ _ -> do print x +                                Prelude.return (IOVal T0))+++-- end included++c_interactiveSols :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_interactiveSols x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_putStrLn((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))(Curry.Module.Prelude.List))))))))))))))))))(st)+c_interactiveSols x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.op_62_62(Curry.Module.Interactive.c_printTerm(x2)(st))(Curry.Module.Prelude.op_62_62(Curry.Module.Prelude.c_putStrLn((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('?'))(Curry.Module.Prelude.List))))))(st))(Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_getLine(st))(Curry.Module.Prelude.pf(Curry.Module.Interactive.c_interactiveSols'46_'35lambda2(x3)))(st))(st))(st)+c_interactiveSols (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Interactive.c_interactiveSols(x)(st))(i)(xs)(st)+c_interactiveSols x st = Curry.RunTimeSystem.patternFail("Interactive.interactiveSols")(x)++++c_interactiveSols'46_'35lambda2 :: (Curry t5) => (Curry.Module.Prelude.List t5) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_interactiveSols'46_'35lambda2 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Interactive.c_interactiveSols'46_'35lambda2_case_1(x1)(x3)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Char('n'))(st))(st)+c_interactiveSols'46_'35lambda2 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Interactive.c_interactiveSols(x1)(st)+c_interactiveSols'46_'35lambda2 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Interactive.c_interactiveSols'46_'35lambda2(x1)(x)(st))(i)(xs)(st)+c_interactiveSols'46_'35lambda2 x1 x st = Curry.RunTimeSystem.patternFail("Interactive.interactiveSols._#lambda2")(x)++++c_printIO :: (Curry t0) => (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_printIO x1 st = Curry.Module.Prelude.op_62_62_61(x1)(Curry.Module.Prelude.pf(Curry.Module.Interactive.c_printIO'46_'35lambda4))(st)++++c_printIO'46_'35lambda4 :: (Curry t25) => t25 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_printIO'46_'35lambda4 x1 st = Curry.Module.Prelude.op_62_62(Curry.Module.Prelude.c_putStr((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('I'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))(st))(Curry.Module.Prelude.op_36_33_33(Curry.Module.Prelude.pf(Curry.Module.Interactive.c_printTerm))(x1)(st))(st)++++c_interactiveSols'46_'35lambda2_case_1 x1 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T0)(st)+c_interactiveSols'46_'35lambda2_case_1 x1 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Interactive.c_interactiveSols'46_'35lambda2_case_0(x1)(x3)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Char('N'))(st))(st)+c_interactiveSols'46_'35lambda2_case_1 x1 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Interactive.c_interactiveSols'46_'35lambda2_case_1(x1)(x3)(x)(st))(i)(xs)(st)+c_interactiveSols'46_'35lambda2_case_1 x1 x3 x st = Curry.RunTimeSystem.patternFail("Interactive.interactiveSols._#lambda2_case_1")(x)++++c_interactiveSols'46_'35lambda2_case_0 x1 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T0)(st)+c_interactiveSols'46_'35lambda2_case_0 x1 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Interactive.c_interactiveSols(x1)(st)+c_interactiveSols'46_'35lambda2_case_0 x1 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Interactive.c_interactiveSols'46_'35lambda2_case_0(x1)(x3)(x)(st))(i)(xs)(st)+c_interactiveSols'46_'35lambda2_case_0 x1 x3 x st = Curry.RunTimeSystem.patternFail("Interactive.interactiveSols._#lambda2_case_0")(x)++++c_printTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_printTerm x1 st = Curry.Module.Interactive.printTerm(x1)(st)++
+ dist/build/Curry/Module/List.hs view
@@ -0,0 +1,270 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.List (module Curry.Module.List) where++import Curry.RunTimeSystem+import Curry.Module.Maybe+import Curry.Module.Prelude++++-- begin included++++-- end included++c_elemIndex :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe Curry.Module.Prelude.C_Int)+c_elemIndex x1 st = Curry.Module.List.c_findIndex(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_61_61(x1)))(st)++++c_elemIndices :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)+c_elemIndices x1 st = Curry.Module.Prelude.pf(Curry.Module.List.c_findIndices(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_61_61(x1))))++++c_find :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t0)+c_find x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_listToMaybe))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_filter(x1)))(st)++++c_findIndex :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe Curry.Module.Prelude.C_Int)+c_findIndex x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_listToMaybe))(Curry.Module.Prelude.pf(Curry.Module.List.c_findIndices(x1)))(st)++++c_findIndices :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_findIndices x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.List.c_findIndices'46_'35lambda4(x1)))(Curry.Module.Prelude.List)(Curry.Module.Prelude.c_zip(x2)(Curry.Module.Prelude.c_enumFrom(Curry.Module.Prelude.C_Zero)(st))(st))(st)++++c_findIndices'46_'35lambda4 :: (Curry t7) => (Curry.Module.Prelude.Prim (t7 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.T2 t7 Curry.Module.Prelude.C_Int) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_findIndices'46_'35lambda4 x1 x2@(Curry.Module.Prelude.T2 x4 x5) x3 st = Curry.Module.Prelude.op_43_43(Curry.Module.List.c_findIndices'46_'35lambda4_case_11(x1)(x4)(x5)(Curry.Module.Prelude.c_apply(x1)(x4)(st))(st))(x3)(st)+c_findIndices'46_'35lambda4 x1 (Curry.Module.Prelude.T2Or i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_findIndices'46_'35lambda4(x1)(x)(x3)(st))(i)(xs)(st)+c_findIndices'46_'35lambda4 x1 x x3 st = Curry.RunTimeSystem.patternFail("List.findIndices._#lambda4")(x)++++c_nub :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_nub x1 st = Curry.Module.List.c_nubBy(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(x1)(st)++++c_nubBy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_nubBy x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_nubBy x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.List.c_nubBy(x1)(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.pf(Curry.Module.List.c_nubBy'46_'35lambda6(x1)(x3)))(x4)(st))(st))+c_nubBy x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_nubBy(x1)(x)(st))(i)(xs)(st)+c_nubBy x1 x st = Curry.RunTimeSystem.patternFail("List.nubBy")(x)++++c_nubBy'46_'35lambda6 :: (Curry t45) => (Curry.Module.Prelude.Prim (t45 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t45 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t45 -> t45 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_nubBy'46_'35lambda6 x1 x2 x3 st = Curry.Module.Prelude.c_not(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(x3)(st))(st)++++c_delete :: (Curry t0) => t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_delete x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_delete x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.List.c_delete_case_10(x1)(x3)(x4)(Curry.Module.Prelude.op_61_61(x1)(x3)(st))(st)+c_delete x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_delete(x1)(x)(st))(i)(xs)(st)+c_delete x1 x st = Curry.RunTimeSystem.patternFail("List.delete")(x)++++op_92_92 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+op_92_92 x1 x2 st = Curry.Module.Prelude.c_foldl(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.List.c_delete))))(x1)(x2)(st)++++c_union :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_union x1@Curry.Module.Prelude.List x2 st = x2+c_union x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.List.c_union_case_9(x2)(x3)(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(x3)(st))(x2)(st))(st)+c_union (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_union(x)(x2)(st))(i)(xs)(st)+c_union x x2 st = Curry.RunTimeSystem.patternFail("List.union")(x)++++c_intersect :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_intersect x1@Curry.Module.Prelude.List x2 st = Curry.Module.Prelude.List+c_intersect x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.List.c_intersect_case_8(x2)(x3)(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(x3)(st))(x2)(st))(st)+c_intersect (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_intersect(x)(x2)(st))(i)(xs)(st)+c_intersect x x2 st = Curry.RunTimeSystem.patternFail("List.intersect")(x)++++c_intersperse :: (Curry t0) => t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_intersperse x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_intersperse x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.List.c_intersperse_case_7(x1)(x3)(x4)(st)+c_intersperse x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_intersperse(x1)(x)(st))(i)(xs)(st)+c_intersperse x1 x st = Curry.RunTimeSystem.patternFail("List.intersperse")(x)++++c_transpose :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)+c_transpose x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_transpose x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.List.c_transpose_case_6(x3)(x2)(st)+c_transpose (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_transpose(x)(st))(i)(xs)(st)+c_transpose x st = Curry.RunTimeSystem.patternFail("List.transpose")(x)++++c_partition :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t0)+c_partition x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.List.c_partition'46select'4653(x1)))(Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List))(x2)(st)++++c_partition'46select'4653 :: (Curry t146) => (Curry.Module.Prelude.Prim (t146 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> t146 -> (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t146) (Curry.Module.Prelude.List t146)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t146) (Curry.Module.Prelude.List t146)+c_partition'46select'4653 x1 x2 x3@(Curry.Module.Prelude.T2 x4 x5) st = Curry.Module.List.c_partition'46select'4653_case_5(x1)(x2)(x4)(x5)(Curry.Module.Prelude.c_apply(x1)(x2)(st))(st)+c_partition'46select'4653 x1 x2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_partition'46select'4653(x1)(x2)(x)(st))(i)(xs)(st)+c_partition'46select'4653 x1 x2 x st = Curry.RunTimeSystem.patternFail("List.partition.select.53")(x)++++c_group :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t0))+c_group st = Curry.Module.Prelude.pf(Curry.Module.List.c_groupBy(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61)))++++c_groupBy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)+c_groupBy x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_groupBy x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = let {x5 = Curry.Module.Prelude.c_span(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)(st)} in (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x3)(Curry.Module.List.c_groupBy'46_'35selFP3'35ys(x5)(st)))(Curry.Module.List.c_groupBy(x1)(Curry.Module.List.c_groupBy'46_'35selFP4'35zs(x5)(st))(st))+c_groupBy x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_groupBy(x1)(x)(st))(i)(xs)(st)+c_groupBy x1 x st = Curry.RunTimeSystem.patternFail("List.groupBy")(x)++++c_groupBy'46_'35selFP3'35ys :: (Curry t154) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t154) (Curry.Module.Prelude.List t154)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t154+c_groupBy'46_'35selFP3'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_groupBy'46_'35selFP3'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_groupBy'46_'35selFP3'35ys(x)(st))(i)(xs)(st)+c_groupBy'46_'35selFP3'35ys x st = Curry.RunTimeSystem.patternFail("List.groupBy._#selFP3#ys")(x)++++c_groupBy'46_'35selFP4'35zs :: (Curry t154) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t154) (Curry.Module.Prelude.List t154)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t154+c_groupBy'46_'35selFP4'35zs x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_groupBy'46_'35selFP4'35zs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_groupBy'46_'35selFP4'35zs(x)(st))(i)(xs)(st)+c_groupBy'46_'35selFP4'35zs x st = Curry.RunTimeSystem.patternFail("List.groupBy._#selFP4#zs")(x)++++c_replace :: (Curry t0) => t0 -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_replace x1 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_replace x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.List.c_replace_case_4(x1)(x2)(x4)(x5)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)+c_replace x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_replace(x1)(x2)(x)(st))(i)(xs)(st)+c_replace x1 x2 x st = Curry.RunTimeSystem.patternFail("List.replace")(x)++++c_isPrefixOf :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isPrefixOf x1@Curry.Module.Prelude.List x2 st = Curry.Module.Prelude.C_True+c_isPrefixOf x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.List.c_isPrefixOf_case_2(x3)(x4)(x2)(st)+c_isPrefixOf (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_isPrefixOf(x)(x2)(st))(i)(xs)(st)+c_isPrefixOf x x2 st = Curry.RunTimeSystem.patternFail("List.isPrefixOf")(x)++++c_sortBy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_sortBy x1 st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.List.c_insertBy(x1)))(Curry.Module.Prelude.List))++++c_insertBy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_insertBy x1 x2 x3@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.List)+c_insertBy x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.List.c_insertBy_case_1(x1)(x2)(x4)(x5)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(x4)(st))(st)+c_insertBy x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_insertBy(x1)(x2)(x)(st))(i)(xs)(st)+c_insertBy x1 x2 x st = Curry.RunTimeSystem.patternFail("List.insertBy")(x)++++c_last :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_last x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.List.c_last_case_0(x2)(x3)(st)+c_last (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_last(x)(st))(i)(xs)(st)+c_last x st = Curry.RunTimeSystem.patternFail("List.last")(x)++++c_last_case_0 x2 x3@Curry.Module.Prelude.List st = x2+c_last_case_0 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.List.c_last((Curry.Module.Prelude.:<)(x4)(x5))(st)+c_last_case_0 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_last_case_0(x2)(x)(st))(i)(xs)(st)+c_last_case_0 x2 x st = Curry.RunTimeSystem.patternFail("List.last_case_0")(x)++++c_insertBy_case_1 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x2)((Curry.Module.Prelude.:<)(x4)(x5))+c_insertBy_case_1 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x4)(Curry.Module.List.c_insertBy(x1)(x2)(x5)(st))+c_insertBy_case_1 x1 x2 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_insertBy_case_1(x1)(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_insertBy_case_1 x1 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("List.insertBy_case_1")(x)++++c_isPrefixOf_case_2 x3 x4 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_False+c_isPrefixOf_case_2 x3 x4 x2@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x3)(x5)(st))(Curry.Module.List.c_isPrefixOf(x4)(x6)(st))(st)+c_isPrefixOf_case_2 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_isPrefixOf_case_2(x3)(x4)(x)(st))(i)(xs)(st)+c_isPrefixOf_case_2 x3 x4 x st = Curry.RunTimeSystem.patternFail("List.isPrefixOf_case_2")(x)++++c_replace_case_4 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x1)(x5)+c_replace_case_4 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.List.c_replace_case_3(x1)(x2)(x4)(x5)(Curry.Module.Prelude.c_otherwise(st))(st)+c_replace_case_4 x1 x2 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_replace_case_4(x1)(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_replace_case_4 x1 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("List.replace_case_4")(x)++++c_replace_case_3 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x4)(Curry.Module.List.c_replace(x1)(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x5)(st))+c_replace_case_3 x1 x2 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_replace_case_3(x1)(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_replace_case_3 x1 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("List.replace_case_3")(x)++++c_partition'46select'4653_case_5 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x2)(x4))(x5)+c_partition'46select'4653_case_5 x1 x2 x4 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.T2(x4)((Curry.Module.Prelude.:<)(x2)(x5))+c_partition'46select'4653_case_5 x1 x2 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_partition'46select'4653_case_5(x1)(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_partition'46select'4653_case_5 x1 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("List.partition.select.53_case_5")(x)++++c_transpose_case_6 x3 x2@Curry.Module.Prelude.List st = Curry.Module.List.c_transpose(x3)(st)+c_transpose_case_6 x3 x2@((Curry.Module.Prelude.:<) x4 x5) st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x4)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_head))(x3)(st)))(Curry.Module.List.c_transpose((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_tail))(x3)(st)))(st))+c_transpose_case_6 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_transpose_case_6(x3)(x)(st))(i)(xs)(st)+c_transpose_case_6 x3 x st = Curry.RunTimeSystem.patternFail("List.transpose_case_6")(x)++++c_intersperse_case_7 x1 x3 x4@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List)+c_intersperse_case_7 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = (Curry.Module.Prelude.:<)(x3)((Curry.Module.Prelude.:<)(x1)(Curry.Module.List.c_intersperse(x1)((Curry.Module.Prelude.:<)(x5)(x6))(st)))+c_intersperse_case_7 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_intersperse_case_7(x1)(x3)(x)(st))(i)(xs)(st)+c_intersperse_case_7 x1 x3 x st = Curry.RunTimeSystem.patternFail("List.intersperse_case_7")(x)++++c_intersect_case_8 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.List.c_intersect(x4)(x2)(st))+c_intersect_case_8 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.List.c_intersect(x4)(x2)(st)+c_intersect_case_8 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_intersect_case_8(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_intersect_case_8 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("List.intersect_case_8")(x)++++c_union_case_9 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.List.c_union(x4)(x2)(st)+c_union_case_9 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.List.c_union(x4)(x2)(st))+c_union_case_9 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_union_case_9(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_union_case_9 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("List.union_case_9")(x)++++c_delete_case_10 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = x4+c_delete_case_10 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.List.c_delete(x1)(x4)(st))+c_delete_case_10 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_delete_case_10(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_delete_case_10 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("List.delete_case_10")(x)++++c_findIndices'46_'35lambda4_case_11 x1 x4 x5 x6@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.List)+c_findIndices'46_'35lambda4_case_11 x1 x4 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.List+c_findIndices'46_'35lambda4_case_11 x1 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.List.c_findIndices'46_'35lambda4_case_11(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_findIndices'46_'35lambda4_case_11 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("List.findIndices._#lambda4_case_11")(x)++
+ dist/build/Curry/Module/Maybe.hs view
@@ -0,0 +1,113 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Maybe (module Curry.Module.Maybe) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++c_isJust :: (Curry t0) => (Curry.Module.Prelude.C_Maybe t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isJust x1@(Curry.Module.Prelude.C_Just x2) st = Curry.Module.Prelude.C_True+c_isJust x1@Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.C_False+c_isJust (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_isJust(x)(st))(i)(xs)(st)+c_isJust x st = Curry.RunTimeSystem.patternFail("Maybe.isJust")(x)++++c_isNothing :: (Curry t0) => (Curry.Module.Prelude.C_Maybe t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isNothing x1@Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.C_True+c_isNothing x1@(Curry.Module.Prelude.C_Just x2) st = Curry.Module.Prelude.C_False+c_isNothing (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_isNothing(x)(st))(i)(xs)(st)+c_isNothing x st = Curry.RunTimeSystem.patternFail("Maybe.isNothing")(x)++++c_fromJust :: (Curry t0) => (Curry.Module.Prelude.C_Maybe t0) -> Curry.RunTimeSystem.State -> t0+c_fromJust x1@(Curry.Module.Prelude.C_Just x2) st = x2+c_fromJust x1@Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))(Curry.Module.Prelude.List))))))))))))))))))))))))(st)+c_fromJust (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_fromJust(x)(st))(i)(xs)(st)+c_fromJust x st = Curry.RunTimeSystem.patternFail("Maybe.fromJust")(x)++++c_fromMaybe :: (Curry t0) => t0 -> (Curry.Module.Prelude.C_Maybe t0) -> Curry.RunTimeSystem.State -> t0+c_fromMaybe x1 x2@Curry.Module.Prelude.C_Nothing st = x1+c_fromMaybe x1 x2@(Curry.Module.Prelude.C_Just x3) st = x3+c_fromMaybe x1 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_fromMaybe(x1)(x)(st))(i)(xs)(st)+c_fromMaybe x1 x st = Curry.RunTimeSystem.patternFail("Maybe.fromMaybe")(x)++++c_maybeToList :: (Curry t0) => (Curry.Module.Prelude.C_Maybe t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_maybeToList x1@Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.List+c_maybeToList x1@(Curry.Module.Prelude.C_Just x2) st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.List)+c_maybeToList (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_maybeToList(x)(st))(i)(xs)(st)+c_maybeToList x st = Curry.RunTimeSystem.patternFail("Maybe.maybeToList")(x)++++c_listToMaybe :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t0+c_listToMaybe x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Nothing+c_listToMaybe x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.C_Just(x2)+c_listToMaybe (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_listToMaybe(x)(st))(i)(xs)(st)+c_listToMaybe x st = Curry.RunTimeSystem.patternFail("Maybe.listToMaybe")(x)++++c_catMaybes :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.C_Maybe t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_catMaybes x1 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Maybe.c_catMaybes'46_'35lambda4))(Curry.Module.Prelude.List)(x1)(st)++++c_catMaybes'46_'35lambda4 :: (Curry t37) => (Curry.Module.Prelude.C_Maybe t37) -> (Curry.Module.Prelude.List t37) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t37+c_catMaybes'46_'35lambda4 x1@(Curry.Module.Prelude.C_Just x3) x2 st = (Curry.Module.Prelude.:<)(x3)(x2)+c_catMaybes'46_'35lambda4 x1@Curry.Module.Prelude.C_Nothing x2 st = x2+c_catMaybes'46_'35lambda4 (Curry.Module.Prelude.C_MaybeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_catMaybes'46_'35lambda4(x)(x2)(st))(i)(xs)(st)+c_catMaybes'46_'35lambda4 x x2 st = Curry.RunTimeSystem.patternFail("Maybe.catMaybes._#lambda4")(x)++++c_mapMaybe :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1)+c_mapMaybe x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_catMaybes))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++++op_62_62_45 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.C_Maybe t0) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1+op_62_62_45 x1@Curry.Module.Prelude.C_Nothing x2 st = Curry.Module.Prelude.C_Nothing+op_62_62_45 x1@(Curry.Module.Prelude.C_Just x3) x2 st = Curry.Module.Prelude.c_apply(x2)(x3)(st)+op_62_62_45 (Curry.Module.Prelude.C_MaybeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.op_62_62_45(x)(x2)(st))(i)(xs)(st)+op_62_62_45 x x2 st = Curry.RunTimeSystem.patternFail("Maybe.>>-")(x)++++c_sequenceMaybe :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.C_Maybe t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List t0)+c_sequenceMaybe x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Just(Curry.Module.Prelude.List)+c_sequenceMaybe x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Maybe.op_62_62_45(x2)(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_sequenceMaybe'46_'35lambda6(x3)))(st)+c_sequenceMaybe (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Maybe.c_sequenceMaybe(x)(st))(i)(xs)(st)+c_sequenceMaybe x st = Curry.RunTimeSystem.patternFail("Maybe.sequenceMaybe")(x)++++c_sequenceMaybe'46_'35lambda6 :: (Curry t66) => (Curry.Module.Prelude.List (Curry.Module.Prelude.C_Maybe t66)) -> t66 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List t66)+c_sequenceMaybe'46_'35lambda6 x1 x2 st = Curry.Module.Maybe.op_62_62_45(Curry.Module.Maybe.c_sequenceMaybe(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_sequenceMaybe'46_'35lambda6'46_'35lambda7(x2)))(st)++++c_sequenceMaybe'46_'35lambda6'46_'35lambda7 :: (Curry t66) => t66 -> (Curry.Module.Prelude.List t66) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List t66)+c_sequenceMaybe'46_'35lambda6'46_'35lambda7 x1 x2 st = Curry.Module.Prelude.C_Just((Curry.Module.Prelude.:<)(x1)(x2))++++c_mapMMaybe :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.List t1))+c_mapMMaybe x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_sequenceMaybe))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++
+ dist/build/Curry/Module/Meta.hs view
@@ -0,0 +1,788 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Meta (module Curry.Module.Meta) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++import System.Mem.Weak ( addFinalizer )+import Control.Concurrent+import System.IO.Unsafe ( unsafeInterleaveIO )+import Debug.Trace ( trace )+import Data.List++data C_OrRef = C_OrRef OrRef+  | C_OrRefFail Curry.RunTimeSystem.C_Exceptions+  | C_OrRefOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches C_OrRef)++instance BaseCurry C_OrRef where+  nf f x state = f(x)(state)++  gnf f x state = f(x)(state)++  generator _ = error "free Variable of type OrRef"++  failed  = C_OrRefFail++  branching  = C_OrRefOr++  consKind (C_OrRefOr _ _) = Curry.RunTimeSystem.Branching+  consKind (C_OrRefFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (C_OrRefFail x) = x++  orRef (C_OrRefOr x _) = x++  branches (C_OrRefOr _ x) = x++instance Curry C_OrRef where+  strEq (C_OrRef x1) (C_OrRef y1) _ +     = if x1 Prelude.== y1 then strEqSuccess else strEqFail "OrRef"+  strEq x0 _ _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (C_OrRef x1) (C_OrRef y1) _ = +    if x1 Prelude.== y1 then C_True else C_False+  eq _ _ _ = C_False++  typeName _ = "OrRef"++  propagate _ o _ = o+  +  foldCurry _ c _ _ = c++  showQ d (C_OrRef x1) = showParen (d>10) (showString "Unsafe.OrRef" . showsPrec d x1)++++++instance Show C_OrRef where+  showsPrec d (C_OrRef x1) = showParen (d>10) (showString "OrRef" . showsPrec d x1)+++instance Read C_OrRef where+  readsPrec d r = [ (C_OrRef ref,s) | (ref,s) <- readsPrec d r]+++---------------------------------------------------------------------------------+-- test for free variable+---------------------------------------------------------------------------------++prim_isFree :: (Curry t0) => t0 -> Result (C_IO (C_Either t0 t0))+prim_isFree x _ = C_IO (\ _ -> case consKind x of+  Branching -> Prelude.return (IOVal (if isGenerator (orRef x) +                              then C_Left x +                              else C_Right x))+  _         -> Prelude.return (IOVal (C_Right x)))++---------------------------------------------------------------------------------+-- various normal forms in io monad+---------------------------------------------------------------------------------++-- yield head normal form with current state +-- (including fetching and looking up variable bindings)+-- then apply continuation on it and make sure that you got a value+-- of type io before finally executing that action.++headNormalFormIO :: (Curry a,Curry b) => Prim (a -> Result (C_IO b)) -> a -> Result (C_IO b)+headNormalFormIO cont x _ = +  C_IO (hnfCTC (\ x' st -> hnfCTC exec2 (apply cont x' st) st) x)++searchTree :: Curry a => a -> Result (C_SearchTree a)+searchTree = searchTr ++hnfIO  x _ = C_IO (hnfCTC  (\ x _ -> Prelude.return (IOVal x)) x)+nfIO   x _ = C_IO (nfCTC   (\ x _ -> Prelude.return (IOVal x)) x)+gnfIO  x _ = C_IO (ghnfCTC (\ x _ -> Prelude.return (IOVal x)) x)+ghnfIO x _ = C_IO (ghnfCTC (\ x _ -> Prelude.return (IOVal x)) x)++---------------------------------------------------------------------------------+-- rich search trees+---------------------------------------------------------------------------------++getRichSearchTree :: Curry a => a -> Result (C_IO (C_RichSearchTree a))+getRichSearchTree x _ = C_IO (\ state -> Prelude.return (IOVal (richSearchTr x state)))++richSearchTree :: Curry a => a -> Result (C_RichSearchTree a)+richSearchTree = richSearchTr ++--inject :: Curry a => C_Context -> a -> C_RichSearchTree a+--inject (Context c) = richSearchTr c+ +richSearchTr :: Curry a => a -> Result (C_RichSearchTree a)+richSearchTr x state = +  transVal (nfCTC (nfCTC (\ x _ -> x)) x state)+  where+    transVal x = case consKind x of+                   Val       -> C_RichValue x+                   Failed    -> C_RichFail (toCurry (exceptions x))+                   Branching -> transBranching (orRef x) (branches x)++    transBranching _  []         = C_RichFail (C_ErrorCall List)+    transBranching _  [x]        = transVal x+    transBranching r  xs@(_:_:_) = C_RichChoice (C_OrRef r)+                                            (fromHaskellList (map transVal xs))++instance ConvertCH C_Exception Exception where+  toCurry (ErrorCall s)        = C_ErrorCall (toCurry s)+  toCurry (PatternMatchFail s) = C_PatternMatchFail (toCurry s)+  toCurry (AssertionFailed s)  = C_AssertionFailed (toCurry s)+  toCurry (IOException s)      = C_IOException (toCurry s)+  toCurry PreludeFailed        = C_PreludeFailed++  fromCurry (C_ErrorCall s)        = ErrorCall (fromCurry s)+  fromCurry (C_PatternMatchFail s) = PatternMatchFail (fromCurry s)+  fromCurry (C_AssertionFailed s)  = AssertionFailed (fromCurry s)+  fromCurry (C_IOException s)      = IOException (fromCurry s)+  fromCurry C_PreludeFailed        = PreludeFailed++---------------------------------------------------------------------------------+-- parallel search+---------------------------------------------------------------------------------++parallelSearch :: Curry a => a -> Result (C_IO (List a))+parallelSearch v _ = C_IO (\state -> do+  chan <- newChan+  mvar <- newEmptyMVar+  qsem <- newMyQSem 0+  tid <- forkIO (searchThread qsem mvar chan +                              (nfCTC (nfCTC (\ x _ -> x)) v state))+  putMVar mvar [tid]+  --addFinalizer res (stopSearch mvar2)+  res <- myGetChanContents qsem chan+  Prelude.return (IOVal (fromHaskellList res)))+++myGetChanContents :: Show a => MyQSem -> Chan (Maybe a) -> IO [a]+myGetChanContents qsem chan =+  unsafeInterleaveIO ( do+    decMyQSem qsem+    x <- readChan chan+    case x of+         Nothing -> Prelude.return []+         Just y -> do+            xs <- myGetChanContents qsem chan+            Prelude.return (y:xs) )+++stopSearch :: MVar [ThreadId] -> IO ()+stopSearch mvar = do+  print "start"+  ids <- takeMVar mvar+  mapM_ killThread ids+  --putMVar mvar []+++removeId :: MVar [ThreadId] -> Chan (Maybe a) -> ThreadId -> IO ()+removeId mvar chan tid = do+  ids <- takeMVar mvar+  let newids = delete tid ids+  case newids of+       [] -> writeChan chan Nothing -- >> putMVar mvar []+       _  -> putMVar mvar newids +++searchThread :: Curry a => MyQSem -> MVar [ThreadId] -> Chan (Maybe a) +             -> a -> IO ()+searchThread qsem mvar chan x = do+  case consKind x of+    Val       -> incMyQSem qsem >> writeChan chan (Just x) >> terminate+    Failed    -> terminate+    Branching -> do+      --yield+      testMyQSem qsem+      let b:bs = branches x+      -- to prevent the threads from terminating till their Ids are registered+      ids <- takeMVar mvar  +      newIds <- mapM (forkIO . searchThread qsem mvar chan) bs+      putMVar mvar (newIds++ids)+      searchThread qsem mvar chan b+ where+  noThreads = do+    ids <- takeMVar mvar+    putStrLn ("noThreads: " ++ show (length ids))+    putMVar mvar ids+  terminate = do+    tid <- myThreadId+    removeId mvar chan tid++newtype MyQSem = MyQSem (MVar (Int, [MVar ()]))++-- |Build a new 'MyQSem'+newMyQSem :: Int -> IO MyQSem+newMyQSem init = do+   sem <- newMVar (init,[])+   Prelude.return (MyQSem sem)+++-- |Wait for a unit to become available+incMyQSem :: MyQSem -> IO ()+incMyQSem (MyQSem sem) = do+   (avail,blocked) <- takeMVar sem+   putMVar sem (avail+1,blocked)+++-- |Signal that a unit of the 'MyQSem' is available+decMyQSem :: MyQSem -> IO ()+decMyQSem (MyQSem sem) = do+   (avail,blocked) <- takeMVar sem+   if avail>0 then putMVar sem (avail-1,blocked)+              else mapM_ (flip putMVar ()) blocked >> putMVar sem (avail-1,[]) +++testMyQSem :: MyQSem -> IO ()+testMyQSem (MyQSem sem) = do+   x@(avail,blocked) <- takeMVar sem+   if avail<0 then putMVar sem x+              else do+                block <- newEmptyMVar+                putMVar sem (avail,block:blocked)+                takeMVar block++-------------------------------+-- covering non-determinism+-------------------------------++cover :: Curry a => a -> Result a+cover x st = case consKind x of+              Branching -> branching (Curry.RunTimeSystem.cover (orRef x)) +                                     (map (flip Curry.Module.Meta.cover st) (branches x))+              _ -> x++-----------------------------------+-- encapsulate to head normal form+-----------------------------------++st :: Curry a => a -> Result (C_SearchTree a)+st x s = transVal (hnfCTC (\ x _ -> x) x s)+  where+    transVal x = case consKind x of+        Val       -> C_Value x+        Failed    -> C_Fail+        Branching -> let ref = orRef x in +          if   isCovered ref+          then C_SearchTreeOr (uncover ref) (map (flip st s) (branches x))+          else C_Choice (fromHaskellList (map transVal (branches x)))++-----------------------------------+-- encapsulate to head normal form+-----------------------------------++richST :: Curry a => a -> Result (C_RichSearchTree a)+richST x s = transVal (hnfCTC (\ x _ -> x) x s)+  where+    transVal x = case consKind x of+        Val       -> C_RichValue x+        Failed    -> C_RichFail (toCurry (exceptions x))+        Branching -> let ref = orRef x in +          if   isCovered ref+          then C_RichSearchTreeOr (uncover ref) +                                  (map (flip richST s) (branches x))+          else C_RichChoice (C_OrRef (orRef x))+                        (fromHaskellList (map transVal (branches x)))++-----------------------------+-- the general question mark+-----------------------------++ors :: Curry a => List a -> Result a+ors xs _ = branching (error "Unsafe.ors") (toHaskellList xs)+++-- temporarily added++prim_throw :: Curry a => C_Exception -> Result a+prim_throw e _ = Curry.RunTimeSystem.failed (fromCurry e)+++-- end included++data C_RichSearchTree t0 = C_RichFail Curry.Module.Meta.C_Exception+  | C_RichValue t0+  | C_RichChoice Curry.Module.Meta.C_OrRef (Curry.Module.Prelude.List (Curry.Module.Meta.C_RichSearchTree t0))+  | C_RichSuspend+  | C_RichSearchTreeFail Curry.RunTimeSystem.C_Exceptions+  | C_RichSearchTreeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Meta.C_RichSearchTree t0))++data C_Exception = C_ErrorCall (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+  | C_PatternMatchFail (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+  | C_AssertionFailed (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+  | C_IOException (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+  | C_PreludeFailed+  | C_ExceptionFail Curry.RunTimeSystem.C_Exceptions+  | C_ExceptionOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Meta.C_Exception)++data C_Seq t0 = C_Nil+  | C_Cons t0 (Curry.Module.Meta.C_Seq t0)+  | C_Continued (Curry.Module.Meta.C_Seq t0)+  | C_SeqFail Curry.RunTimeSystem.C_Exceptions+  | C_SeqOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Meta.C_Seq t0))++instance (BaseCurry t0) => BaseCurry (Curry.Module.Meta.C_RichSearchTree t0) where+  nf f (Curry.Module.Meta.C_RichFail x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_RichFail(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Meta.C_RichValue x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_RichValue(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Meta.C_RichChoice x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Meta.C_RichChoice(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Meta.C_RichFail x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_RichFail(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Meta.C_RichValue x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_RichValue(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Meta.C_RichChoice x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Meta.C_RichChoice(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Meta.C_RichSearchTreeOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.Meta.C_RichFail(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_RichValue(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_RichChoice(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_RichSuspend]))(2)++  failed  = Curry.Module.Meta.C_RichSearchTreeFail++  branching  = Curry.Module.Meta.C_RichSearchTreeOr++  consKind (Curry.Module.Meta.C_RichSearchTreeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Meta.C_RichSearchTreeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Meta.C_RichSearchTreeFail x) = x++  orRef (Curry.Module.Meta.C_RichSearchTreeOr x _) = x++  branches (Curry.Module.Meta.C_RichSearchTreeOr _ x) = x++++++instance BaseCurry Curry.Module.Meta.C_Exception where+  nf f (Curry.Module.Meta.C_ErrorCall x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_ErrorCall(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Meta.C_PatternMatchFail x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_PatternMatchFail(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Meta.C_AssertionFailed x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_AssertionFailed(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Meta.C_IOException x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_IOException(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Meta.C_ErrorCall x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_ErrorCall(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Meta.C_PatternMatchFail x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_PatternMatchFail(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Meta.C_AssertionFailed x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_AssertionFailed(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Meta.C_IOException x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_IOException(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Meta.C_ExceptionOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Meta.C_ErrorCall(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_PatternMatchFail(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_AssertionFailed(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_IOException(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_PreludeFailed]))(1)++  failed  = Curry.Module.Meta.C_ExceptionFail++  branching  = Curry.Module.Meta.C_ExceptionOr++  consKind (Curry.Module.Meta.C_ExceptionOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Meta.C_ExceptionFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Meta.C_ExceptionFail x) = x++  orRef (Curry.Module.Meta.C_ExceptionOr x _) = x++  branches (Curry.Module.Meta.C_ExceptionOr _ x) = x++++++instance (BaseCurry t0) => BaseCurry (Curry.Module.Meta.C_Seq t0) where+  nf f (Curry.Module.Meta.C_Cons x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Meta.C_Cons(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Meta.C_Continued x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_Continued(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Meta.C_Cons x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Meta.C_Cons(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Meta.C_Continued x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Meta.C_Continued(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Meta.C_SeqOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.Meta.C_Nil,Curry.Module.Meta.C_Cons(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Meta.C_Continued(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(2)++  failed  = Curry.Module.Meta.C_SeqFail++  branching  = Curry.Module.Meta.C_SeqOr++  consKind (Curry.Module.Meta.C_SeqOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Meta.C_SeqFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Meta.C_SeqFail x) = x++  orRef (Curry.Module.Meta.C_SeqOr x _) = x++  branches (Curry.Module.Meta.C_SeqOr _ x) = x++++++instance (Curry t0) => Curry (Curry.Module.Meta.C_RichSearchTree t0) where+  strEq (Curry.Module.Meta.C_RichFail x1) (Curry.Module.Meta.C_RichFail y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Meta.C_RichValue x1) (Curry.Module.Meta.C_RichValue y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Meta.C_RichChoice x1 x2) (Curry.Module.Meta.C_RichChoice y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq Curry.Module.Meta.C_RichSuspend Curry.Module.Meta.C_RichSuspend st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Meta.C_RichFail x1) (Curry.Module.Meta.C_RichFail y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Meta.C_RichValue x1) (Curry.Module.Meta.C_RichValue y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Meta.C_RichChoice x1 x2) (Curry.Module.Meta.C_RichChoice y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq Curry.Module.Meta.C_RichSuspend Curry.Module.Meta.C_RichSuspend st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Meta.C_RichFail x1) st = Curry.Module.Meta.C_RichFail(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Meta.C_RichValue x1) st = Curry.Module.Meta.C_RichValue(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Meta.C_RichChoice x1 x2) st = Curry.Module.Meta.C_RichChoice(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f Curry.Module.Meta.C_RichSuspend st = Curry.Module.Meta.C_RichSuspend++  foldCurry f c (Curry.Module.Meta.C_RichFail x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Meta.C_RichValue x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Meta.C_RichChoice x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c Curry.Module.Meta.C_RichSuspend st = c++  typeName _ = "RichSearchTree"++  showQ d (Curry.Module.Meta.C_RichFail x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.RichFail "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Meta.C_RichValue x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.RichValue "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Meta.C_RichChoice x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.RichChoice "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ _ Curry.Module.Meta.C_RichSuspend = Prelude.showString("Meta.RichSuspend")+  showQ _ (Curry.Module.Meta.C_RichSearchTreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Meta.C_Exception where+  strEq (Curry.Module.Meta.C_ErrorCall x1) (Curry.Module.Meta.C_ErrorCall y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Meta.C_PatternMatchFail x1) (Curry.Module.Meta.C_PatternMatchFail y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Meta.C_AssertionFailed x1) (Curry.Module.Meta.C_AssertionFailed y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Meta.C_IOException x1) (Curry.Module.Meta.C_IOException y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq Curry.Module.Meta.C_PreludeFailed Curry.Module.Meta.C_PreludeFailed st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Meta.C_ErrorCall x1) (Curry.Module.Meta.C_ErrorCall y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Meta.C_PatternMatchFail x1) (Curry.Module.Meta.C_PatternMatchFail y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Meta.C_AssertionFailed x1) (Curry.Module.Meta.C_AssertionFailed y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Meta.C_IOException x1) (Curry.Module.Meta.C_IOException y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq Curry.Module.Meta.C_PreludeFailed Curry.Module.Meta.C_PreludeFailed st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Meta.C_ErrorCall x1) st = Curry.Module.Meta.C_ErrorCall(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Meta.C_PatternMatchFail x1) st = Curry.Module.Meta.C_PatternMatchFail(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Meta.C_AssertionFailed x1) st = Curry.Module.Meta.C_AssertionFailed(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Meta.C_IOException x1) st = Curry.Module.Meta.C_IOException(f((0::Int))(x1)(st))+  propagate f Curry.Module.Meta.C_PreludeFailed st = Curry.Module.Meta.C_PreludeFailed++  foldCurry f c (Curry.Module.Meta.C_ErrorCall x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Meta.C_PatternMatchFail x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Meta.C_AssertionFailed x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Meta.C_IOException x1) st = f(x1)(c)(st)+  foldCurry f c Curry.Module.Meta.C_PreludeFailed st = c++  typeName _ = "Exception"++  showQ d (Curry.Module.Meta.C_ErrorCall x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.ErrorCall "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Meta.C_PatternMatchFail x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.PatternMatchFail "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Meta.C_AssertionFailed x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.AssertionFailed "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Meta.C_IOException x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.IOException "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ Curry.Module.Meta.C_PreludeFailed = Prelude.showString("Meta.PreludeFailed")+  showQ _ (Curry.Module.Meta.C_ExceptionOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0) => Curry (Curry.Module.Meta.C_Seq t0) where+  strEq Curry.Module.Meta.C_Nil Curry.Module.Meta.C_Nil st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Meta.C_Cons x1 x2) (Curry.Module.Meta.C_Cons y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq (Curry.Module.Meta.C_Continued x1) (Curry.Module.Meta.C_Continued y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Meta.C_Nil Curry.Module.Meta.C_Nil st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Meta.C_Cons x1 x2) (Curry.Module.Meta.C_Cons y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq (Curry.Module.Meta.C_Continued x1) (Curry.Module.Meta.C_Continued y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Meta.C_Nil st = Curry.Module.Meta.C_Nil+  propagate f (Curry.Module.Meta.C_Cons x1 x2) st = Curry.Module.Meta.C_Cons(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f (Curry.Module.Meta.C_Continued x1) st = Curry.Module.Meta.C_Continued(f((0::Int))(x1)(st))++  foldCurry f c Curry.Module.Meta.C_Nil st = c+  foldCurry f c (Curry.Module.Meta.C_Cons x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c (Curry.Module.Meta.C_Continued x1) st = f(x1)(c)(st)++  typeName _ = "Seq"++  showQ _ Curry.Module.Meta.C_Nil = Prelude.showString("Meta.Nil")+  showQ d (Curry.Module.Meta.C_Cons x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.Cons "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ d (Curry.Module.Meta.C_Continued x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Meta.Continued "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Meta.C_SeqOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Meta.C_RichSearchTree t0) where+  showsPrec d (Curry.Module.Meta.C_RichFail x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("RichFail "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Meta.C_RichValue x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("RichValue "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Meta.C_RichChoice x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("RichChoice "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec _ Curry.Module.Meta.C_RichSuspend = Prelude.showString("RichSuspend")+  showsPrec _ (Curry.Module.Meta.C_RichSearchTreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Meta.C_Exception where+  showsPrec d (Curry.Module.Meta.C_ErrorCall x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("ErrorCall "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Meta.C_PatternMatchFail x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("PatternMatchFail "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Meta.C_AssertionFailed x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("AssertionFailed "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Meta.C_IOException x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("IOException "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ Curry.Module.Meta.C_PreludeFailed = Prelude.showString("PreludeFailed")+  showsPrec _ (Curry.Module.Meta.C_ExceptionOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Meta.C_Seq t0) where+  showsPrec _ Curry.Module.Meta.C_Nil = Prelude.showString("Nil")+  showsPrec d (Curry.Module.Meta.C_Cons x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Cons "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec d (Curry.Module.Meta.C_Continued x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Continued "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Meta.C_SeqOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0) => Read (Curry.Module.Meta.C_RichSearchTree t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_RichFail(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("RichFail")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_RichValue(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("RichValue")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_RichChoice(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("RichChoice")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Meta.C_RichSuspend)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("RichSuspend")(r)])(r))))++++++instance Read Curry.Module.Meta.C_Exception where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_ErrorCall(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("ErrorCall")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_PatternMatchFail(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("PatternMatchFail")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_AssertionFailed(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("AssertionFailed")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_IOException(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("IOException")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Meta.C_PreludeFailed)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("PreludeFailed")(r)])(r)))))++++++instance (Read t0) => Read (Curry.Module.Meta.C_Seq t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Meta.C_Nil)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("Nil")(r)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_Cons(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("Cons")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Meta.C_Continued(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Meta")("Continued")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r)))++++++c_isFree :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Either t0 t0)+c_isFree x1 st = Curry.Module.Meta.c_headNormalFormIO(Curry.Module.Prelude.pf(Curry.Module.Meta.c_prim_isFree))(x1)(st)++++c_throw :: (Curry t0) => Curry.Module.Meta.C_Exception -> Curry.RunTimeSystem.State -> t0+c_throw x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Meta.c_prim_throw))(x1)(st)++++c_list :: (Curry t0) => (Curry.Module.Meta.C_Seq t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_list x1@Curry.Module.Meta.C_Nil st = Curry.Module.Prelude.List+c_list x1@(Curry.Module.Meta.C_Cons x2 x3) st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Meta.c_list(x3)(st))+c_list x1@(Curry.Module.Meta.C_Continued x4) st = Curry.Module.Meta.c_list(x4)(st)+c_list (Curry.Module.Meta.C_SeqOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Meta.c_list(x)(st))(i)(xs)(st)+c_list x st = Curry.RunTimeSystem.patternFail("Meta.list")(x)++++c_interleave :: (Curry t0) => (Curry.Module.Meta.C_Seq t0) -> (Curry.Module.Meta.C_Seq t0) -> Curry.RunTimeSystem.State -> Curry.Module.Meta.C_Seq t0+c_interleave x1@Curry.Module.Meta.C_Nil x2 st = Curry.Module.Meta.C_Continued(x2)+c_interleave x1@(Curry.Module.Meta.C_Cons x3 x4) x2 st = Curry.Module.Meta.C_Cons(x3)(Curry.Module.Meta.c_interleave(x2)(x4)(st))+c_interleave x1@(Curry.Module.Meta.C_Continued x5) x2 st = Curry.Module.Meta.c_interleave_case_0(x1)(x5)(x2)(st)+c_interleave (Curry.Module.Meta.C_SeqOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Meta.c_interleave(x)(x2)(st))(i)(xs)(st)+c_interleave x x2 st = Curry.RunTimeSystem.patternFail("Meta.interleave")(x)++++c_seq :: (Curry t0) => (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Meta.C_Seq t0+c_seq x1@Curry.Module.Prelude.C_Fail st = Curry.Module.Meta.C_Nil+c_seq x1@(Curry.Module.Prelude.C_Value x2) st = Curry.Module.Meta.C_Cons(x2)(Curry.Module.Meta.C_Nil)+c_seq x1@(Curry.Module.Prelude.C_Choice x3) st = Curry.Module.Prelude.c_foldr1(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Meta.c_interleave))((Curry.Module.Prelude.:<)(Curry.Module.Meta.C_Nil)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Meta.c_seq))(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.pf(Curry.Module.Meta.c_isValOrChoice))(x3)(st))(st)))(st)+c_seq x1@Curry.Module.Prelude.C_Suspend st = Curry.Module.Meta.C_Nil+c_seq (Curry.Module.Prelude.C_SearchTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Meta.c_seq(x)(st))(i)(xs)(st)+c_seq x st = Curry.RunTimeSystem.patternFail("Meta.seq")(x)++++c_isValOrChoice :: (Curry t0) => (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isValOrChoice x1@Curry.Module.Prelude.C_Fail st = Curry.Module.Prelude.C_False+c_isValOrChoice x1@(Curry.Module.Prelude.C_Value x2) st = Curry.Module.Prelude.C_True+c_isValOrChoice x1@(Curry.Module.Prelude.C_Choice x3) st = Curry.Module.Prelude.C_True+c_isValOrChoice x1@Curry.Module.Prelude.C_Suspend st = Curry.Module.Prelude.C_False+c_isValOrChoice (Curry.Module.Prelude.C_SearchTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Meta.c_isValOrChoice(x)(st))(i)(xs)(st)+c_isValOrChoice x st = Curry.RunTimeSystem.patternFail("Meta.isValOrChoice")(x)++++c_allValuesI :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_allValuesI st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Meta.c_list))(Curry.Module.Prelude.pf(Curry.Module.Meta.c_seq))(st)++++c_interleave_case_0 x1 x5 x2@Curry.Module.Meta.C_Nil st = x1+c_interleave_case_0 x1 x5 x2@(Curry.Module.Meta.C_Cons x6 x7) st = Curry.Module.Meta.C_Cons(x6)(Curry.Module.Meta.c_interleave(x5)(x7)(st))+c_interleave_case_0 x1 x5 x2@(Curry.Module.Meta.C_Continued x8) st = Curry.Module.Meta.C_Continued(Curry.Module.Meta.c_interleave(x5)(x8)(st))+c_interleave_case_0 x1 x5 (Curry.Module.Meta.C_SeqOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Meta.c_interleave_case_0(x1)(x5)(x)(st))(i)(xs)(st)+c_interleave_case_0 x1 x5 x st = Curry.RunTimeSystem.patternFail("Meta.interleave_case_0")(x)++++c_prim_isFree :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Either t0 t0)+c_prim_isFree x1 st = Curry.Module.Meta.prim_isFree(x1)(st)++++c_headNormalFormIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1)) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1+c_headNormalFormIO x1 x2 st = Curry.Module.Meta.headNormalFormIO(x1)(x2)(st)++++c_searchTree :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_SearchTree t0+c_searchTree x1 st = Curry.Module.Meta.searchTree(x1)(st)++++c_gnfIO :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_gnfIO x1 st = Curry.Module.Meta.gnfIO(x1)(st)++++c_ghnfIO :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_ghnfIO x1 st = Curry.Module.Meta.ghnfIO(x1)(st)++++c_nfIO :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_nfIO x1 st = Curry.Module.Meta.nfIO(x1)(st)++++c_hnfIO :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_hnfIO x1 st = Curry.Module.Meta.hnfIO(x1)(st)++++c_getRichSearchTree :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Meta.C_RichSearchTree t0)+c_getRichSearchTree x1 st = Curry.Module.Meta.getRichSearchTree(x1)(st)++++c_richSearchTree :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Meta.C_RichSearchTree t0+c_richSearchTree x1 st = Curry.Module.Meta.richSearchTree(x1)(st)++++c_parallelSearch :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t0)+c_parallelSearch x1 st = Curry.Module.Meta.parallelSearch(x1)(st)++++c_cover :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> t0+c_cover x1 st = Curry.Module.Meta.cover(x1)(st)++++c_st :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_SearchTree t0+c_st x1 st = Curry.Module.Meta.st(x1)(st)++++c_richST :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Meta.C_RichSearchTree t0+c_richST x1 st = Curry.Module.Meta.richST(x1)(st)++++c_ors :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_ors x1 st = Curry.Module.Meta.ors(x1)(st)++++c_prim_throw :: (Curry t0) => Curry.Module.Meta.C_Exception -> Curry.RunTimeSystem.State -> t0+c_prim_throw x1 st = Curry.Module.Meta.prim_throw(x1)(st)++
+ dist/build/Curry/Module/Parser.hs view
@@ -0,0 +1,94 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Parser (module Curry.Module.Parser) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++type C_Parser t0 = (Curry.Module.Prelude.List t0) -> Curry.Module.Prelude.List t0++type C_ParserRep t0 t1 = t0 -> (Curry.Module.Prelude.List t1) -> Curry.Module.Prelude.List t1++op_60_124_62 :: (Curry t0) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)) -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+op_60_124_62 x1 x2 st = Curry.RunTimeSystem.orF(Curry.Module.Prelude.pf(Curry.Module.Parser.c_'60'124'62'46_'35lambda2(x1)))(Curry.Module.Prelude.pf(Curry.Module.Parser.c_'60'124'62'46_'35lambda3(x2)))++++c_'60'124'62'46_'35lambda2 :: (Curry t2) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t2)) -> (Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t2+c_'60'124'62'46_'35lambda2 x1 x2 st = Curry.Module.Prelude.c_apply(x1)(x2)(st)++++c_'60'124'62'46_'35lambda3 :: (Curry t2) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t2)) -> (Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t2+c_'60'124'62'46_'35lambda3 x1 x2 st = Curry.Module.Prelude.c_apply(x1)(x2)(st)++++op_60_124_124_62 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))+op_60_124_124_62 x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.Parser.c_'60'124'124'62'46_'35lambda4(x1)(x2))++++c_'60'124'124'62'46_'35lambda4 :: (Curry t17,Curry t18) => (Curry.Module.Prelude.Prim (t17 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t18) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t18))) -> (Curry.Module.Prelude.Prim (t17 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t18) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t18))) -> t17 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t18) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t18)+c_'60'124'124'62'46_'35lambda4 x1 x2 x3 st = Curry.Module.Parser.op_60_124_62(Curry.Module.Prelude.c_apply(x1)(x3)(st))(Curry.Module.Prelude.c_apply(x2)(x3)(st))(st)++++op_60_42_62 :: (Curry t0) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)) -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+op_60_42_62 x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.Parser.c_'60'42'62'46seq'4614(x1)(x2))++++c_'60'42'62'46seq'4614 :: (Curry t23) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t23) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t23)) -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t23) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t23)) -> (Curry.Module.Prelude.List t23) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t23+c_'60'42'62'46seq'4614 x1 x2 x3 st = Curry.Module.Prelude.op_36_33_33(x2)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)++++op_62_62_62 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)) -> t1 -> t1 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+op_62_62_62 x1 x2 x3 x4 st = Curry.Module.Prelude.op_36_33_33(Curry.Module.Prelude.pf(Curry.Module.Parser.c_'62'62'62'46attach'4618(x3)(x2)))(Curry.Module.Prelude.c_apply(x1)(x4)(st))(st)++++c_'62'62'62'46attach'4618 :: (Curry t36,Curry t0) => t36 -> t36 -> t0 -> Curry.RunTimeSystem.State -> t0+c_'62'62'62'46attach'4618 x1 x2 x3 st = Curry.Module.Prelude.c_cond(Curry.Module.Prelude.op_61_58_61(x2)(x1)(st))(x3)(st)++++c_empty :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_empty x1 st = x1++++c_terminal :: (Curry t0) => t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_terminal x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_cond(Curry.Module.Prelude.op_61_58_61(x1)(x3)(st))(x4)(st)+c_terminal x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Parser.c_terminal(x1)(x)(st))(i)(xs)(st)+c_terminal x1 x st = Curry.RunTimeSystem.patternFail("Parser.terminal")(x)++++c_satisfy :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_satisfy x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.c_cond(Curry.Module.Prelude.op_38(Curry.Module.Prelude.op_61_58_61(Curry.Module.Prelude.c_apply(x1)(x4)(st))(Curry.Module.Prelude.C_True)(st))(Curry.Module.Prelude.op_61_58_61(x2)(x4)(st))(st))(x5)(st)+c_satisfy x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Parser.c_satisfy(x1)(x2)(x)(st))(i)(xs)(st)+c_satisfy x1 x2 x st = Curry.RunTimeSystem.patternFail("Parser.satisfy")(x)++++c_star :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))+c_star x1 st = Curry.RunTimeSystem.freeF(\ x2 -> Curry.RunTimeSystem.freeF(\ x3 -> Curry.Module.Parser.op_60_124_124_62(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Parser.op_62_62_62(Curry.Module.Parser.op_60_42_62(Curry.Module.Prelude.c_apply(x1)(x2)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Parser.c_star(x1)(st))(x3)(st))(st))((Curry.Module.Prelude.:<)(x2)(x3))))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Parser.op_62_62_62(Curry.Module.Prelude.pf(Curry.Module.Parser.c_empty))(Curry.Module.Prelude.List)))(st)))++++c_some :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1))+c_some x1 st = Curry.RunTimeSystem.freeF(\ x2 -> Curry.RunTimeSystem.freeF(\ x3 -> Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Parser.op_62_62_62(Curry.Module.Parser.op_60_42_62(Curry.Module.Prelude.c_apply(x1)(x2)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Parser.c_star(x1)(st))(x3)(st))(st))((Curry.Module.Prelude.:<)(x2)(x3)))))++
+ dist/build/Curry/Module/Prelude.hs view
@@ -0,0 +1,4760 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Prelude (module Curry.Module.Prelude) where++import Curry.RunTimeSystem++++-- begin included++++import Char+import List+import System.IO.Unsafe+import Data.IORef++import Prelude hiding ((==),(>>=),return,catch)+import qualified Prelude ((==),(>>=),return) +import System.IO++#if __GLASGOW_HASKELL__ >= 610+import Control.OldException (catch)+#else+import Control.Exception (catch)+#endif++-----------------------------------------------------------------+-- curry number types+-----------------------------------------------------------------++type C_Float = Prim Float++-----------------------------------------------------------------+-- The curry IO monad+-----------------------------------------------------------------++data C_IO t0 = C_IO (State -> IO (IOVal t0))+  | C_IOFail C_Exceptions+  | C_IOOr OrRef (Branches (C_IO t0))++data IOVal t0 = IOVal t0+  | IOValFail C_Exceptions+  | IOValOr OrRef (Branches (IO (IOVal t0)))++data C_Bool = C_False+  | C_True+  | C_BoolFail Curry.RunTimeSystem.C_Exceptions+  | C_BoolOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches C_Bool)+  | C_BoolAnd [C_Bool]++data C_Char = C_Char !Char+  | SearchChar  C_Four  C_Four  C_Four  C_Four+  | C_CharFail C_Exceptions+  | C_CharOr OrRef (Branches C_Char)++trace s x = unsafePerformIO (putStrLn s >> preturn x) +-----------------------------------------------------------------+-- type classes to extend BaseCurry to full Curry+-----------------------------------------------------------------++type StrEqResult = C_Bool++class (BaseCurry a,Show a,Read a) => Curry a where+  -- basic equalities +  strEq :: a -> a -> Result StrEqResult+  eq    :: a -> a -> Result C_Bool++  -- some generics+  propagate :: (forall b. Curry b => Int -> b -> Result b) -> a -> Result a+  foldCurry :: (forall c. Curry c => c -> b -> Result b) -> b -> a -> Result b++  -- name of the type+  typeName :: a -> String++  -- show qualified terms+  showQ :: Int -> a -> String -> String +  showQ = showsPrec++  showQList :: [a] -> String -> String+  showQList = showQStandardList++  -- generic programming+  --toC_Term   :: HNFMode -> State  -> a -> C_Data+  --fromC_Term :: C_Data -> a++class Generate a where+  genFree    :: Int -> [a]+  maxArity   :: a -> Int++-----------------------------------------------------------------+-- external Show instances+-----------------------------------------------------------------+++instance (Show t0) => Show (IOVal t0) where+  showsPrec d (IOVal x1) = showParen (d>10) showStr+   where+    showStr  = showString "IOVal" . showsPrec 11 x1+  showsPrec _ (IOValOr i _) = showString ('_':show (deref i))++instance Show (IO (IOVal a)) where+  show _  = "IO"++instance Show (C_IO a) where+  show _  = "IO"++instance Show C_Success where+  showsPrec _ C_Success = showString "success"+  showsPrec _ (C_SuccessOr ref _) = showString ('_':show (deref ref))++instance Show (a->b) where+  show _ = "FUNCTION"++instance Show a => Show (Prim a) where+  show (PrimValue x) = show x+  show (PrimOr r _) = "_"++show (deref r)++instance Show a => Show (List a) where+    showsPrec = showsPrecList (showsPrec 0) (showsPrec 0)++showsPrecList :: (a -> ShowS) -> ([a] -> ShowS) -> Int -> List a -> ShowS+showsPrecList recursiveCall listCall _ (ListOr r _) = +  showString ('_':show (deref r))+showsPrecList recursiveCall listCall _ xs +  | isFreeList xs = showChar '(' . showFreel xs+  | otherwise     = listCall (toHaskellList xs)+      where+        isFreeList List = False+        isFreeList (ListOr _ _) = True+        isFreeList (_ :< xs) = isFreeList xs+        isFreeList _ = True++        showFreel (x:<xs)         = recursiveCall x . showChar ':' . showFreel xs+	showFreel (ListOr r _)    = showString ('_':show (deref r)++")")++showQStandardList :: Curry a => [a] -> ShowS+showQStandardList xs = showChar '[' . +                       foldr (.) (showChar ']') +                             (intersperse (showChar ',') (map (showQ 0) xs))++fourToInt :: C_Four -> Either String Int+fourToInt  C_F0 = Right 0+fourToInt  C_F1 = Right 1+fourToInt  C_F2 = Right 2+fourToInt  C_F3 = Right 3+fourToInt  x@(C_FourOr _ _) = Left (show x)++intToFour :: Int -> C_Four+intToFour  0 = C_F0+intToFour  1 = C_F1+intToFour  2 = C_F2+intToFour  3 = C_F3++scToChar ::  C_Four ->  C_Four ->  C_Four ->  C_Four -> Either String Char+scToChar f1 f2 f3 f4 +  = chr' ((fourToInt f1**64)+++(fourToInt f2**16)+++(fourToInt f3**4)+++fourToInt f4)+  where +    Left s  ** _  = Left s+    Right i ** j  = Right (i*j)+    +    Left s  +++ _  = Left s+    Right i +++ Left s  = Left s+    Right i +++ Right j = Right (i+j)+    chr' (Right i) = Right (chr i)+    chr' (Left s)  = Left s++charToSc ::  Char -> C_Char+charToSc c = SearchChar (intToFour d64) (intToFour d16) (intToFour d4) (intToFour m4)+  where+    o = ord c+    (d64,m64) = divMod o 64+    (d16,m16) = divMod m64 16+    (d4,m4)   = divMod m16 4+    +instance Show C_Four where+  showsPrec d (C_FourOr r _) = showChar '_' . showsPrec d (deref r)+  showsPrec _ _ = error "probably due to usage of ($#) instead of ($##) \+                        \for an external function with argument type string or character"++instance Show C_Char where+  show (C_Char c) = show c+  show (SearchChar f1 f2 f3 f4) +    = either id show (scToChar f1 f2 f3 f4)+  show (C_CharOr r _) = '_':show (deref r)++  showList cs = if any isFreeChar cs+                  then showChar '[' . showFreel cs+                  else showChar '"' . showl cs   -- "+    where +      showl []       = showChar '"'+      showl (C_Char '"':cs) = showString "\\\"" . showl cs+      showl (C_Char c:cs)+       | oc <= 7   = showString "\\00" . shows oc . showl cs+       | oc <= 10  = showLitChar c . showl cs+       | oc <= 12  = showString "\\0" . shows oc . showl cs+       | oc <= 13  = showLitChar c . showl cs+       | oc <= 31  = showString "\\0" . shows oc . showl cs+       | oc <= 126 = showLitChar c . showl cs+       | otherwise = showString "\\" . shows oc . showl cs+       where oc = ord c+      showl (SearchChar f1 f2 f3 f4:cs) = +        either showString showLitChar (scToChar f1 f2 f3 f4) . showl cs+  +      showFreel [] = showString "]"+      showFreel [c] = showString (show c) . showString "]"+      showFreel (c:cs)   = showString (show c++",") . showFreel cs+      +      isFreeChar (SearchChar f1 f2 f3 f4) = +        Prelude.any ((Prelude.== Branching) . consKind) [f1,f2,f3,f4] +      isFreeChar _              = False++protectEsc p f             = f . cont+ where cont s@(c:_) | p c  = "\\&" ++ s+       cont s              = s++asciiTab = zip ['\NUL'..' ']+	   ["NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL",+	    "BS",  "HT",  "LF",  "VT",  "FF",  "CR",  "SO",  "SI",+	    "DLE", "DC1", "DC2", "DC3", "DC4", "NAK", "SYN", "ETB",+	    "CAN", "EM",  "SUB", "ESC", "FS",  "GS",  "RS",  "US",+	    "SP"]++instance Show C_Nat where+  showsPrec d x | isFreeNat x = showsPrecNat d x+                | otherwise   = showsPrec d (fromCurry x::Integer)+++isFreeNat :: C_Nat -> Bool+isFreeNat (C_NatOr _ _)    = True+isFreeNat C_IHi            = False+isFreeNat (C_I n)          = isFreeNat n+isFreeNat (C_O n)          = isFreeNat n++showsPrecNat :: Int -> C_Nat -> ShowS+showsPrecNat _ C_IHi = Prelude.showString((:)('I')((:)('H')((:)('i')([]))))+showsPrecNat d (C_O x1) = Prelude.showParen((Prelude.>)(d)(Prelude.fromInteger((10))))(showStr)+ where+  showStr  = (Prelude..)(Prelude.showString((:)('O')((:)(' ')([]))))(showsPrecNat(Prelude.fromInteger((11)))(x1))++showsPrecNat d (C_I x1) = Prelude.showParen((Prelude.>)(d)(Prelude.fromInteger((10))))(showStr)+ where+  showStr  = (Prelude..)(Prelude.showString((:)('I')((:)(' ')([]))))(showsPrecNat(Prelude.fromInteger((11)))(x1))++showsPrecNat _ (C_NatOr i _) = Prelude.showString((:)('_')(Prelude.show(deref i)))++instance Show C_Int where+  showsPrec _ C_Zero = showChar '0'+  showsPrec d x@(C_Pos n) +    | isFreeNat n = showParen (d>10) (showString "Pos " . showsPrecNat 11 n)+    | otherwise   = showsPrec d (fromCurry x::Integer)+  showsPrec d x@(C_Neg n) +    | isFreeNat n = showParen (d>10) (showString "Neg " . showsPrecNat 11 n)+    | otherwise   = showsPrec d (fromCurry x::Integer)+  showsPrec _ (C_IntOr i _) = showChar '_' . shows (deref i)++-----------------------------------------------------------------+-- external Read instances+-----------------------------------------------------------------++instance Read C_Four where+  readsPrec _ _ = error "I won't read four"++instance (Read t0) => Read (IOVal t0) where+  readsPrec d r = readParen (d>10) +    (\ r -> [ (IOVal x1,r1) | (_,r0) <- readQualified "Prelude" "IOVal" r, +                              (x1,r1) <- readsPrec 11 r0]) r++instance Read (IO (IOVal a)) where+  readsPrec = error "no reading IO"++instance Read (C_IO a) where+  readsPrec = error "no reading IO"++instance Read C_Success where+  readsPrec d r = Prelude.readParen(Prelude.False)+                  (\ r -> [(,)(C_Success)(r0) | +                           (_,r0) <- readQualified "Prelude" "Success" r])(r)++instance Read a => Read (Prim a) where+  readsPrec p s = map (\(x,y) -> (PrimValue x,y)) (readsPrec p s)++instance Read a => Read (List a) where+    readsPrec p = map (\ (x,y) -> (fromHaskellList x,y)) . readsPrec p++instance Read C_Char where+  readsPrec p s = map (\ (x,y) -> (toCurry x,y))+                      (((readsPrec p)::ReadS Char) s)++  readList s = map (\ (x,y) -> (map toCurry x,y))+                      ((readList::ReadS String) s)++instance Read (a->b) where+  readsPrec = error "reading FUNCTION"++instance Read C_Nat where+  readsPrec d r =  +       readParen False  (\ r -> [(C_IHi,r0)  | (_ ,r0) <- readQualified "Prelude" "IHi" r]) r+    ++ readParen (d>10) (\ r -> [(C_O x1,r1) | (_ ,r0) <- readQualified "Prelude" "O"   r, +                                               (x1,r1) <- readsPrec 11 r0]) r+    ++ readParen (d>10) (\ r -> [(C_I x1,r1) | (_ ,r0) <- readQualified "Prelude" "I"   r, +                                               (x1,r1) <- readsPrec 11 r0]) r+    ++ [(toCurry i,r0) | (i::Integer,r0) <- reads r]++instance Read C_Int where+  readsPrec d r = +       readParen (d>10) (\ r -> [(C_Neg x1,r1)  | (_ ,r0) <- readQualified "Prelude" "Neg" r, +                                                  (x1,r1) <- readsPrec 11 r0]) r+    ++ readParen False  (\ r -> [(C_Zero,r0)    | (_ ,r0) <- readQualified "Prelude" "Zero" r]) r +    ++ readParen (d>10) (\ r -> [(C_Pos x1,r1)  | (_ ,r0) <- readQualified "Prelude" "Pos" r,+                                                  (x1,r1) <- readsPrec 11 r0]) r+    ++ [(toCurry i,r0) | (i::Integer,r0) <- reads r]+++-----------------------------------------------------------------+-- external BaseCurry instances+-----------------------------------------------------------------++instance (BaseCurry t0) => BaseCurry (IOVal t0) where+  nf f (IOVal x1) state0 = nfCTC(\ v1 state1 -> f(IOVal(v1)) (state1))(x1) (state0)+  nf f x state = f(x) (state)++  gnf f (IOVal x1) state0 = gnfCTC(\ v1 state1 -> f(IOVal(v1)) (state1))(x1) (state0)+  gnf f x state = f(x) (state)++  generator i    = IOVal (generator i)++  failed  = IOValFail++  branching r bs = IOValOr r (map preturn bs)++  consKind (IOValOr _ _) = Branching+  consKind (IOValFail _) = Failed+  consKind _ = Val++  exceptions (IOValFail x) = x++  orRef (IOValOr x _) = x++  branches (IOValOr _ bs) = map unsafePerformIO bs++instance (BaseCurry t0) => BaseCurry (IO (IOVal t0)) where+  nf f x state = f(x) (state)+  gnf f x state = f(x)(state)++  failed x = preturn (IOValFail x)++  generator u       = preturn (generator u)++  branching r bs = preturn (IOValOr r bs)++  consKind x = consKind (unsafePerformIO x)++  exceptions x = exceptions (unsafePerformIO x)++  orRef x = orRef (unsafePerformIO x)++  branches x = unsafePerformIO (x Prelude.>>= \ (IOValOr _ bs) -> preturn bs)++instance (BaseCurry t0) => BaseCurry (C_IO t0) where+  nf f x state = f(x)(state)+  gnf f x state = f(x)(state)++  generator i    = C_IO (\ _ -> generator i)++  failed  = C_IOFail++  branching  = C_IOOr++  consKind (C_IOOr _ _) = Branching+  consKind (C_IOFail _) = Failed+  consKind _ = Val++  exceptions (C_IOFail x) = x++  orRef (C_IOOr x _) = x++  branches (C_IOOr _ x) = x+++instance BaseCurry C_Char where+  nf f (SearchChar x1 x2 x3 x4) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> f(SearchChar(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x store = f(x)(store)++  gnf f (SearchChar x1 x2 x3 x4) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> f(SearchChar(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x store = f(x)(store)+  ++  consKind (C_CharOr _ _) = Branching+  consKind (C_CharFail _) = Failed+  consKind _ = Val++  generator i = withRef ( \r -> SearchChar (generator r) +                                           (generator (r+1)) +                                           (generator (r+2)) +                                           (generator (r+3))) 3++  orRef      (C_CharOr x _) = x+  branches   (C_CharOr _ x) = x++  failed = C_CharFail++  exceptions (C_CharFail x) = x++  branching  = C_CharOr+++instance Generate a => BaseCurry (Prim a) where+  nf f x store = f(x)(store)++  gnf f x store = f(x)(store)++  generator i    = gen genFree +    where+      gen f = let max = maxArity (head (f 0)) in+        withRef (\r -> PrimOr (mkRef r max i)+                              (map PrimValue (f r)))+                max++  failed = PrimFail+  branching = PrimOr++  consKind (PrimOr _ _) = Branching+  consKind (PrimFail _) = Failed+  consKind _ = Val++  exceptions (PrimFail x) = x++  orRef (PrimOr x _) = x++  branches (PrimOr _ x) = x+++instance (BaseCurry t0) => BaseCurry (List t0) where+  nf f ((:<) x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f((:<)(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f ((:<) x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f((:<)(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = withRef (\ r -> ListOr (mkRef r 2 i) +                        ([List,(:<)(generator(r+1))(generator(r+2))])) 2++  failed  = ListFail++  branching  = ListOr++  consKind (ListOr _ _) = Curry.RunTimeSystem.Branching+  consKind (ListFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (ListFail x) = x++  orRef (ListOr x _) = x++  branches (ListOr _ x) = x+++-----------------------------------------------------------------+-- converting between curry and haskell+-----------------------------------------------------------------++-- In Order to integrate Haskell functions we sometimes +-- need to convert values.+-- (Do we really need both directions? Or rather convert a b for both?)+class ConvertCH a b where+  fromCurry :: a -> b+  fromCurry = error "fromCurry"+  toCurry :: b -> a+  toCurry = error "toCurry"++instance ConvertCH C_Bool Bool where+  fromCurry C_True  = True+  fromCurry C_False = False++  toCurry True  = C_True+  toCurry False = C_False++isC_True C_True = True+isC_True _      = False++instance ConvertCH C_Char Char where+  fromCurry (C_Char c) = c+  fromCurry (SearchChar f0 f1 f2 f3) = +    either (error "convert to char") id (scToChar f0 f1 f2 f3)+  toCurry c = C_Char c++instance (ConvertCH a b) => ConvertCH (List a) [b] where+  fromCurry List = []+  fromCurry (x :< xs) = fromCurry x : fromCurry xs+  fromCurry (ListOr _ _) = error "or list"++  toCurry [] = List+  toCurry (x:xs) = toCurry x :< toCurry xs++-- sometimes you need conversion of lists without converting the elements+-- eg Searchtree, Show instance++toHaskellList :: List a -> [a]+toHaskellList List = []+toHaskellList (x :< xs) = x : toHaskellList xs++fromHaskellList :: [a] -> List a+fromHaskellList [] = List+fromHaskellList (x : xs) = x :< fromHaskellList xs++-- specify result type of toCurry "..." for code generation+fromHaskellString :: String -> List C_Char+fromHaskellString = toCurry++instance ConvertCH C_Int Integer where+  fromCurry C_Zero    = 0+  fromCurry (C_Pos i) = fromCurry i+  fromCurry (C_Neg i) = negate (fromCurry i)++  toCurry n = case compare n 0 of+   LT -> C_Neg (toCurry (abs n))+   EQ -> C_Zero+   GT -> C_Pos (toCurry (abs n))++instance ConvertCH C_Nat Integer where+  fromCurry (C_I bs) = 2 Prelude.* fromCurry bs Prelude.+ 1+  fromCurry (C_O bs) = 2 Prelude.* fromCurry bs+  fromCurry C_IHi    = 1++  toCurry n = case mod n 2 of+                1 -> if m Prelude.== 0 then C_IHi else C_I (toCurry m)+                0 -> C_O (toCurry m)+    where m = Prelude.div n 2+++instance ConvertCH C_Int Int where+  fromCurry c = fromInteger (fromCurry c)+  toCurry i   = toCurry (toInteger i)++instance ConvertCH (Prim a) a where+  toCurry = PrimValue +  fromCurry (PrimValue x) = x++-------------------------------------------------------------+-- basic functions used in instances of class GenericCurry+-------------------------------------------------------------+-- obscure names come from the standard operator +-- renaming scheme of the compiler.++-- implementation of concurrent (&)+-- no other implementation+-- basic concept: if one value suspends evaluate the other +-- TODO: include state information!+concAnd :: StrEqResult -> StrEqResult -> Result StrEqResult+concAnd C_True y _ = y+concAnd x@(C_BoolOr _ _) y st = maySwitch y x st+--concAnd (C_BoolOr r xs) y = C_BoolOr r (map (flip concAnd y) xs)+concAnd x@(C_BoolFail _) _ _ = x+concAnd x@C_False _ _ = x++maySwitch :: StrEqResult -> StrEqResult -> Result StrEqResult+maySwitch C_True x _ = x+maySwitch y@(C_BoolOr _ _) (C_BoolOr r xs) st = +             C_BoolOr r (map (\ x -> concAnd y x st) xs)+maySwitch x@(C_BoolFail _) _ _ = x+maySwitch x@C_False _ _ = x+{-+startBreadth :: [StrEqResult] -> Result StrEqResult+startBreadth cs st = onLists st [] cs++instance Eq C_Bool where+  C_True == C_True = True+  C_False == C_False = True+  _ == _ = False++allSame :: Eq a => [a] -> Bool+allSame []     = True+allSame (x:xs) = all (x==) xs++onLists :: Store -> [StrEqResult] -> [StrEqResult] -> StrEqResult+onLists _ []  []      = strEqSuccess+onLists _ _   (x@(C_BoolFail _):_) = x+onLists _ _   (C_False:_)   = C_False+onLists st ors (C_True:xs) = onLists st ors xs+onLists st ors (C_BoolAnd xs:ys) = onLists st ors (xs++ys)+onLists st ors (C_BoolOr ref xs:ys) +  | isChain ref = chain (\ x st -> onLists st ors (x:ys)) ref xs st+  | otherwise   = case fromStore ref st of+  Nothing -> onLists st (insertOr ref xs ors) ys+  Just i  -> onLists st ors (xs!!i : ys)+onLists st (C_BoolOr ref xs:ors) [] = +  let inBranch i x = maybe (failed $ curryError "onLists")+                           (\st -> onLists st ors [x])+                           (addToStore ref i st)+  in  C_BoolOr ref (zipWith inBranch [0..] xs)++insertOr ref xs [] = [C_BoolOr ref xs]+insertOr ref xs (o@(C_BoolOr ref2 xs2):ys) +  | ref==ref2 = C_BoolOr ref (zipWith insertAnd xs xs2) : ys+  | otherwise = o : insertOr ref xs ys++insertAnd C_True           y       	    = y+insertAnd C_False          _       	    = C_False+insertAnd x@(C_BoolFail _) _       	    = x+insertAnd x                C_True  	    = x+insertAnd _                C_False 	    = C_False+insertAnd _                x@(C_BoolFail _) = x+insertAnd o1@(C_BoolOr ref1 xs1) o2@(C_BoolOr ref2 xs2) +  | ref1 == ref2 = C_BoolOr ref1 (zipWith insertAnd xs1 xs2)+  | otherwise    = C_BoolAnd [o1,o2]+insertAnd o@(C_BoolOr _ _) (C_BoolAnd ys)   = C_BoolAnd (o:ys)+insertAnd (C_BoolAnd ys)   o@(C_BoolOr _ _) = C_BoolAnd (o:ys)+insertAnd (C_BoolAnd xs)   (C_BoolAnd ys)   = C_BoolAnd (xs++ys)+-}+--- implementation of (==)+--- no other implementation+genEq :: Curry t0 => t0 -> t0 -> Result C_Bool+genEq x y = ghnfCTC (\x'-> ghnfCTC (eq x') y) x++--- implementation of (=:=)+--- no other implementation+--- TODO: use state information+genStrEq :: Curry t0 => t0 -> t0 -> Result StrEqResult+genStrEq a b = (\ a' -> (onceMore a') `hnfCTC` b)  `hnfCTC` a+  where+    onceMore a' b' = (\ a'' -> unify a'' b') `hnfCTC` a'+    unify x y st = checkFree (consKind x) (consKind y)+      where+      checkFree Val Val = strEq x y st++      checkFree Branching Branching  +         | drx Prelude.== dry+         = C_True+         | otherwise = branching (equalFromTo ax bx drx ay by dry) [C_True]+         where (ax,bx,drx)=genInfo (orRef x)+               (ay,by,dry)=genInfo (orRef y)++      checkFree Branching _ = +        hnfCTC (\ x' -> unify x' y) +               (branching (narrowOrRef (orRef x)) (branches x)) st++      checkFree _ Branching = +        hnfCTC (unify x)+               (branching (narrowOrRef (orRef y)) (branches y)) st++      checkFree x   y   = error $ "checkFree " ++ show (x,y)++strEqFail :: String -> StrEqResult+strEqFail s = C_False --C_SuccessFail (ErrorCall ("(=:=) for type "++s))++strEqSuccess :: StrEqResult+strEqSuccess = C_True++--hcAppend [] ys = ys+--hcAppend (x:xs) ys = x:< hcAppend xs ys++-----------------------------------------------------------------+-- external Generate instances+-----------------------------------------------------------------++instance BaseCurry b => Generate (a -> Result b) where+  genFree i  = mkBranches (generator i)+  maxArity _ = 1++mkBranches :: BaseCurry b => b -> [a -> Result b]+mkBranches x = case consKind x of+       Val       -> [const (const x)]+       Branching -> map (const . const) (branches x)++instance Generate Float where+  genFree    = error "free variable of type Float"+  maxArity _ = error "free variable of type Float"++-----------------------------------------------------------------+-- external Curry instances+-----------------------------------------------------------------++instance (Curry t0) => Curry (List t0) where+  strEq List List st = strEqSuccess+  strEq ((:<) x1 x2) ((:<) y1 y2) st = concAnd(genStrEq(x1)(y1)(st))(genStrEq(x2)(y2)(st))(st)+  strEq _ x0 _ = strEqFail(typeName(x0))++  eq List List st = C_True+  eq ((:<) x1 x2) ((:<) y1 y2) st = op_38_38(genEq(x1)(y1)(st))(genEq(x2)(y2)(st))(st)+  eq _ _ _ = C_False++  propagate f List st = List+  propagate f ((:<) x1 x2) st = (:<)(f 0 (x1)(st))(f 1 (x2)(st))++  foldCurry f c List st = c+  foldCurry f c ((:<) x1 x2) st = f(x1)(f(x2)(c)(st))(st)++  typeName _ = "[]"++  showQ  = showsPrecList (showQ 0) showQList ++instance Curry C_Four where+  strEq C_F0 C_F0 _ = strEqSuccess+  strEq C_F1 C_F1 _ = strEqSuccess+  strEq C_F2 C_F2 _ = strEqSuccess+  strEq C_F3 C_F3 _ = strEqSuccess+  strEq x0   _    _ = strEqFail(typeName(x0))++  eq C_F0 C_F0 _ = C_True+  eq C_F1 C_F1 _ = C_True+  eq C_F2 C_F2 _ = C_True+  eq C_F3 C_F3 _ = C_True+  eq _    _    _ = C_False++  propagate _ C_F0 _ = C_F0+  propagate _ C_F1 _ = C_F1+  propagate _ C_F2 _ = C_F2+  propagate _ C_F3 _ = C_F3++  foldCurry _ c C_F0 _ = c+  foldCurry _ c C_F1 _ = c+  foldCurry _ c C_F2 _ = c+  foldCurry _ c C_F3 _ = c++  typeName _ = "Four"+++instance BaseCurry a => Curry (IO (IOVal a)) where +  strEq x y = error "IO.strEq"++  eq _ _ = error "IO.eq"++  propagate _ _ = error "propagate IOVal"++  foldCurry _ _ _ = error "foldCurry IOVal"++  typeName _ = "IOVal"++  --toC_Term _ _ _ = error "IO.toC_Term"+  --fromC_Term _   = error "IO.fromC_Term"+++instance BaseCurry a => Curry (C_IO a) where+  strEq _ _ = error "strEq IO"++  eq _ _ = error "eq IO"++  --subst store x = x++  propagate _ _ = error "propagate IO"++  foldCurry _ _ _ = error "foldCurry IO"++  typeName _ = "IO"++  --toC_Term _ _ (C_IOFreeVar r) = C_Free(C_Int(Prelude.toInteger(r)))+  --toC_Term _ _ _ = C_Data (C_Int 1) (toCurry "IO") List++  --fromC_Term (C_Free (C_Int r)) = C_IOFreeVar(Prelude.fromInteger(r))+  --fromC_Term _ = error "no converting IO"++instance Curry C_Char where+  strEq x@(C_Char c1) (C_Char c2) _+    | c1 Prelude.== c2 = C_True+  strEq c1@(SearchChar _ _ _ _) (C_Char c2) st = strEq c1 (charToSc c2) st +  strEq (C_Char c1) c2@(SearchChar _ _ _ _) st = strEq (charToSc c1) c2 st +  strEq (SearchChar x1 x2 x3 x4) (SearchChar y1 y2 y3 y4) st = concAnd (genEq(x1)(y1)st)(concAnd(genStrEq(x2)(y2)st)(concAnd(genStrEq(x3)(y3)st)(genStrEq(x4)(y4)st)st)st)st+  strEq _ x _ = strEqFail (typeName x)+++  eq (C_Char x1) (C_Char y1)             _  = toCurry (x1 Prelude.== y1)+  eq c1@(SearchChar _ _ _ _) (C_Char c2) st = eq c1 (charToSc c2) st+  eq (C_Char c1) c2@(SearchChar _ _ _ _) st = eq (charToSc c1) c2 st+  eq (SearchChar x1 x2 x3 x4) (SearchChar y1 y2 y3 y4) st = op_38_38 (genEq (x1)(y1)st) (op_38_38 (genEq(x2)(y2)st) (op_38_38(genEq(x3)(y3)st)(genEq(x4)(y4)st)st)st)st+  eq _ _ _ = C_False++  propagate _ c@(C_Char _) _ = c+  propagate f (SearchChar f0 f1 f2 f3) st = +    SearchChar (f 0 f0 st) (f 1 f1 st) (f 2 f2 st) (f 3 f3 st)++  foldCurry _ c (C_Char _) _ = c+  foldCurry f c (SearchChar f0 f1 f2 f3) st = f f0 (f f1 (f f2 (f f3 c st)st)st)st++  typeName _ = "Char"++  showQList = showList  ++  --toC_Term _ _ (C_Char c) = C_Data (C_Int (toInteger (ord c))) (toCurry (show c)) List+  --toC_Term _ _ (C_CharFreeVar r) = C_Free(C_Int(Prelude.toInteger(r)))++  --fromC_Term (C_Data (C_Int (i::Integer)) _ List) = C_Char (chr (fromInteger i))+  --fromC_Term (C_Data (C_IntFreeVar _) name List) = C_Char (read (fromCurry name))+  --fromC_Term (C_Free (C_Int r)) = C_CharFreeVar(Prelude.fromInteger(r))+++instance (Generate a,Show a,Read a,Eq a) => Curry (Prim a) where+  strEq x@(PrimValue v1) (PrimValue v2) _+    | v1 Prelude.== v2 = C_True --C_Success+    | otherwise = strEqFail (typeName x)++  eq (PrimValue v1) (PrimValue v2) _ = toCurry (v1 Prelude.== v2)++  propagate _ (PrimValue v1) _ = PrimValue v1++  foldCurry _ c (PrimValue _) _ = c++  --toC_Term _ _ (PrimValue x1) = let sx = show x1 in+  --    C_Data (C_Int (string2int sx)) (toCurry sx) List+  --toC_Term _ _ (PrimFreeVar r) = C_Free(C_Int(Prelude.toInteger(r)))++  --fromC_Term (C_Data _ name List) = PrimValue (read (fromCurry name))+  --fromC_Term (C_Free (C_Int r)) = PrimFreeVar(Prelude.fromInteger(r))+ +  typeName _ = "Prim"++++-----------------------------------------------------------------+-- external Curry instances+-----------------------------------------------------------------++instance Eq (a->b) where+  (==) = error "comparing FUNCTION"++++++infix  4 ===+infixr 0 & ++-----------------------------------------------------------------------+-- IO starter+-----------------------------------------------------------------------++preturn = Prelude.return++optChangeStore :: a -> (b -> Store -> a) -> ((Int -> Store) -> a) +               -> OrRef -> Branches b -> Store -> a+optChangeStore err det br = +  manipulateStore err det (\ _ -> br) (\ _ -> det)++curryIO :: Curry a => (Result (C_IO a)) -> IO a+curryIO x = let st = emptyStore in ioStart st (x st)++curryIOVoid :: Curry a => (Result (C_IO a)) -> IO ()+curryIOVoid x = curryIO x >> Prelude.return ()++ioStart :: Curry a => Store -> C_IO a -> IO a+ioStart st (C_IO act)            = act st Prelude.>>= curryDo st+ioStart _  (C_IOFail es)         = printExceptions es+ioStart st (C_IOOr ref bs)       =+  optChangeStore +    (printExceptions (curryError "ioStart"))+    (flip ioStart)+    (\st -> searchValC_IO [] (zipWith (mkChoice st) [0..] bs))+    ref +    bs +    st++curryDo :: Curry a => Store -> IOVal a -> IO a+curryDo _  (IOVal x)        = Prelude.return x+curryDo _  (IOValFail es)   = printExceptions es+curryDo st (IOValOr ref bs) =     +  optChangeStore +    (printExceptions (curryError "curryDo")) +    (\ x st -> x Prelude.>>= curryDo st)+    (\st -> searchIOVal [] (zipWith (mkChoice st) [0..] bs))+    ref +    bs+    st++mkChoice :: BaseCurry a => (Int -> Store) -> Int -> a -> (Store,a)+mkChoice st i x = (st i,x)++searchValC_IO :: Curry a => [C_Exceptions] -> [(Store,C_IO a)] -> IO a+searchValC_IO es []     = +  mapM_ printException es >> error "no solution in branching io value"+searchValC_IO _ ((st,C_IO act)   : _)  = act st Prelude.>>= curryDo st+searchValC_IO es ((_ ,C_IOFail e@(ErrorCall _)) : xs) = +  searchValC_IO (e:es) xs+searchValC_IO es ((_ ,C_IOFail e) : xs) = searchValC_IO es xs+searchValC_IO es ((st,C_IOOr ref bs) : xs) =  +  optChangeStore+    (searchValC_IO es xs)+    (\ x st -> case x of+        C_IO act   -> act st Prelude.>>= curryDo st+        C_IOOr _ _ -> searchValC_IO es ((st,x):xs)+        C_IOFail _ -> searchValC_IO es xs)+    -- switch arguments of (++) for breadth first (bad.), cf. also below+    (\ st -> searchValC_IO es (zipWith (mkChoice st) [0..] bs ++ xs))+    ref bs st++searchIOVal :: Curry a => [C_Exceptions] -> [(Store,IO (IOVal a))] -> IO a+searchIOVal es []                = +  mapM_ printException es >> error "no solution in branching io value"+searchIOVal es ((st,act) : stacts) = do+  x <- act+  case x of+    IOVal a        -> Prelude.return a+    IOValFail e@(ErrorCall _) -> searchIOVal (e:es) stacts+    IOValFail _    -> searchIOVal es stacts+      -- switch arguments of (++) for breadth first (bad.)+    IOValOr ref bs -> +      optChangeStore +        (searchIOVal (curryError "inconsistent Store":es) stacts)+        (\ x st -> searchIOVal es ((st,x):stacts))+        (\st -> searchIOVal es (zipWith (mkChoice st) [0..] bs ++ stacts))+        ref bs st++-- this is the place to change for implicit breadth first search+searchVal :: (Store -> a -> b) -> Store -> OrRef -> Branches a -> b+searchVal cont store ref [] =  error "top io failed"+searchVal cont store ref (x:bs) = cont store x++printException :: C_Exceptions -> IO ()+printException (PatternMatchFail s) = +  hPutStrLn stderr ("non-exhaustive patterns in function "++s)+printException (AssertionFailed s) = +  hPutStrLn stderr ("assertion failed with label "++s)+printException (IOException s) = +  hPutStrLn stderr ("io exception: " ++ s)+printException (ErrorCall s) = +  hPutStrLn stderr ("error : " ++s)+printException PreludeFailed = hPutStrLn stderr "Prelude.failed"++printExceptions :: C_Exceptions -> IO a+printExceptions e = +  printException e >> error "program error"++-----------------------------------------------------------------------+-- Int and Float+-----------------------------------------------------------------------+++instance Eq C_Int where+  x == y = (fromCurry x::Integer) Prelude.== fromCurry y++instance Num C_Int where+  fromInteger x = toCurry x+  x + y = toCurry ((fromCurry x::Integer) + fromCurry y)+  x * y = toCurry ((fromCurry x::Integer) * fromCurry y)+  +  abs (C_Neg x) = C_Pos x+  abs x = x++  signum (C_Pos _) = C_Pos C_IHi+  signum (C_Neg _) = C_Neg C_IHi+  signum x = x++instance Eq a => Eq (Prim a) where+  (PrimValue x) == (PrimValue y) = x Prelude.== y++instance (Num a) => Num (Prim a) where+  (PrimValue x) + (PrimValue y) = PrimValue (x+y)+  (PrimValue x) - (PrimValue y) = PrimValue (x-y)+  (PrimValue x) * (PrimValue y) = PrimValue (x*y)+  negate (PrimValue x) = PrimValue (negate x)+  abs    (PrimValue x) = PrimValue (abs x)+  signum (PrimValue x) = PrimValue (signum x)+  fromInteger x = PrimValue (fromInteger x)++instance Enum a => Enum (Prim a) where +    toEnum i = PrimValue (toEnum i)+    fromEnum (PrimValue x) = fromEnum x++instance Real a => Real (Prim a) where +    toRational (PrimValue x) = toRational x++instance Integral a => Integral (Prim a) where +    quotRem (PrimValue x) (PrimValue y) = let (x',y') = quotRem x y in +                                           (PrimValue x', PrimValue y')+    toInteger (PrimValue x) = toInteger x++instance Ord a => Ord (Prim a) where+   (PrimValue x) <= (PrimValue y) = x<=y++-----------------------------------------------------------------------+-- T0 is unit (), needed for IO primitives+-----------------------------------------------------------------------++instance ConvertCH T0 () where+  toCurry () = T0+  fromCurry T0 = () ++instance (ConvertCH a ha, ConvertCH b hb) => ConvertCH (T2 a b) (ha,hb) where+  toCurry (x,y) = T2 (toCurry x) (toCurry y)+  fromCurry (T2 x y) = (fromCurry x, fromCurry y) ++instance (ConvertCH a ha, ConvertCH b hb, ConvertCH c hc) =>+         ConvertCH (T3 a b c) (ha,hb,hc) where+  toCurry (x,y,z) = T3 (toCurry x) (toCurry y) (toCurry z)+  fromCurry (T3 x y z) = (fromCurry x, fromCurry y, fromCurry z) ++-----------------------------------------------------------------------+-- Maybe+-----------------------------------------------------------------------++instance (ConvertCH a b) => ConvertCH (C_Maybe a) (Maybe b) where+  fromCurry C_Nothing  = Nothing+  fromCurry (C_Just x) = Just (fromCurry x)++  toCurry Nothing  = C_Nothing+  toCurry (Just x) = C_Just (toCurry x)+++---------------------------------------------------------------------------------+-- external functions for Prelude+---------------------------------------------------------------------------------++($#) :: (Curry a, Curry b) => Prim (a -> Result b) -> a -> Result b+($#) cont x = prepApply ghnfCTC x cont ++($!) :: (Curry a,Curry b) => Prim (a -> Result b) -> a -> Result b+($!) cont x = prepApply hnfCTC x cont++($!!) :: (Curry a, Curry b) => Prim (a -> Result b) -> a -> Result b+($!!) cont x = prepApply nfCTC x cont++($##) :: (Curry a, Curry b) => Prim (a -> Result b) -> a -> Result b+($##) cont x = prepApply gnfCTC x cont++prim_error :: Curry a => C_String -> Result a+prim_error s _ = Curry.RunTimeSystem.failed (ErrorCall (fromCurry s))++failed :: Curry a => Result a+failed _ = Curry.RunTimeSystem.failed PreludeFailed ++(==) :: Curry a => a -> a -> Result C_Bool+(==) = genEq ++prim_ord :: C_Char -> Result C_Int+prim_ord cc _ = toCurry (ord (fromCurry cc))++prim_chr :: C_Int -> Result C_Char+prim_chr ci _ = toCurry (chr (fromCurry ci))++(===) :: Curry a => a -> a -> Result C_Bool --C_Success+(===) = genStrEq+ +success :: C_Success+success = C_Success++--concAnd' x y st = startBreadth [x,y] st++(&) :: C_Success -> C_Success -> Result C_Success+ -- (&) x y st = boolToSuccess (concAnd' (successToBool x) (successToBool y) st)+(&) x y st = boolToSuccess +               (concAnd (successToBool x st) +                        (successToBool y st) st) st++boolToSuccess C_True            _  = C_Success+boolToSuccess C_False           _  = C_SuccessFail (ErrorCall "&")+boolToSuccess (C_BoolFail e)    _  = C_SuccessFail e+boolToSuccess (C_BoolOr r xs)   st = mapOr boolToSuccess r xs st+++successToBool :: C_Success -> Result C_Bool+successToBool C_Success                _  = C_True+successToBool (C_SuccessFail e)        _  = C_BoolFail e+successToBool (C_SuccessOr r xs)       st = mapOr successToBool r xs st++--andBreadth :: List C_Bool -> Result C_Bool+--andBreadth xs st = startBreadth (toHaskellList xs) st++-- TODO: C_IO without State??? also other io-functions.+(>>=) :: (Curry a,Curry b) => C_IO a -> Prim (a -> Result (C_IO b)) -> Result (C_IO b)+(>>=) m f _ = C_IO (hnfCTC (exec f) m)++exec :: (Curry a,Curry b) => Prim (a -> Result (C_IO b)) -> C_IO a -> Result (IO (IOVal b))+exec f (C_IO m) st = m st Prelude.>>= \ x -> prim_do f x st++-- if it wasn't io, we could just write +--exec f st (C_IO m) = m st Prelude.>>= hnfCTC (fromIOVal f) st+-- with fromIOVal simply being+--fromIOVal::(Curry a,Curry b)=>Prim(a->C_IO b)->State->IOVal a->IO(IOVal b)+--fromIOVal f st (IOVal res) = hnfCTC exec2 st (apply f res)+-- and everything would work fine. But then for the susp and or cases+-- we would use unsafe io...+-- Thus, prim_do has to copy the code of ctcStore False+-- IMPORTANT: This code should correspond to BaseCurry.RunTimeSystem.ctcStore++prim_do ::  (Curry a,Curry b) => +            Prim (a -> Result (C_IO b)) -> IOVal a ->  Result (IO (IOVal b))+prim_do f x state = case x of+  IOVal res      -> hnfCTC exec2 (apply f res state) state+  IOValFail es   -> Prelude.return (IOValFail es)+  IOValOr ref bs -> +    optChangeStore+       (Curry.RunTimeSystem.failed $ curryError "prim_do")+       (\ x st -> x Prelude.>>= \ x' -> prim_do f x' st)+       (\ st -> Prelude.return (IOValOr ref +                  (zipWith (\ i x -> x Prelude.>>= \ x' -> cont x' (st i)) +                           [0..] bs)))+       ref bs state+  where+    cont x st = prim_do f x st++exec2 :: C_IO b -> Result (IO (IOVal b))+exec2 (C_IO f) = f +++return :: a -> Result (C_IO a)+return a _ = C_IO (\ _ -> Prelude.return (IOVal a))++prim_putChar :: C_Char -> Result (C_IO T0)+prim_putChar = ioFunc1 putChar ++getChar :: Result (C_IO C_Char)+getChar = ioFunc0 Prelude.getChar+ +prim_readFile :: C_String -> Result (C_IO C_String)+prim_readFile = ioFunc1 readFile ++prim_writeFile :: C_String -> C_String -> Result (C_IO T0)+prim_writeFile = ioFunc2 writeFile ++prim_appendFile :: C_String -> C_String -> Result (C_IO T0)+prim_appendFile = ioFunc2 appendFile ++catchFail :: Curry a => C_IO a -> C_IO a -> Result (C_IO a)+catchFail (C_IO act) err _ = +  C_IO (\ st -> catch (act st) (const (hnfCTC exec2 err st)))+catchFail (C_IOFail _) err _ = err+catchFail (C_IOOr ref bs) err st =+  optChangeStore +    err+    (flip catchFail err)+    (\st -> searchValCatch (zipWith (mkChoice st) [0..] bs) err)+    ref bs st++searchValCatch :: Curry a => [(Store,C_IO a)] -> C_IO a -> C_IO a+searchValCatch []     err = err+searchValCatch ((st,C_IO act)   : _)  err = catchFail (C_IO act) err st+searchValCatch ((_ ,C_IOFail _) : xs) err = searchValCatch xs err+searchValCatch ((st,C_IOOr ref bs) : xs)  err =  +  optChangeStore +    (searchValCatch xs err)+    (\ x st -> catchFail x err st)+    (\ st -> searchValCatch (zipWith (mkChoice st) [0..] bs ++ xs) err)+    ref bs st++++++prim_show :: (Show a,Curry a) => a -> Result C_String+prim_show x _ = toCurry (show x)++getSearchTree :: Curry a => a -> Result (C_IO (C_SearchTree a))+getSearchTree x _ = C_IO (\ state -> Prelude.return (IOVal (searchTr x state)))++ +searchTr :: Curry a => a -> Result (C_SearchTree a)+searchTr x state = transVal (nfCTC (nfCTC const) x state)+  where+    transVal x = case consKind x of+                   Val       -> C_Value x+                   Failed    -> C_Fail+                   Branching +                     | isGenerator (orRef x) -> C_Value x+                     | otherwise -> transBranching (branches x)++    transBranching []         = C_Fail+    transBranching [x]        = transVal x+    transBranching xs@(_:_:_) = C_Choice (fromHaskellList (map transVal xs))++{-+toData :: Curry a => a -> Result C_Data+toData _ st = prim_error (toCurry "toData not implemented") st --ctcStore True (toC_Term True) Nothing+++toNumData :: Curry a => a -> Result C_NumData+toNumData _ st = prim_error (toCurry "toNumData not implemented") st+  --ctcStore True (\ store x -> (conv2num (toC_Term True store x))) Nothing++++cmap _ List = List+cmap f (x :< xs) = f x :< cmap f xs++fromData :: Curry a => C_Data -> Result a+fromData _ st = prim_error (toCurry "fromData not implemented") st --fromC_Term+-}++prepApply :: (BaseCurry a,BaseCurry b) => +  ((b -> Result a) -> b -> Result a) -> b -> (Prim (b -> Result a)) -> Result a+prepApply  prep x (PrimValue f)     st = prep f x st+prepApply  prep x (PrimOr r bs)     st = mapOr (prepApply prep x) r bs st+prepApply  _    _  cont             _  = patternFail "Prelude.prepApply" cont++--apply :: (Curry b, Curry (Prim (a -> b))) => Prim (a -> b) -> a -> b+apply (PrimValue f)     x st = f x st+apply (PrimOr r bs)     x st = mapOr (\ f -> apply f x) r bs st+apply cont              _ st = patternFail "Prelude.apply" cont++-- these functions are employed for higher order+pf :: Curry b => (a -> Result b) -> Prim (a -> Result b)+pf = PrimValue ++pc :: Curry b => (a -> b) -> (Prim (a -> Result b))+pc f = PrimValue (\ x _  -> f x)++pa :: Curry c => (a -> Prim (b -> Result c)) -> Prim (a -> Result (Prim (b -> Result c)))+pa f = PrimValue (\ x _  -> f x)++cp :: (b -> c) -> (a -> b) -> a -> c+cp f g x = f (g x)+++cond :: Curry a => C_Success -> a -> Result a+cond C_Success  x _ = x+cond (C_SuccessOr r bs)     x st = mapOr (\ c -> cond c x) r bs st+cond x _ _ = patternFail "Prelude.cond" x+++ifVar :: (Curry a,Curry b) => b -> a -> a -> a+ifVar = error "ifVar not implemented"++---------------------------------------------+-- to ease connecting external functions +---------------------------------------------++extFunc1 :: (Curry a,Curry d,ConvertCH a b,ConvertCH d c) => (b->c) -> a -> Result d+extFunc1 f = gnfCTC (\ x' _ -> toCurry (f (fromCurry x'))) ++extFunc2 :: (Curry a, Curry c,Curry f,ConvertCH a b,ConvertCH c d,ConvertCH f e) => +            (b->d->e) -> a -> c -> Result f+extFunc2 f x y = +  gnfCTC (\x'->gnfCTC (\ y' _ -> toCurry (f (fromCurry x') (fromCurry y'))) y) x++extFunc3 :: (Curry c1, Curry c2, Curry c3, Curry cv,+             ConvertCH c1 h1,ConvertCH c2 h2,ConvertCH c3 h3,ConvertCH cv hv) => +            (h1->h2->h3->hv) -> c1 -> c2 -> c3 -> Result cv+extFunc3 f x y z = +  gnfCTC (\x' ->+  gnfCTC (\y' -> +  gnfCTC (\z' _ -> toCurry (f (fromCurry x') (fromCurry y') (fromCurry z'))) z ) y) x++extFunc4 :: (Curry c1, Curry c2, Curry c3, Curry c4, Curry cv,+             ConvertCH c1 h1,ConvertCH c2 h2,ConvertCH c3 h3,ConvertCH c4 h4,ConvertCH cv hv) => +            (h1->h2->h3->h4->hv) -> c1 -> c2 -> c3 -> c4 -> Result cv+extFunc4 f x1 x2 x3 x4 = +  gnfCTC (\x1' ->+  gnfCTC (\x2' -> +  gnfCTC (\x3' -> +  gnfCTC (\x4' _ -> toCurry (f (fromCurry x1') (fromCurry x2') (fromCurry x3') (fromCurry x4'))) +         x4) x3) x2) x1+++hnf2 :: (Curry a, Curry b,Curry c) => (a->b->c) -> a -> b -> Result c+hnf2 f x y = hnfCTC (\ x' -> hnfCTC (\ y' _ -> f x' y') y) x++ioFunc0 :: (Curry b,ConvertCH b a) => IO a -> Result (C_IO b)+ioFunc0 iof _ = C_IO (\ _ -> iof Prelude.>>= \hv -> Prelude.return (IOVal (toCurry hv)))+++ioFunc1 :: (Curry a,Curry d,ConvertCH a b,ConvertCH d c) => (b->IO c) -> a -> Result (C_IO d)+ioFunc1 iof x _ = C_IO (\ _ ->+           iof (fromCurry x) Prelude.>>= \hv ->+           Prelude.return (IOVal (toCurry hv)))++ioFunc2 :: (Curry a, Curry c,Curry f,ConvertCH a b,ConvertCH c d,ConvertCH f e) => +            (b->d->IO e) -> a -> c -> Result (C_IO f)+ioFunc2 iof x y _ = C_IO (\ _ ->+           iof (fromCurry x) (fromCurry y) Prelude.>>= \hv ->+           Prelude.return (IOVal (toCurry hv)))++ioFunc3 iof x y z _ = C_IO (\ _ ->+           iof (fromCurry x) (fromCurry y) (fromCurry z) Prelude.>>= \hv ->+           Prelude.return (IOVal (toCurry hv)))++ghnfCTC2 :: (Curry a, Curry b,Curry c) => (a->b->c) -> a -> b -> Result c+ghnfCTC2 f x y = ghnfCTC (\x'-> ghnfCTC (\ y' _ -> f x' y') y) x++++(=:<=) = error "function patterns not implemented"++-- from old autogenerated++data Prim t0 = PrimValue t0+  | PrimFail C_Exceptions+  | PrimOr OrRef (Branches (Prim t0))++data C_Four = C_F0+  | C_F1+  | C_F2+  | C_F3+  | C_FourFail C_Exceptions+  | C_FourOr OrRef (Branches C_Four)+  deriving (Eq)++instance BaseCurry C_Success where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = withRef(\ r -> C_SuccessOr(mkRef(r)(0)(i))([C_Success]))(0)++  failed  = C_SuccessFail++  branching  = C_SuccessOr++  consKind (C_SuccessOr _ _) = Branching+  consKind (C_SuccessFail _) = Failed+  consKind _ = Val++  exceptions (C_SuccessFail x) = x++  orRef (C_SuccessOr x _) = x++  branches (C_SuccessOr _ x) = x++++++instance BaseCurry C_Bool where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = withRef(\ r -> C_BoolOr(mkRef(r)(0)(i))([C_False,C_True]))(0)++  failed  = C_BoolFail++  branching  = C_BoolOr++  consKind (C_BoolOr _ _) = Branching+  consKind (C_BoolFail _) = Failed+  consKind _ = Val++  exceptions (C_BoolFail x) = x++  orRef (C_BoolOr x _) = x++  branches (C_BoolOr _ x) = x++++++instance BaseCurry C_Four where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = withRef(\ r -> C_FourOr(mkRef(r)(0)(i))([C_F0,C_F1,C_F2,C_F3]))(0)++  failed  = C_FourFail++  branching  = C_FourOr++  consKind (C_FourOr _ _) = Branching+  consKind (C_FourFail _) = Failed+  consKind _ = Val++  exceptions (C_FourFail x) = x++  orRef (C_FourOr x _) = x++  branches (C_FourOr _ x) = x+++++++++-- end included++type C_String = Curry.Module.Prelude.List Curry.Module.Prelude.C_Char++data T0 = T0+  | T0Fail Curry.RunTimeSystem.C_Exceptions+  | T0Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Prelude.T0)++data List t0 = List+  | (:<) t0 (Curry.Module.Prelude.List t0)+  | ListFail Curry.RunTimeSystem.C_Exceptions+  | ListOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.List t0))++data T2 t0 t1 = T2 t0 t1+  | T2Fail Curry.RunTimeSystem.C_Exceptions+  | T2Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T2 t0 t1))++data T3 t0 t1 t2 = T3 t0 t1 t2+  | T3Fail Curry.RunTimeSystem.C_Exceptions+  | T3Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T3 t0 t1 t2))++data T4 t0 t1 t2 t3 = T4 t0 t1 t2 t3+  | T4Fail Curry.RunTimeSystem.C_Exceptions+  | T4Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T4 t0 t1 t2 t3))++data T5 t0 t1 t2 t3 t4 = T5 t0 t1 t2 t3 t4+  | T5Fail Curry.RunTimeSystem.C_Exceptions+  | T5Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T5 t0 t1 t2 t3 t4))++data T6 t0 t1 t2 t3 t4 t5 = T6 t0 t1 t2 t3 t4 t5+  | T6Fail Curry.RunTimeSystem.C_Exceptions+  | T6Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T6 t0 t1 t2 t3 t4 t5))++data T7 t0 t1 t2 t3 t4 t5 t6 = T7 t0 t1 t2 t3 t4 t5 t6+  | T7Fail Curry.RunTimeSystem.C_Exceptions+  | T7Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T7 t0 t1 t2 t3 t4 t5 t6))++data T8 t0 t1 t2 t3 t4 t5 t6 t7 = T8 t0 t1 t2 t3 t4 t5 t6 t7+  | T8Fail Curry.RunTimeSystem.C_Exceptions+  | T8Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T8 t0 t1 t2 t3 t4 t5 t6 t7))++data T9 t0 t1 t2 t3 t4 t5 t6 t7 t8 = T9 t0 t1 t2 t3 t4 t5 t6 t7 t8+  | T9Fail Curry.RunTimeSystem.C_Exceptions+  | T9Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T9 t0 t1 t2 t3 t4 t5 t6 t7 t8))++data T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 = T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9+  | T10Fail Curry.RunTimeSystem.C_Exceptions+  | T10Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9))++data T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 = T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10+  | T11Fail Curry.RunTimeSystem.C_Exceptions+  | T11Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10))++data T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 = T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11+  | T12Fail Curry.RunTimeSystem.C_Exceptions+  | T12Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11))++data T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 = T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12+  | T13Fail Curry.RunTimeSystem.C_Exceptions+  | T13Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12))++data T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 = T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13+  | T14Fail Curry.RunTimeSystem.C_Exceptions+  | T14Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13))++data T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14 = T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14+  | T15Fail Curry.RunTimeSystem.C_Exceptions+  | T15Or Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14))++data C_Ordering = C_LT+  | C_EQ+  | C_GT+  | C_OrderingFail Curry.RunTimeSystem.C_Exceptions+  | C_OrderingOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Prelude.C_Ordering)++data C_Nat = C_IHi+  | C_O Curry.Module.Prelude.C_Nat+  | C_I Curry.Module.Prelude.C_Nat+  | C_NatFail Curry.RunTimeSystem.C_Exceptions+  | C_NatOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Prelude.C_Nat)++data C_Int = C_Neg Curry.Module.Prelude.C_Nat+  | C_Zero+  | C_Pos Curry.Module.Prelude.C_Nat+  | C_IntFail Curry.RunTimeSystem.C_Exceptions+  | C_IntOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Prelude.C_Int)++data C_Success = C_Success+  | C_SuccessFail Curry.RunTimeSystem.C_Exceptions+  | C_SuccessOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Prelude.C_Success)++data C_Maybe t0 = C_Nothing+  | C_Just t0+  | C_MaybeFail Curry.RunTimeSystem.C_Exceptions+  | C_MaybeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.C_Maybe t0))++data C_Either t0 t1 = C_Left t0+  | C_Right t1+  | C_EitherFail Curry.RunTimeSystem.C_Exceptions+  | C_EitherOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.C_Either t0 t1))++data C_SearchTree t0 = C_Fail+  | C_Value t0+  | C_Choice (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0))+  | C_Suspend+  | C_SearchTreeFail Curry.RunTimeSystem.C_Exceptions+  | C_SearchTreeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.Prelude.C_SearchTree t0))++instance BaseCurry Curry.Module.Prelude.T0 where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T0Or(Curry.RunTimeSystem.mkRef(r)(0)(i))([Curry.Module.Prelude.T0]))(0)++  failed  = Curry.Module.Prelude.T0Fail++  branching  = Curry.Module.Prelude.T0Or++  consKind (Curry.Module.Prelude.T0Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T0Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T0Fail x) = x++  orRef (Curry.Module.Prelude.T0Or x _) = x++  branches (Curry.Module.Prelude.T0Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1) => BaseCurry (Curry.Module.Prelude.T2 t0 t1) where+  nf f (Curry.Module.Prelude.T2 x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Prelude.T2(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T2 x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Prelude.T2(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T2Or(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.Prelude.T2(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(2)++  failed  = Curry.Module.Prelude.T2Fail++  branching  = Curry.Module.Prelude.T2Or++  consKind (Curry.Module.Prelude.T2Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T2Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T2Fail x) = x++  orRef (Curry.Module.Prelude.T2Or x _) = x++  branches (Curry.Module.Prelude.T2Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2) => BaseCurry (Curry.Module.Prelude.T3 t0 t1 t2) where+  nf f (Curry.Module.Prelude.T3 x1 x2 x3) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> f(Curry.Module.Prelude.T3(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T3 x1 x2 x3) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> f(Curry.Module.Prelude.T3(v1)(v2)(v3))(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T3Or(Curry.RunTimeSystem.mkRef(r)(3)(i))([Curry.Module.Prelude.T3(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(3)++  failed  = Curry.Module.Prelude.T3Fail++  branching  = Curry.Module.Prelude.T3Or++  consKind (Curry.Module.Prelude.T3Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T3Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T3Fail x) = x++  orRef (Curry.Module.Prelude.T3Or x _) = x++  branches (Curry.Module.Prelude.T3Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3) => BaseCurry (Curry.Module.Prelude.T4 t0 t1 t2 t3) where+  nf f (Curry.Module.Prelude.T4 x1 x2 x3 x4) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> f(Curry.Module.Prelude.T4(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T4 x1 x2 x3 x4) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> f(Curry.Module.Prelude.T4(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T4Or(Curry.RunTimeSystem.mkRef(r)(4)(i))([Curry.Module.Prelude.T4(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(4)++  failed  = Curry.Module.Prelude.T4Fail++  branching  = Curry.Module.Prelude.T4Or++  consKind (Curry.Module.Prelude.T4Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T4Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T4Fail x) = x++  orRef (Curry.Module.Prelude.T4Or x _) = x++  branches (Curry.Module.Prelude.T4Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4) => BaseCurry (Curry.Module.Prelude.T5 t0 t1 t2 t3 t4) where+  nf f (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> f(Curry.Module.Prelude.T5(v1)(v2)(v3)(v4)(v5))(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> f(Curry.Module.Prelude.T5(v1)(v2)(v3)(v4)(v5))(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T5Or(Curry.RunTimeSystem.mkRef(r)(5)(i))([Curry.Module.Prelude.T5(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(5)++  failed  = Curry.Module.Prelude.T5Fail++  branching  = Curry.Module.Prelude.T5Or++  consKind (Curry.Module.Prelude.T5Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T5Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T5Fail x) = x++  orRef (Curry.Module.Prelude.T5Or x _) = x++  branches (Curry.Module.Prelude.T5Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5) => BaseCurry (Curry.Module.Prelude.T6 t0 t1 t2 t3 t4 t5) where+  nf f (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> f(Curry.Module.Prelude.T6(v1)(v2)(v3)(v4)(v5)(v6))(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> f(Curry.Module.Prelude.T6(v1)(v2)(v3)(v4)(v5)(v6))(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T6Or(Curry.RunTimeSystem.mkRef(r)(6)(i))([Curry.Module.Prelude.T6(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(6)++  failed  = Curry.Module.Prelude.T6Fail++  branching  = Curry.Module.Prelude.T6Or++  consKind (Curry.Module.Prelude.T6Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T6Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T6Fail x) = x++  orRef (Curry.Module.Prelude.T6Or x _) = x++  branches (Curry.Module.Prelude.T6Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6) => BaseCurry (Curry.Module.Prelude.T7 t0 t1 t2 t3 t4 t5 t6) where+  nf f (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> f(Curry.Module.Prelude.T7(v1)(v2)(v3)(v4)(v5)(v6)(v7))(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> f(Curry.Module.Prelude.T7(v1)(v2)(v3)(v4)(v5)(v6)(v7))(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T7Or(Curry.RunTimeSystem.mkRef(r)(7)(i))([Curry.Module.Prelude.T7(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(7)++  failed  = Curry.Module.Prelude.T7Fail++  branching  = Curry.Module.Prelude.T7Or++  consKind (Curry.Module.Prelude.T7Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T7Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T7Fail x) = x++  orRef (Curry.Module.Prelude.T7Or x _) = x++  branches (Curry.Module.Prelude.T7Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7) => BaseCurry (Curry.Module.Prelude.T8 t0 t1 t2 t3 t4 t5 t6 t7) where+  nf f (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> f(Curry.Module.Prelude.T8(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8))(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> f(Curry.Module.Prelude.T8(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8))(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T8Or(Curry.RunTimeSystem.mkRef(r)(8)(i))([Curry.Module.Prelude.T8(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(8)++  failed  = Curry.Module.Prelude.T8Fail++  branching  = Curry.Module.Prelude.T8Or++  consKind (Curry.Module.Prelude.T8Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T8Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T8Fail x) = x++  orRef (Curry.Module.Prelude.T8Or x _) = x++  branches (Curry.Module.Prelude.T8Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8) => BaseCurry (Curry.Module.Prelude.T9 t0 t1 t2 t3 t4 t5 t6 t7 t8) where+  nf f (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> f(Curry.Module.Prelude.T9(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9))(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> f(Curry.Module.Prelude.T9(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9))(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T9Or(Curry.RunTimeSystem.mkRef(r)(9)(i))([Curry.Module.Prelude.T9(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(9)++  failed  = Curry.Module.Prelude.T9Fail++  branching  = Curry.Module.Prelude.T9Or++  consKind (Curry.Module.Prelude.T9Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T9Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T9Fail x) = x++  orRef (Curry.Module.Prelude.T9Or x _) = x++  branches (Curry.Module.Prelude.T9Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8,BaseCurry t9) => BaseCurry (Curry.Module.Prelude.T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9) where+  nf f (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> Curry.RunTimeSystem.nfCTC(\ v10 state10 -> f(Curry.Module.Prelude.T10(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10))(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> Curry.RunTimeSystem.gnfCTC(\ v10 state10 -> f(Curry.Module.Prelude.T10(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10))(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T10Or(Curry.RunTimeSystem.mkRef(r)(10)(i))([Curry.Module.Prelude.T10(Curry.RunTimeSystem.generator((Prelude.+)(r)((9::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(10)++  failed  = Curry.Module.Prelude.T10Fail++  branching  = Curry.Module.Prelude.T10Or++  consKind (Curry.Module.Prelude.T10Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T10Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T10Fail x) = x++  orRef (Curry.Module.Prelude.T10Or x _) = x++  branches (Curry.Module.Prelude.T10Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8,BaseCurry t9,BaseCurry t10) => BaseCurry (Curry.Module.Prelude.T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10) where+  nf f (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> Curry.RunTimeSystem.nfCTC(\ v10 state10 -> Curry.RunTimeSystem.nfCTC(\ v11 state11 -> f(Curry.Module.Prelude.T11(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11))(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> Curry.RunTimeSystem.gnfCTC(\ v10 state10 -> Curry.RunTimeSystem.gnfCTC(\ v11 state11 -> f(Curry.Module.Prelude.T11(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11))(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T11Or(Curry.RunTimeSystem.mkRef(r)(11)(i))([Curry.Module.Prelude.T11(Curry.RunTimeSystem.generator((Prelude.+)(r)((10::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((9::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(11)++  failed  = Curry.Module.Prelude.T11Fail++  branching  = Curry.Module.Prelude.T11Or++  consKind (Curry.Module.Prelude.T11Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T11Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T11Fail x) = x++  orRef (Curry.Module.Prelude.T11Or x _) = x++  branches (Curry.Module.Prelude.T11Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8,BaseCurry t9,BaseCurry t10,BaseCurry t11) => BaseCurry (Curry.Module.Prelude.T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11) where+  nf f (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> Curry.RunTimeSystem.nfCTC(\ v10 state10 -> Curry.RunTimeSystem.nfCTC(\ v11 state11 -> Curry.RunTimeSystem.nfCTC(\ v12 state12 -> f(Curry.Module.Prelude.T12(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12))(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> Curry.RunTimeSystem.gnfCTC(\ v10 state10 -> Curry.RunTimeSystem.gnfCTC(\ v11 state11 -> Curry.RunTimeSystem.gnfCTC(\ v12 state12 -> f(Curry.Module.Prelude.T12(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12))(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T12Or(Curry.RunTimeSystem.mkRef(r)(12)(i))([Curry.Module.Prelude.T12(Curry.RunTimeSystem.generator((Prelude.+)(r)((11::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((10::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((9::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(12)++  failed  = Curry.Module.Prelude.T12Fail++  branching  = Curry.Module.Prelude.T12Or++  consKind (Curry.Module.Prelude.T12Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T12Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T12Fail x) = x++  orRef (Curry.Module.Prelude.T12Or x _) = x++  branches (Curry.Module.Prelude.T12Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8,BaseCurry t9,BaseCurry t10,BaseCurry t11,BaseCurry t12) => BaseCurry (Curry.Module.Prelude.T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12) where+  nf f (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> Curry.RunTimeSystem.nfCTC(\ v10 state10 -> Curry.RunTimeSystem.nfCTC(\ v11 state11 -> Curry.RunTimeSystem.nfCTC(\ v12 state12 -> Curry.RunTimeSystem.nfCTC(\ v13 state13 -> f(Curry.Module.Prelude.T13(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12)(v13))(state13))(x13)(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> Curry.RunTimeSystem.gnfCTC(\ v10 state10 -> Curry.RunTimeSystem.gnfCTC(\ v11 state11 -> Curry.RunTimeSystem.gnfCTC(\ v12 state12 -> Curry.RunTimeSystem.gnfCTC(\ v13 state13 -> f(Curry.Module.Prelude.T13(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12)(v13))(state13))(x13)(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T13Or(Curry.RunTimeSystem.mkRef(r)(13)(i))([Curry.Module.Prelude.T13(Curry.RunTimeSystem.generator((Prelude.+)(r)((12::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((11::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((10::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((9::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(13)++  failed  = Curry.Module.Prelude.T13Fail++  branching  = Curry.Module.Prelude.T13Or++  consKind (Curry.Module.Prelude.T13Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T13Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T13Fail x) = x++  orRef (Curry.Module.Prelude.T13Or x _) = x++  branches (Curry.Module.Prelude.T13Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8,BaseCurry t9,BaseCurry t10,BaseCurry t11,BaseCurry t12,BaseCurry t13) => BaseCurry (Curry.Module.Prelude.T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13) where+  nf f (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> Curry.RunTimeSystem.nfCTC(\ v10 state10 -> Curry.RunTimeSystem.nfCTC(\ v11 state11 -> Curry.RunTimeSystem.nfCTC(\ v12 state12 -> Curry.RunTimeSystem.nfCTC(\ v13 state13 -> Curry.RunTimeSystem.nfCTC(\ v14 state14 -> f(Curry.Module.Prelude.T14(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12)(v13)(v14))(state14))(x14)(state13))(x13)(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> Curry.RunTimeSystem.gnfCTC(\ v10 state10 -> Curry.RunTimeSystem.gnfCTC(\ v11 state11 -> Curry.RunTimeSystem.gnfCTC(\ v12 state12 -> Curry.RunTimeSystem.gnfCTC(\ v13 state13 -> Curry.RunTimeSystem.gnfCTC(\ v14 state14 -> f(Curry.Module.Prelude.T14(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12)(v13)(v14))(state14))(x14)(state13))(x13)(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T14Or(Curry.RunTimeSystem.mkRef(r)(14)(i))([Curry.Module.Prelude.T14(Curry.RunTimeSystem.generator((Prelude.+)(r)((13::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((12::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((11::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((10::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((9::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(14)++  failed  = Curry.Module.Prelude.T14Fail++  branching  = Curry.Module.Prelude.T14Or++  consKind (Curry.Module.Prelude.T14Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T14Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T14Fail x) = x++  orRef (Curry.Module.Prelude.T14Or x _) = x++  branches (Curry.Module.Prelude.T14Or _ x) = x++++++instance (BaseCurry t0,BaseCurry t1,BaseCurry t2,BaseCurry t3,BaseCurry t4,BaseCurry t5,BaseCurry t6,BaseCurry t7,BaseCurry t8,BaseCurry t9,BaseCurry t10,BaseCurry t11,BaseCurry t12,BaseCurry t13,BaseCurry t14) => BaseCurry (Curry.Module.Prelude.T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14) where+  nf f (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> Curry.RunTimeSystem.nfCTC(\ v8 state8 -> Curry.RunTimeSystem.nfCTC(\ v9 state9 -> Curry.RunTimeSystem.nfCTC(\ v10 state10 -> Curry.RunTimeSystem.nfCTC(\ v11 state11 -> Curry.RunTimeSystem.nfCTC(\ v12 state12 -> Curry.RunTimeSystem.nfCTC(\ v13 state13 -> Curry.RunTimeSystem.nfCTC(\ v14 state14 -> Curry.RunTimeSystem.nfCTC(\ v15 state15 -> f(Curry.Module.Prelude.T15(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12)(v13)(v14)(v15))(state15))(x15)(state14))(x14)(state13))(x13)(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> Curry.RunTimeSystem.gnfCTC(\ v8 state8 -> Curry.RunTimeSystem.gnfCTC(\ v9 state9 -> Curry.RunTimeSystem.gnfCTC(\ v10 state10 -> Curry.RunTimeSystem.gnfCTC(\ v11 state11 -> Curry.RunTimeSystem.gnfCTC(\ v12 state12 -> Curry.RunTimeSystem.gnfCTC(\ v13 state13 -> Curry.RunTimeSystem.gnfCTC(\ v14 state14 -> Curry.RunTimeSystem.gnfCTC(\ v15 state15 -> f(Curry.Module.Prelude.T15(v1)(v2)(v3)(v4)(v5)(v6)(v7)(v8)(v9)(v10)(v11)(v12)(v13)(v14)(v15))(state15))(x15)(state14))(x14)(state13))(x13)(state12))(x12)(state11))(x11)(state10))(x10)(state9))(x9)(state8))(x8)(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.T15Or(Curry.RunTimeSystem.mkRef(r)(15)(i))([Curry.Module.Prelude.T15(Curry.RunTimeSystem.generator((Prelude.+)(r)((14::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((13::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((12::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((11::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((10::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((9::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((8::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((7::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(15)++  failed  = Curry.Module.Prelude.T15Fail++  branching  = Curry.Module.Prelude.T15Or++  consKind (Curry.Module.Prelude.T15Or _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.T15Fail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.T15Fail x) = x++  orRef (Curry.Module.Prelude.T15Or x _) = x++  branches (Curry.Module.Prelude.T15Or _ x) = x++++++instance BaseCurry Curry.Module.Prelude.C_Ordering where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.C_OrderingOr(Curry.RunTimeSystem.mkRef(r)(0)(i))([Curry.Module.Prelude.C_LT,Curry.Module.Prelude.C_EQ,Curry.Module.Prelude.C_GT]))(0)++  failed  = Curry.Module.Prelude.C_OrderingFail++  branching  = Curry.Module.Prelude.C_OrderingOr++  consKind (Curry.Module.Prelude.C_OrderingOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.C_OrderingFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.C_OrderingFail x) = x++  orRef (Curry.Module.Prelude.C_OrderingOr x _) = x++  branches (Curry.Module.Prelude.C_OrderingOr _ x) = x++++++instance BaseCurry Curry.Module.Prelude.C_Nat where+  nf f (Curry.Module.Prelude.C_O x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_O(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Prelude.C_I x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_I(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.C_O x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_O(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Prelude.C_I x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_I(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.C_NatOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Prelude.C_IHi,Curry.Module.Prelude.C_O(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Prelude.C_I(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Prelude.C_NatFail++  branching  = Curry.Module.Prelude.C_NatOr++  consKind (Curry.Module.Prelude.C_NatOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.C_NatFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.C_NatFail x) = x++  orRef (Curry.Module.Prelude.C_NatOr x _) = x++  branches (Curry.Module.Prelude.C_NatOr _ x) = x++++++instance BaseCurry Curry.Module.Prelude.C_Int where+  nf f (Curry.Module.Prelude.C_Neg x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Neg(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Prelude.C_Pos x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Pos(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.C_Neg x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Neg(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Prelude.C_Pos x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Pos(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.C_IntOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Prelude.C_Neg(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Prelude.C_Zero,Curry.Module.Prelude.C_Pos(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Prelude.C_IntFail++  branching  = Curry.Module.Prelude.C_IntOr++  consKind (Curry.Module.Prelude.C_IntOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.C_IntFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.C_IntFail x) = x++  orRef (Curry.Module.Prelude.C_IntOr x _) = x++  branches (Curry.Module.Prelude.C_IntOr _ x) = x++++++instance (BaseCurry t0) => BaseCurry (Curry.Module.Prelude.C_Maybe t0) where+  nf f (Curry.Module.Prelude.C_Just x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Just(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.C_Just x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Just(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.C_MaybeOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Prelude.C_Nothing,Curry.Module.Prelude.C_Just(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Prelude.C_MaybeFail++  branching  = Curry.Module.Prelude.C_MaybeOr++  consKind (Curry.Module.Prelude.C_MaybeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.C_MaybeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.C_MaybeFail x) = x++  orRef (Curry.Module.Prelude.C_MaybeOr x _) = x++  branches (Curry.Module.Prelude.C_MaybeOr _ x) = x++++++instance (BaseCurry t0,BaseCurry t1) => BaseCurry (Curry.Module.Prelude.C_Either t0 t1) where+  nf f (Curry.Module.Prelude.C_Left x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Left(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Prelude.C_Right x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Right(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.C_Left x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Left(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Prelude.C_Right x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Right(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.C_EitherOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Prelude.C_Left(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Prelude.C_Right(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Prelude.C_EitherFail++  branching  = Curry.Module.Prelude.C_EitherOr++  consKind (Curry.Module.Prelude.C_EitherOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.C_EitherFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.C_EitherFail x) = x++  orRef (Curry.Module.Prelude.C_EitherOr x _) = x++  branches (Curry.Module.Prelude.C_EitherOr _ x) = x++++++instance (BaseCurry t0) => BaseCurry (Curry.Module.Prelude.C_SearchTree t0) where+  nf f (Curry.Module.Prelude.C_Value x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Value(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Prelude.C_Choice x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Choice(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Prelude.C_Value x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Value(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Prelude.C_Choice x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Prelude.C_Choice(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Prelude.C_SearchTreeOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Prelude.C_Fail,Curry.Module.Prelude.C_Value(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Prelude.C_Choice(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Prelude.C_Suspend]))(1)++  failed  = Curry.Module.Prelude.C_SearchTreeFail++  branching  = Curry.Module.Prelude.C_SearchTreeOr++  consKind (Curry.Module.Prelude.C_SearchTreeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Prelude.C_SearchTreeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Prelude.C_SearchTreeFail x) = x++  orRef (Curry.Module.Prelude.C_SearchTreeOr x _) = x++  branches (Curry.Module.Prelude.C_SearchTreeOr _ x) = x++++++instance Curry Curry.Module.Prelude.T0 where+  strEq Curry.Module.Prelude.T0 Curry.Module.Prelude.T0 st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.T0 Curry.Module.Prelude.T0 st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.T0 st = Curry.Module.Prelude.T0++  foldCurry f c Curry.Module.Prelude.T0 st = c++  typeName _ = "()"++  showQ _ Curry.Module.Prelude.T0 = Prelude.showString("()")+  showQ _ (Curry.Module.Prelude.T0Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1) => Curry (Curry.Module.Prelude.T2 t0 t1) where+  strEq (Curry.Module.Prelude.T2 x1 x2) (Curry.Module.Prelude.T2 y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T2 x1 x2) (Curry.Module.Prelude.T2 y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T2 x1 x2) st = Curry.Module.Prelude.T2(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))++  foldCurry f c (Curry.Module.Prelude.T2 x1 x2) st = f(x1)(f(x2)(c)(st))(st)++  typeName _ = "(,)"++  showQ d (Curry.Module.Prelude.T2 x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))))+++  showQ _ (Curry.Module.Prelude.T2Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2) => Curry (Curry.Module.Prelude.T3 t0 t1 t2) where+  strEq (Curry.Module.Prelude.T3 x1 x2 x3) (Curry.Module.Prelude.T3 y1 y2 y3) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T3 x1 x2 x3) (Curry.Module.Prelude.T3 y1 y2 y3) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.genEq(x3)(y3)(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T3 x1 x2 x3) st = Curry.Module.Prelude.T3(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))++  foldCurry f c (Curry.Module.Prelude.T3 x1 x2 x3) st = f(x1)(f(x2)(f(x3)(c)(st))(st))(st)++  typeName _ = "(,,)"++  showQ d (Curry.Module.Prelude.T3 x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))))))+++  showQ _ (Curry.Module.Prelude.T3Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3) => Curry (Curry.Module.Prelude.T4 t0 t1 t2 t3) where+  strEq (Curry.Module.Prelude.T4 x1 x2 x3 x4) (Curry.Module.Prelude.T4 y1 y2 y3 y4) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T4 x1 x2 x3 x4) (Curry.Module.Prelude.T4 y1 y2 y3 y4) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.genEq(x4)(y4)(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T4 x1 x2 x3 x4) st = Curry.Module.Prelude.T4(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))++  foldCurry f c (Curry.Module.Prelude.T4 x1 x2 x3 x4) st = f(x1)(f(x2)(f(x3)(f(x4)(c)(st))(st))(st))(st)++  typeName _ = "(,,,)"++  showQ d (Curry.Module.Prelude.T4 x1 x2 x3 x4) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))))))))+++  showQ _ (Curry.Module.Prelude.T4Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4) => Curry (Curry.Module.Prelude.T5 t0 t1 t2 t3 t4) where+  strEq (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) (Curry.Module.Prelude.T5 y1 y2 y3 y4 y5) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) (Curry.Module.Prelude.T5 y1 y2 y3 y4 y5) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.genEq(x5)(y5)(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) st = Curry.Module.Prelude.T5(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))++  foldCurry f c (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(c)(st))(st))(st))(st))(st)++  typeName _ = "(,,,,)"++  showQ d (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))))))))))+++  showQ _ (Curry.Module.Prelude.T5Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5) => Curry (Curry.Module.Prelude.T6 t0 t1 t2 t3 t4 t5) where+  strEq (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) (Curry.Module.Prelude.T6 y1 y2 y3 y4 y5 y6) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) (Curry.Module.Prelude.T6 y1 y2 y3 y4 y5 y6) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.genEq(x6)(y6)(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) st = Curry.Module.Prelude.T6(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))++  foldCurry f c (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(c)(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,)"++  showQ d (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))))))))))))+++  showQ _ (Curry.Module.Prelude.T6Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6) => Curry (Curry.Module.Prelude.T7 t0 t1 t2 t3 t4 t5 t6) where+  strEq (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) (Curry.Module.Prelude.T7 y1 y2 y3 y4 y5 y6 y7) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) (Curry.Module.Prelude.T7 y1 y2 y3 y4 y5 y6 y7) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.genEq(x7)(y7)(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) st = Curry.Module.Prelude.T7(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))++  foldCurry f c (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(c)(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,)"++  showQ d (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))))))))))))))+++  showQ _ (Curry.Module.Prelude.T7Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7) => Curry (Curry.Module.Prelude.T8 t0 t1 t2 t3 t4 t5 t6 t7) where+  strEq (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) (Curry.Module.Prelude.T8 y1 y2 y3 y4 y5 y6 y7 y8) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) (Curry.Module.Prelude.T8 y1 y2 y3 y4 y5 y6 y7 y8) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.genEq(x8)(y8)(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) st = Curry.Module.Prelude.T8(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))++  foldCurry f c (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(c)(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,)"++  showQ d (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T8Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8) => Curry (Curry.Module.Prelude.T9 t0 t1 t2 t3 t4 t5 t6 t7 t8) where+  strEq (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) (Curry.Module.Prelude.T9 y1 y2 y3 y4 y5 y6 y7 y8 y9) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) (Curry.Module.Prelude.T9 y1 y2 y3 y4 y5 y6 y7 y8 y9) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.genEq(x9)(y9)(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) st = Curry.Module.Prelude.T9(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))++  foldCurry f c (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T9Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8,Curry t9) => Curry (Curry.Module.Prelude.T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9) where+  strEq (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) (Curry.Module.Prelude.T10 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(Curry.Module.Prelude.genStrEq(x10)(y10)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) (Curry.Module.Prelude.T10 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x9)(y9)(st))(Curry.Module.Prelude.genEq(x10)(y10)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) st = Curry.Module.Prelude.T10(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))(f((9::Int))(x10)(st))++  foldCurry f c (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(f(x10)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x10))))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T10Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8,Curry t9,Curry t10) => Curry (Curry.Module.Prelude.T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10) where+  strEq (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) (Curry.Module.Prelude.T11 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x10)(y10)(st))(Curry.Module.Prelude.genStrEq(x11)(y11)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) (Curry.Module.Prelude.T11 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x9)(y9)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x10)(y10)(st))(Curry.Module.Prelude.genEq(x11)(y11)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) st = Curry.Module.Prelude.T11(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))(f((9::Int))(x10)(st))(f((10::Int))(x11)(st))++  foldCurry f c (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(f(x10)(f(x11)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x11))))))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T11Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8,Curry t9,Curry t10,Curry t11) => Curry (Curry.Module.Prelude.T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11) where+  strEq (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) (Curry.Module.Prelude.T12 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x10)(y10)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x11)(y11)(st))(Curry.Module.Prelude.genStrEq(x12)(y12)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) (Curry.Module.Prelude.T12 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x9)(y9)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x10)(y10)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x11)(y11)(st))(Curry.Module.Prelude.genEq(x12)(y12)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) st = Curry.Module.Prelude.T12(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))(f((9::Int))(x10)(st))(f((10::Int))(x11)(st))(f((11::Int))(x12)(st))++  foldCurry f c (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(f(x10)(f(x11)(f(x12)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x12))))))))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T12Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8,Curry t9,Curry t10,Curry t11,Curry t12) => Curry (Curry.Module.Prelude.T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12) where+  strEq (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) (Curry.Module.Prelude.T13 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x10)(y10)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x11)(y11)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x12)(y12)(st))(Curry.Module.Prelude.genStrEq(x13)(y13)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) (Curry.Module.Prelude.T13 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x9)(y9)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x10)(y10)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x11)(y11)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x12)(y12)(st))(Curry.Module.Prelude.genEq(x13)(y13)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) st = Curry.Module.Prelude.T13(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))(f((9::Int))(x10)(st))(f((10::Int))(x11)(st))(f((11::Int))(x12)(st))(f((12::Int))(x13)(st))++  foldCurry f c (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(f(x10)(f(x11)(f(x12)(f(x13)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x12))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x13))))))))))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T13Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8,Curry t9,Curry t10,Curry t11,Curry t12,Curry t13) => Curry (Curry.Module.Prelude.T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13) where+  strEq (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) (Curry.Module.Prelude.T14 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x10)(y10)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x11)(y11)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x12)(y12)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x13)(y13)(st))(Curry.Module.Prelude.genStrEq(x14)(y14)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) (Curry.Module.Prelude.T14 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x9)(y9)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x10)(y10)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x11)(y11)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x12)(y12)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x13)(y13)(st))(Curry.Module.Prelude.genEq(x14)(y14)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) st = Curry.Module.Prelude.T14(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))(f((9::Int))(x10)(st))(f((10::Int))(x11)(st))(f((11::Int))(x12)(st))(f((12::Int))(x13)(st))(f((13::Int))(x14)(st))++  foldCurry f c (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(f(x10)(f(x11)(f(x12)(f(x13)(f(x14)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x12))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x13))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x14))))))))))))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T14Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1,Curry t2,Curry t3,Curry t4,Curry t5,Curry t6,Curry t7,Curry t8,Curry t9,Curry t10,Curry t11,Curry t12,Curry t13,Curry t14) => Curry (Curry.Module.Prelude.T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14) where+  strEq (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) (Curry.Module.Prelude.T15 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14 y15) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x8)(y8)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x9)(y9)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x10)(y10)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x11)(y11)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x12)(y12)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x13)(y13)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x14)(y14)(st))(Curry.Module.Prelude.genStrEq(x15)(y15)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) (Curry.Module.Prelude.T15 y1 y2 y3 y4 y5 y6 y7 y8 y9 y10 y11 y12 y13 y14 y15) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x7)(y7)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x8)(y8)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x9)(y9)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x10)(y10)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x11)(y11)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x12)(y12)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x13)(y13)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x14)(y14)(st))(Curry.Module.Prelude.genEq(x15)(y15)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) st = Curry.Module.Prelude.T15(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))(f((7::Int))(x8)(st))(f((8::Int))(x9)(st))(f((9::Int))(x10)(st))(f((10::Int))(x11)(st))(f((11::Int))(x12)(st))(f((12::Int))(x13)(st))(f((13::Int))(x14)(st))(f((14::Int))(x15)(st))++  foldCurry f c (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(f(x8)(f(x9)(f(x10)(f(x11)(f(x12)(f(x13)(f(x14)(f(x15)(c)(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "(,,,,,,,,,,,,,,)"++  showQ d (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x12))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x13))((Prelude..)(Prelude.showChar(','))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x14))((Prelude..)(Prelude.showChar(','))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.zero)(x15))))))))))))))))))))))))))))))+++  showQ _ (Curry.Module.Prelude.T15Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Prelude.C_Bool where+  strEq Curry.Module.Prelude.C_False Curry.Module.Prelude.C_False st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.Prelude.C_True Curry.Module.Prelude.C_True st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.C_False Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_True+  eq Curry.Module.Prelude.C_True Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_False+  propagate f Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_True++  foldCurry f c Curry.Module.Prelude.C_False st = c+  foldCurry f c Curry.Module.Prelude.C_True st = c++  typeName _ = "Bool"++  showQ _ Curry.Module.Prelude.C_False = Prelude.showString("Prelude.False")+  showQ _ Curry.Module.Prelude.C_True = Prelude.showString("Prelude.True")+  showQ _ (Curry.Module.Prelude.C_BoolOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Prelude.C_Ordering where+  strEq Curry.Module.Prelude.C_LT Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.Prelude.C_EQ Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.Prelude.C_GT Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.C_LT Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.C_True+  eq Curry.Module.Prelude.C_EQ Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.C_True+  eq Curry.Module.Prelude.C_GT Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.C_LT+  propagate f Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.C_EQ+  propagate f Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.C_GT++  foldCurry f c Curry.Module.Prelude.C_LT st = c+  foldCurry f c Curry.Module.Prelude.C_EQ st = c+  foldCurry f c Curry.Module.Prelude.C_GT st = c++  typeName _ = "Ordering"++  showQ _ Curry.Module.Prelude.C_LT = Prelude.showString("Prelude.LT")+  showQ _ Curry.Module.Prelude.C_EQ = Prelude.showString("Prelude.EQ")+  showQ _ Curry.Module.Prelude.C_GT = Prelude.showString("Prelude.GT")+  showQ _ (Curry.Module.Prelude.C_OrderingOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Prelude.C_Nat where+  strEq Curry.Module.Prelude.C_IHi Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Prelude.C_O x1) (Curry.Module.Prelude.C_O y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Prelude.C_I x1) (Curry.Module.Prelude.C_I y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.C_IHi Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Prelude.C_O x1) (Curry.Module.Prelude.C_O y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Prelude.C_I x1) (Curry.Module.Prelude.C_I y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_IHi+  propagate f (Curry.Module.Prelude.C_O x1) st = Curry.Module.Prelude.C_O(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Prelude.C_I x1) st = Curry.Module.Prelude.C_I(f((0::Int))(x1)(st))++  foldCurry f c Curry.Module.Prelude.C_IHi st = c+  foldCurry f c (Curry.Module.Prelude.C_O x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Prelude.C_I x1) st = f(x1)(c)(st)++  typeName _ = "Nat"++  showQ  = Prelude.showsPrec++++++instance Curry Curry.Module.Prelude.C_Int where+  strEq (Curry.Module.Prelude.C_Neg x1) (Curry.Module.Prelude.C_Neg y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq Curry.Module.Prelude.C_Zero Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Prelude.C_Pos x1) (Curry.Module.Prelude.C_Pos y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.C_Neg x1) (Curry.Module.Prelude.C_Neg y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq Curry.Module.Prelude.C_Zero Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Prelude.C_Pos x1) (Curry.Module.Prelude.C_Pos y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.C_Neg x1) st = Curry.Module.Prelude.C_Neg(f((0::Int))(x1)(st))+  propagate f Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Zero+  propagate f (Curry.Module.Prelude.C_Pos x1) st = Curry.Module.Prelude.C_Pos(f((0::Int))(x1)(st))++  foldCurry f c (Curry.Module.Prelude.C_Neg x1) st = f(x1)(c)(st)+  foldCurry f c Curry.Module.Prelude.C_Zero st = c+  foldCurry f c (Curry.Module.Prelude.C_Pos x1) st = f(x1)(c)(st)++  typeName _ = "Int"++  showQ  = Prelude.showsPrec++++++instance Curry Curry.Module.Prelude.C_Success where+  strEq Curry.Module.Prelude.C_Success Curry.Module.Prelude.C_Success st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.C_Success Curry.Module.Prelude.C_Success st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.C_Success st = Curry.Module.Prelude.C_Success++  foldCurry f c Curry.Module.Prelude.C_Success st = c++  typeName _ = "Success"++  showQ  = Prelude.showsPrec++++++instance (Curry t0) => Curry (Curry.Module.Prelude.C_Maybe t0) where+  strEq Curry.Module.Prelude.C_Nothing Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Prelude.C_Just x1) (Curry.Module.Prelude.C_Just y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.C_Nothing Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Prelude.C_Just x1) (Curry.Module.Prelude.C_Just y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.C_Nothing+  propagate f (Curry.Module.Prelude.C_Just x1) st = Curry.Module.Prelude.C_Just(f((0::Int))(x1)(st))++  foldCurry f c Curry.Module.Prelude.C_Nothing st = c+  foldCurry f c (Curry.Module.Prelude.C_Just x1) st = f(x1)(c)(st)++  typeName _ = "Maybe"++  showQ _ Curry.Module.Prelude.C_Nothing = Prelude.showString("Prelude.Nothing")+  showQ d (Curry.Module.Prelude.C_Just x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Prelude.Just "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Prelude.C_MaybeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0,Curry t1) => Curry (Curry.Module.Prelude.C_Either t0 t1) where+  strEq (Curry.Module.Prelude.C_Left x1) (Curry.Module.Prelude.C_Left y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Prelude.C_Right x1) (Curry.Module.Prelude.C_Right y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Prelude.C_Left x1) (Curry.Module.Prelude.C_Left y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Prelude.C_Right x1) (Curry.Module.Prelude.C_Right y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Prelude.C_Left x1) st = Curry.Module.Prelude.C_Left(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Prelude.C_Right x1) st = Curry.Module.Prelude.C_Right(f((0::Int))(x1)(st))++  foldCurry f c (Curry.Module.Prelude.C_Left x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Prelude.C_Right x1) st = f(x1)(c)(st)++  typeName _ = "Either"++  showQ d (Curry.Module.Prelude.C_Left x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Prelude.Left "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Prelude.C_Right x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Prelude.Right "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Prelude.C_EitherOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0) => Curry (Curry.Module.Prelude.C_SearchTree t0) where+  strEq Curry.Module.Prelude.C_Fail Curry.Module.Prelude.C_Fail st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Prelude.C_Value x1) (Curry.Module.Prelude.C_Value y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Prelude.C_Choice x1) (Curry.Module.Prelude.C_Choice y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq Curry.Module.Prelude.C_Suspend Curry.Module.Prelude.C_Suspend st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.Prelude.C_Fail Curry.Module.Prelude.C_Fail st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Prelude.C_Value x1) (Curry.Module.Prelude.C_Value y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Prelude.C_Choice x1) (Curry.Module.Prelude.C_Choice y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq Curry.Module.Prelude.C_Suspend Curry.Module.Prelude.C_Suspend st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.Prelude.C_Fail st = Curry.Module.Prelude.C_Fail+  propagate f (Curry.Module.Prelude.C_Value x1) st = Curry.Module.Prelude.C_Value(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Prelude.C_Choice x1) st = Curry.Module.Prelude.C_Choice(f((0::Int))(x1)(st))+  propagate f Curry.Module.Prelude.C_Suspend st = Curry.Module.Prelude.C_Suspend++  foldCurry f c Curry.Module.Prelude.C_Fail st = c+  foldCurry f c (Curry.Module.Prelude.C_Value x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Prelude.C_Choice x1) st = f(x1)(c)(st)+  foldCurry f c Curry.Module.Prelude.C_Suspend st = c++  typeName _ = "SearchTree"++  showQ _ Curry.Module.Prelude.C_Fail = Prelude.showString("Prelude.Fail")+  showQ d (Curry.Module.Prelude.C_Value x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Prelude.Value "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Prelude.C_Choice x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Prelude.Choice "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ Curry.Module.Prelude.C_Suspend = Prelude.showString("Prelude.Suspend")+  showQ _ (Curry.Module.Prelude.C_SearchTreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Prelude.T0 where+  showsPrec _ Curry.Module.Prelude.T0 = Prelude.showString("()")+  showsPrec _ (Curry.Module.Prelude.T0Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1) => Show (Curry.Module.Prelude.T2 t0 t1) where+  showsPrec d (Curry.Module.Prelude.T2 x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))))+++  showsPrec _ (Curry.Module.Prelude.T2Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2) => Show (Curry.Module.Prelude.T3 t0 t1 t2) where+  showsPrec d (Curry.Module.Prelude.T3 x1 x2 x3) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))))))+++  showsPrec _ (Curry.Module.Prelude.T3Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3) => Show (Curry.Module.Prelude.T4 t0 t1 t2 t3) where+  showsPrec d (Curry.Module.Prelude.T4 x1 x2 x3 x4) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))))))))+++  showsPrec _ (Curry.Module.Prelude.T4Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4) => Show (Curry.Module.Prelude.T5 t0 t1 t2 t3 t4) where+  showsPrec d (Curry.Module.Prelude.T5 x1 x2 x3 x4 x5) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))))))))))+++  showsPrec _ (Curry.Module.Prelude.T5Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5) => Show (Curry.Module.Prelude.T6 t0 t1 t2 t3 t4 t5) where+  showsPrec d (Curry.Module.Prelude.T6 x1 x2 x3 x4 x5 x6) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T6Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6) => Show (Curry.Module.Prelude.T7 t0 t1 t2 t3 t4 t5 t6) where+  showsPrec d (Curry.Module.Prelude.T7 x1 x2 x3 x4 x5 x6 x7) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T7Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7) => Show (Curry.Module.Prelude.T8 t0 t1 t2 t3 t4 t5 t6 t7) where+  showsPrec d (Curry.Module.Prelude.T8 x1 x2 x3 x4 x5 x6 x7 x8) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T8Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8) => Show (Curry.Module.Prelude.T9 t0 t1 t2 t3 t4 t5 t6 t7 t8) where+  showsPrec d (Curry.Module.Prelude.T9 x1 x2 x3 x4 x5 x6 x7 x8 x9) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T9Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8,Show t9) => Show (Curry.Module.Prelude.T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9) where+  showsPrec d (Curry.Module.Prelude.T10 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x10))))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T10Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8,Show t9,Show t10) => Show (Curry.Module.Prelude.T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10) where+  showsPrec d (Curry.Module.Prelude.T11 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x11))))))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T11Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8,Show t9,Show t10,Show t11) => Show (Curry.Module.Prelude.T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11) where+  showsPrec d (Curry.Module.Prelude.T12 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x12))))))))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T12Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8,Show t9,Show t10,Show t11,Show t12) => Show (Curry.Module.Prelude.T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12) where+  showsPrec d (Curry.Module.Prelude.T13 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x12))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x13))))))))))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T13Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8,Show t9,Show t10,Show t11,Show t12,Show t13) => Show (Curry.Module.Prelude.T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13) where+  showsPrec d (Curry.Module.Prelude.T14 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x12))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x13))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x14))))))))))))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T14Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1,Show t2,Show t3,Show t4,Show t5,Show t6,Show t7,Show t8,Show t9,Show t10,Show t11,Show t12,Show t13,Show t14) => Show (Curry.Module.Prelude.T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14) where+  showsPrec d (Curry.Module.Prelude.T15 x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString([]))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x1))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x2))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x3))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x4))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x5))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x6))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x7))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x8))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x9))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x10))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x11))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x12))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x13))((Prelude..)(Prelude.showChar(','))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x14))((Prelude..)(Prelude.showChar(','))(Prelude.showsPrec(Curry.RunTimeSystem.zero)(x15))))))))))))))))))))))))))))))+++  showsPrec _ (Curry.Module.Prelude.T15Or r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Prelude.C_Bool where+  showsPrec _ Curry.Module.Prelude.C_False = Prelude.showString("False")+  showsPrec _ Curry.Module.Prelude.C_True = Prelude.showString("True")+  showsPrec _ (Curry.Module.Prelude.C_BoolOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Prelude.C_Ordering where+  showsPrec _ Curry.Module.Prelude.C_LT = Prelude.showString("LT")+  showsPrec _ Curry.Module.Prelude.C_EQ = Prelude.showString("EQ")+  showsPrec _ Curry.Module.Prelude.C_GT = Prelude.showString("GT")+  showsPrec _ (Curry.Module.Prelude.C_OrderingOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Prelude.C_Maybe t0) where+  showsPrec _ Curry.Module.Prelude.C_Nothing = Prelude.showString("Nothing")+  showsPrec d (Curry.Module.Prelude.C_Just x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Just "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Prelude.C_MaybeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0,Show t1) => Show (Curry.Module.Prelude.C_Either t0 t1) where+  showsPrec d (Curry.Module.Prelude.C_Left x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Left "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Prelude.C_Right x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Right "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Prelude.C_EitherOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.Prelude.C_SearchTree t0) where+  showsPrec _ Curry.Module.Prelude.C_Fail = Prelude.showString("Fail")+  showsPrec d (Curry.Module.Prelude.C_Value x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Value "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Prelude.C_Choice x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Choice "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ Curry.Module.Prelude.C_Suspend = Prelude.showString("Suspend")+  showsPrec _ (Curry.Module.Prelude.C_SearchTreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Read Curry.Module.Prelude.T0 where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) () s) = (,)(Curry.Module.Prelude.T0)(s)++++++++instance (Read t0,Read t1) => Read (Curry.Module.Prelude.T2 t0 t1) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,) x1 x2) s) = (,)(Curry.Module.Prelude.T2(x1)(x2))(s)++++++++instance (Read t0,Read t1,Read t2) => Read (Curry.Module.Prelude.T3 t0 t1 t2) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,) x1 x2 x3) s) = (,)(Curry.Module.Prelude.T3(x1)(x2)(x3))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3) => Read (Curry.Module.Prelude.T4 t0 t1 t2 t3) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,) x1 x2 x3 x4) s) = (,)(Curry.Module.Prelude.T4(x1)(x2)(x3)(x4))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4) => Read (Curry.Module.Prelude.T5 t0 t1 t2 t3 t4) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,) x1 x2 x3 x4 x5) s) = (,)(Curry.Module.Prelude.T5(x1)(x2)(x3)(x4)(x5))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5) => Read (Curry.Module.Prelude.T6 t0 t1 t2 t3 t4 t5) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,) x1 x2 x3 x4 x5 x6) s) = (,)(Curry.Module.Prelude.T6(x1)(x2)(x3)(x4)(x5)(x6))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6) => Read (Curry.Module.Prelude.T7 t0 t1 t2 t3 t4 t5 t6) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,) x1 x2 x3 x4 x5 x6 x7) s) = (,)(Curry.Module.Prelude.T7(x1)(x2)(x3)(x4)(x5)(x6)(x7))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7) => Read (Curry.Module.Prelude.T8 t0 t1 t2 t3 t4 t5 t6 t7) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8) s) = (,)(Curry.Module.Prelude.T8(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8) => Read (Curry.Module.Prelude.T9 t0 t1 t2 t3 t4 t5 t6 t7 t8) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9) s) = (,)(Curry.Module.Prelude.T9(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8,Read t9) => Read (Curry.Module.Prelude.T10 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9 x10) s) = (,)(Curry.Module.Prelude.T10(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9)(x10))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8,Read t9,Read t10) => Read (Curry.Module.Prelude.T11 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11) s) = (,)(Curry.Module.Prelude.T11(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8,Read t9,Read t10,Read t11) => Read (Curry.Module.Prelude.T12 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12) s) = (,)(Curry.Module.Prelude.T12(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11)(x12))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8,Read t9,Read t10,Read t11,Read t12) => Read (Curry.Module.Prelude.T13 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13) s) = (,)(Curry.Module.Prelude.T13(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11)(x12)(x13))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8,Read t9,Read t10,Read t11,Read t12,Read t13) => Read (Curry.Module.Prelude.T14 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14) s) = (,)(Curry.Module.Prelude.T14(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11)(x12)(x13)(x14))(s)++++++++instance (Read t0,Read t1,Read t2,Read t3,Read t4,Read t5,Read t6,Read t7,Read t8,Read t9,Read t10,Read t11,Read t12,Read t13,Read t14) => Read (Curry.Module.Prelude.T15 t0 t1 t2 t3 t4 t5 t6 t7 t8 t9 t10 t11 t12 t13 t14) where+  readsPrec d r = Prelude.map(readTup)(Prelude.readsPrec(d)(r))+   where+    readTup ((,) ((,,,,,,,,,,,,,,) x1 x2 x3 x4 x5 x6 x7 x8 x9 x10 x11 x12 x13 x14 x15) s) = (,)(Curry.Module.Prelude.T15(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11)(x12)(x13)(x14)(x15))(s)++++++++instance Read Curry.Module.Prelude.C_Bool where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_False)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("False")(r)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_True)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("True")(r)])(r))++++++instance Read Curry.Module.Prelude.C_Ordering where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_LT)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("LT")(r)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_EQ)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("EQ")(r)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_GT)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("GT")(r)])(r)))++++++instance (Read t0) => Read (Curry.Module.Prelude.C_Maybe t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_Nothing)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Nothing")(r)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Prelude.C_Just(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Just")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))++++++instance (Read t0,Read t1) => Read (Curry.Module.Prelude.C_Either t0 t1) where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Prelude.C_Left(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Left")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Prelude.C_Right(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Right")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))++++++instance (Read t0) => Read (Curry.Module.Prelude.C_SearchTree t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_Fail)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Fail")(r)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Prelude.C_Value(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Value")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Prelude.C_Choice(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Choice")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Prelude.C_Suspend)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Prelude")("Suspend")(r)])(r))))++++++op_46 :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> (Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t1)+op_46 x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_'46'46_'35lambda2(x1)(x2))++++c_'46'46_'35lambda2 :: (Curry t9,Curry t11,Curry t7) => (Curry.Module.Prelude.Prim (t9 -> Curry.RunTimeSystem.State -> t11)) -> (Curry.Module.Prelude.Prim (t7 -> Curry.RunTimeSystem.State -> t9)) -> t7 -> Curry.RunTimeSystem.State -> t11+c_'46'46_'35lambda2 x1 x2 x3 st = Curry.Module.Prelude.c_apply(x1)(Curry.Module.Prelude.c_apply(x2)(x3)(st))(st)++++c_id :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> t0+c_id x1 st = x1++++c_const :: (Curry t0,Curry t1) => t0 -> t1 -> Curry.RunTimeSystem.State -> t0+c_const x1 x2 st = x1++++c_curry :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.T2 t0 t1) -> Curry.RunTimeSystem.State -> t2)) -> t0 -> t1 -> Curry.RunTimeSystem.State -> t2+c_curry x1 x2 x3 st = Curry.Module.Prelude.c_apply(x1)(Curry.Module.Prelude.T2(x2)(x3))(st)++++c_uncurry :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t2))) -> (Curry.Module.Prelude.T2 t0 t1) -> Curry.RunTimeSystem.State -> t2+c_uncurry x1 x2@(Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x4)(st)+c_uncurry x1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_uncurry(x1)(x)(st))(i)(xs)(st)+c_uncurry x1 x st = Curry.RunTimeSystem.patternFail("Prelude.uncurry")(x)++++c_flip :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t2))) -> t1 -> t0 -> Curry.RunTimeSystem.State -> t2+c_flip x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x2)(st)++++c_until :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)) -> t0 -> Curry.RunTimeSystem.State -> t0+c_until x1 x2 x3 st = Curry.Module.Prelude.c_until_case_59(x1)(x2)(x3)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)++++op_36 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t1+op_36 x1 x2 st = Curry.Module.Prelude.c_apply(x1)(x2)(st)++++c_ensureSpine :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_ensureSpine st = Curry.Module.Prelude.pf(Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_ensureSpine'46ensureList'4621)))++++c_ensureSpine'46ensureList'4621 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_ensureSpine'46ensureList'4621 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_ensureSpine'46ensureList'4621 x1@((Curry.Module.Prelude.:<) x2 x3) st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_ensureSpine(st))(x3)(st))+c_ensureSpine'46ensureList'4621 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_ensureSpine'46ensureList'4621(x)(st))(i)(xs)(st)+c_ensureSpine'46ensureList'4621 x st = Curry.RunTimeSystem.patternFail("Prelude.ensureSpine.ensureList.21")(x)++++c_seq :: (Curry t0,Curry t1) => t0 -> t1 -> Curry.RunTimeSystem.State -> t1+c_seq x1 x2 st = Curry.Module.Prelude.op_36_33(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(x2)))(x1)(st)++++c_error :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_error x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_prim_error))(x1)(st)++++op_38_38 :: Curry.Module.Prelude.C_Bool -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_38_38 x1@Curry.Module.Prelude.C_True x2 st = x2+op_38_38 x1@Curry.Module.Prelude.C_False x2 st = Curry.Module.Prelude.C_False+op_38_38 (Curry.Module.Prelude.C_BoolOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_38_38(x)(x2)(st))(i)(xs)(st)+op_38_38 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.&&")(x)++++op_124_124 :: Curry.Module.Prelude.C_Bool -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_124_124 x1@Curry.Module.Prelude.C_True x2 st = Curry.Module.Prelude.C_True+op_124_124 x1@Curry.Module.Prelude.C_False x2 st = x2+op_124_124 (Curry.Module.Prelude.C_BoolOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_124_124(x)(x2)(st))(i)(xs)(st)+op_124_124 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.||")(x)++++c_not :: Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_not x1@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_False+c_not x1@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_True+c_not (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_not(x)(st))(i)(xs)(st)+c_not x st = Curry.RunTimeSystem.patternFail("Prelude.not")(x)++++c_otherwise :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_otherwise st = Curry.Module.Prelude.C_True++++c_if_then_else :: (Curry t0) => Curry.Module.Prelude.C_Bool -> t0 -> t0 -> Curry.RunTimeSystem.State -> t0+c_if_then_else x1@Curry.Module.Prelude.C_True x2 x3 st = x2+c_if_then_else x1@Curry.Module.Prelude.C_False x2 x3 st = x3+c_if_then_else (Curry.Module.Prelude.C_BoolOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_if_then_else(x)(x2)(x3)(st))(i)(xs)(st)+c_if_then_else x x2 x3 st = Curry.RunTimeSystem.patternFail("Prelude.if_then_else")(x)++++c_isLT :: Curry.Module.Prelude.C_Ordering -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isLT x1@Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.C_True+c_isLT x1@Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.C_False+c_isLT x1@Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.C_False+c_isLT (Curry.Module.Prelude.C_OrderingOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_isLT(x)(st))(i)(xs)(st)+c_isLT x st = Curry.RunTimeSystem.patternFail("Prelude.isLT")(x)++++c_isGT :: Curry.Module.Prelude.C_Ordering -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isGT x1@Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.C_False+c_isGT x1@Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.C_True+c_isGT x1@Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.C_False+c_isGT (Curry.Module.Prelude.C_OrderingOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_isGT(x)(st))(i)(xs)(st)+c_isGT x st = Curry.RunTimeSystem.patternFail("Prelude.isGT")(x)++++c_isEQ :: Curry.Module.Prelude.C_Ordering -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isEQ x1@Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.C_False+c_isEQ x1@Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.C_False+c_isEQ x1@Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.C_True+c_isEQ (Curry.Module.Prelude.C_OrderingOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_isEQ(x)(st))(i)(xs)(st)+c_isEQ x st = Curry.RunTimeSystem.patternFail("Prelude.isEQ")(x)++++c_compare :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_compare x1@Curry.Module.Prelude.C_Zero x2 st = Curry.Module.Prelude.c_compare_case_58(x2)(st)+c_compare x1@(Curry.Module.Prelude.C_Pos x5) x2 st = Curry.Module.Prelude.c_compare_case_57(x5)(x2)(st)+c_compare x1@(Curry.Module.Prelude.C_Neg x8) x2 st = Curry.Module.Prelude.c_compare_case_56(x8)(x2)(st)+c_compare (Curry.Module.Prelude.C_IntOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_compare(x)(x2)(st))(i)(xs)(st)+c_compare x x2 st = Curry.RunTimeSystem.patternFail("Prelude.compare")(x)++++op_60 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_60 x1 x2 st = Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_compare(x1)(x2)(st))(Curry.Module.Prelude.C_LT)(st)++++op_62 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_62 x1 x2 st = Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_compare(x1)(x2)(st))(Curry.Module.Prelude.C_GT)(st)++++op_60_61 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_60_61 x1 x2 st = Curry.Module.Prelude.op_47_61(Curry.Module.Prelude.c_compare(x1)(x2)(st))(Curry.Module.Prelude.C_GT)(st)++++op_62_61 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_62_61 x1 x2 st = Curry.Module.Prelude.op_47_61(Curry.Module.Prelude.c_compare(x1)(x2)(st))(Curry.Module.Prelude.C_LT)(st)++++c_max :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_max x1 x2 st = Curry.Module.Prelude.c_max_case_55(x1)(x2)(Curry.Module.Prelude.c_compare(x1)(x2)(st))(st)++++c_min :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_min x1 x2 st = Curry.Module.Prelude.c_min_case_54(x1)(x2)(Curry.Module.Prelude.c_compare(x1)(x2)(st))(st)++++op_47_61 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_47_61 x1 x2 st = Curry.Module.Prelude.c_not(Curry.Module.Prelude.op_61_61(x1)(x2)(st))(st)++++c_fst :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T2 t0 t1) -> Curry.RunTimeSystem.State -> t0+c_fst x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_fst (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_fst(x)(st))(i)(xs)(st)+c_fst x st = Curry.RunTimeSystem.patternFail("Prelude.fst")(x)++++c_snd :: (Curry t0,Curry t1) => (Curry.Module.Prelude.T2 t0 t1) -> Curry.RunTimeSystem.State -> t1+c_snd x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_snd (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_snd(x)(st))(i)(xs)(st)+c_snd x st = Curry.RunTimeSystem.patternFail("Prelude.snd")(x)++++c_head :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_head x1@((Curry.Module.Prelude.:<) x2 x3) st = x2+c_head (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_head(x)(st))(i)(xs)(st)+c_head x st = Curry.RunTimeSystem.patternFail("Prelude.head")(x)++++c_tail :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_tail x1@((Curry.Module.Prelude.:<) x2 x3) st = x3+c_tail (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_tail(x)(st))(i)(xs)(st)+c_tail x st = Curry.RunTimeSystem.patternFail("Prelude.tail")(x)++++c_null :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_null x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_True+c_null x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.C_False+c_null (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_null(x)(st))(i)(xs)(st)+c_null x st = Curry.RunTimeSystem.patternFail("Prelude.null")(x)++++op_43_43 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+op_43_43 x1@Curry.Module.Prelude.List x2 st = x2+op_43_43 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.op_43_43(x4)(x2)(st))+op_43_43 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_43_43(x)(x2)(st))(i)(xs)(st)+op_43_43 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.++")(x)++++c_length :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_length x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Zero+c_length x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.Prelude.c_length(x3)(st))(st)+c_length (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_length(x)(st))(i)(xs)(st)+c_length x st = Curry.RunTimeSystem.patternFail("Prelude.length")(x)++++op_33_33 :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> t0+op_33_33 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.Prelude.c_'33'33_case_53(x2)(x3)(x4)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st)+op_33_33 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_33_33(x)(x2)(st))(i)(xs)(st)+op_33_33 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.!!")(x)++++c_map :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1+c_map x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_map x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(Curry.Module.Prelude.c_map(x1)(x4)(st))+c_map x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_map(x1)(x)(st))(i)(xs)(st)+c_map x1 x st = Curry.RunTimeSystem.patternFail("Prelude.map")(x)++++c_foldl :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t0))) -> t0 -> (Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0+c_foldl x1 x2 x3@Curry.Module.Prelude.List st = x2+c_foldl x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.c_foldl(x1)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(x4)(st))(x5)(st)+c_foldl x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_foldl(x1)(x2)(x)(st))(i)(xs)(st)+c_foldl x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.foldl")(x)++++c_foldl1 :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_foldl1 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_foldl(x1)(x3)(x4)(st)+c_foldl1 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_foldl1(x1)(x)(st))(i)(xs)(st)+c_foldl1 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.foldl1")(x)++++c_foldr :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1))) -> t1 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t1+c_foldr x1 x2 x3@Curry.Module.Prelude.List st = x2+c_foldr x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(Curry.Module.Prelude.c_foldr(x1)(x2)(x5)(st))(st)+c_foldr x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_foldr(x1)(x2)(x)(st))(i)(xs)(st)+c_foldr x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.foldr")(x)++++c_foldr1 :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_foldr1 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_foldr1_case_51(x1)(x3)(x4)(st)+c_foldr1 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_foldr1(x1)(x)(st))(i)(xs)(st)+c_foldr1 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.foldr1")(x)++++c_filter :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_filter x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_filter x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_filter_case_50(x1)(x3)(x4)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)+c_filter x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_filter(x1)(x)(st))(i)(xs)(st)+c_filter x1 x st = Curry.RunTimeSystem.patternFail("Prelude.filter")(x)++++c_zip :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)+c_zip x1@Curry.Module.Prelude.List x2 st = Curry.Module.Prelude.List+c_zip x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.Prelude.c_zip_case_49(x3)(x4)(x2)(st)+c_zip (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zip(x)(x2)(st))(i)(xs)(st)+c_zip x x2 st = Curry.RunTimeSystem.patternFail("Prelude.zip")(x)++++c_zip3 :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t1) -> (Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T3 t0 t1 t2)+c_zip3 x1@Curry.Module.Prelude.List x2 x3 st = Curry.Module.Prelude.List+c_zip3 x1@((Curry.Module.Prelude.:<) x4 x5) x2 x3 st = Curry.Module.Prelude.c_zip3_case_48(x3)(x4)(x5)(x2)(st)+c_zip3 (Curry.Module.Prelude.ListOr i xs) x2 x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zip3(x)(x2)(x3)(st))(i)(xs)(st)+c_zip3 x x2 x3 st = Curry.RunTimeSystem.patternFail("Prelude.zip3")(x)++++c_zipWith :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t2))) -> (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t2+c_zipWith x1 x2@Curry.Module.Prelude.List x3 st = Curry.Module.Prelude.List+c_zipWith x1 x2@((Curry.Module.Prelude.:<) x4 x5) x3 st = Curry.Module.Prelude.c_zipWith_case_46(x1)(x4)(x5)(x3)(st)+c_zipWith x1 (Curry.Module.Prelude.ListOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zipWith(x1)(x)(x3)(st))(i)(xs)(st)+c_zipWith x1 x x3 st = Curry.RunTimeSystem.patternFail("Prelude.zipWith")(x)++++c_zipWith3 :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t3)))) -> (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t1) -> (Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t3+c_zipWith3 x1 x2@Curry.Module.Prelude.List x3 x4 st = Curry.Module.Prelude.List+c_zipWith3 x1 x2@((Curry.Module.Prelude.:<) x5 x6) x3 x4 st = Curry.Module.Prelude.c_zipWith3_case_45(x1)(x4)(x5)(x6)(x3)(st)+c_zipWith3 x1 (Curry.Module.Prelude.ListOr i xs) x3 x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zipWith3(x1)(x)(x3)(x4)(st))(i)(xs)(st)+c_zipWith3 x1 x x3 x4 st = Curry.RunTimeSystem.patternFail("Prelude.zipWith3")(x)++++c_unzip :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t1)+c_unzip x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_unzip x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.c_unzip_case_43(x3)(x2)(st)+c_unzip (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip(x)(st))(i)(xs)(st)+c_unzip x st = Curry.RunTimeSystem.patternFail("Prelude.unzip")(x)++++c_unzip'46_'35selFP3'35xs :: (Curry t476,Curry t477) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t476) (Curry.Module.Prelude.List t477)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t476+c_unzip'46_'35selFP3'35xs x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_unzip'46_'35selFP3'35xs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip'46_'35selFP3'35xs(x)(st))(i)(xs)(st)+c_unzip'46_'35selFP3'35xs x st = Curry.RunTimeSystem.patternFail("Prelude.unzip._#selFP3#xs")(x)++++c_unzip'46_'35selFP4'35ys :: (Curry t476,Curry t477) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t476) (Curry.Module.Prelude.List t477)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t477+c_unzip'46_'35selFP4'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_unzip'46_'35selFP4'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip'46_'35selFP4'35ys(x)(st))(i)(xs)(st)+c_unzip'46_'35selFP4'35ys x st = Curry.RunTimeSystem.patternFail("Prelude.unzip._#selFP4#ys")(x)++++c_unzip3 :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.List (Curry.Module.Prelude.T3 t0 t1 t2)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T3 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.List t2)+c_unzip3 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.T3(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_unzip3 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.c_unzip3_case_42(x3)(x2)(st)+c_unzip3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip3(x)(st))(i)(xs)(st)+c_unzip3 x st = Curry.RunTimeSystem.patternFail("Prelude.unzip3")(x)++++c_unzip3'46_'35selFP6'35xs :: (Curry t493,Curry t494,Curry t495) => (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List t493) (Curry.Module.Prelude.List t494) (Curry.Module.Prelude.List t495)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t493+c_unzip3'46_'35selFP6'35xs x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x2+c_unzip3'46_'35selFP6'35xs (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip3'46_'35selFP6'35xs(x)(st))(i)(xs)(st)+c_unzip3'46_'35selFP6'35xs x st = Curry.RunTimeSystem.patternFail("Prelude.unzip3._#selFP6#xs")(x)++++c_unzip3'46_'35selFP7'35ys :: (Curry t493,Curry t494,Curry t495) => (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List t493) (Curry.Module.Prelude.List t494) (Curry.Module.Prelude.List t495)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t494+c_unzip3'46_'35selFP7'35ys x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x3+c_unzip3'46_'35selFP7'35ys (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip3'46_'35selFP7'35ys(x)(st))(i)(xs)(st)+c_unzip3'46_'35selFP7'35ys x st = Curry.RunTimeSystem.patternFail("Prelude.unzip3._#selFP7#ys")(x)++++c_unzip3'46_'35selFP8'35zs :: (Curry t493,Curry t494,Curry t495) => (Curry.Module.Prelude.T3 (Curry.Module.Prelude.List t493) (Curry.Module.Prelude.List t494) (Curry.Module.Prelude.List t495)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t495+c_unzip3'46_'35selFP8'35zs x1@(Curry.Module.Prelude.T3 x2 x3 x4) st = x4+c_unzip3'46_'35selFP8'35zs (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip3'46_'35selFP8'35zs(x)(st))(i)(xs)(st)+c_unzip3'46_'35selFP8'35zs x st = Curry.RunTimeSystem.patternFail("Prelude.unzip3._#selFP8#zs")(x)++++c_concat :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_concat x1 st = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_43_43))(Curry.Module.Prelude.List)(x1)(st)++++c_concatMap :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1)+c_concatMap x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_concat))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++++c_iterate :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_iterate x1 x2 st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.c_iterate(x1)(Curry.Module.Prelude.c_apply(x1)(x2)(st))(st))++++c_repeat :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_repeat x1 st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.c_repeat(x1)(st))++++c_replicate :: (Curry t0) => Curry.Module.Prelude.C_Int -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_replicate x1 x2 st = Curry.Module.Prelude.c_take(x1)(Curry.Module.Prelude.c_repeat(x2)(st))(st)++++c_take :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_take x1@(Curry.Module.Prelude.C_Neg x3) x2 st = Curry.Module.Prelude.List+c_take x1@Curry.Module.Prelude.C_Zero x2 st = Curry.Module.Prelude.List+c_take x1@(Curry.Module.Prelude.C_Pos x4) x2 st = Curry.Module.Prelude.c_take_case_41(x4)(x2)(st)+c_take (Curry.Module.Prelude.C_IntOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_take(x)(x2)(st))(i)(xs)(st)+c_take x x2 st = Curry.RunTimeSystem.patternFail("Prelude.take")(x)++++c_drop :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_drop x1 x2 st = Curry.Module.Prelude.c_drop_case_40(x1)(x2)(Curry.Module.Prelude.op_60_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_drop'46dropp'46272 :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_drop'46dropp'46272 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_drop'46dropp'46272 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_drop(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x4)(st)+c_drop'46dropp'46272 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_drop'46dropp'46272(x1)(x)(st))(i)(xs)(st)+c_drop'46dropp'46272 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.drop.dropp.272")(x)++++c_splitAt :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t0)+c_splitAt x1 x2 st = Curry.Module.Prelude.c_splitAt_case_39(x1)(x2)(Curry.Module.Prelude.op_60_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_splitAt'46splitAtp'46282 :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t0)+c_splitAt'46splitAtp'46282 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_splitAt'46splitAtp'46282 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = let {x5 = Curry.Module.Prelude.c_splitAt(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x4)(st)} in Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.c_splitAt'46splitAtp'46282'46_'35selFP10'35ys(x5)(st)))(Curry.Module.Prelude.c_splitAt'46splitAtp'46282'46_'35selFP11'35zs(x5)(st))+c_splitAt'46splitAtp'46282 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_splitAt'46splitAtp'46282(x1)(x)(st))(i)(xs)(st)+c_splitAt'46splitAtp'46282 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.splitAt.splitAtp.282")(x)++++c_splitAt'46splitAtp'46282'46_'35selFP10'35ys :: (Curry t576) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t576) (Curry.Module.Prelude.List t576)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t576+c_splitAt'46splitAtp'46282'46_'35selFP10'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_splitAt'46splitAtp'46282'46_'35selFP10'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_splitAt'46splitAtp'46282'46_'35selFP10'35ys(x)(st))(i)(xs)(st)+c_splitAt'46splitAtp'46282'46_'35selFP10'35ys x st = Curry.RunTimeSystem.patternFail("Prelude.splitAt.splitAtp.282._#selFP10#ys")(x)++++c_splitAt'46splitAtp'46282'46_'35selFP11'35zs :: (Curry t576) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t576) (Curry.Module.Prelude.List t576)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t576+c_splitAt'46splitAtp'46282'46_'35selFP11'35zs x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_splitAt'46splitAtp'46282'46_'35selFP11'35zs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_splitAt'46splitAtp'46282'46_'35selFP11'35zs(x)(st))(i)(xs)(st)+c_splitAt'46splitAtp'46282'46_'35selFP11'35zs x st = Curry.RunTimeSystem.patternFail("Prelude.splitAt.splitAtp.282._#selFP11#zs")(x)++++c_takeWhile :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_takeWhile x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_takeWhile x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_takeWhile_case_38(x1)(x3)(x4)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)+c_takeWhile x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_takeWhile(x1)(x)(st))(i)(xs)(st)+c_takeWhile x1 x st = Curry.RunTimeSystem.patternFail("Prelude.takeWhile")(x)++++c_dropWhile :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_dropWhile x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_dropWhile x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_dropWhile_case_37(x1)(x3)(x4)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)+c_dropWhile x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_dropWhile(x1)(x)(st))(i)(xs)(st)+c_dropWhile x1 x st = Curry.RunTimeSystem.patternFail("Prelude.dropWhile")(x)++++c_span :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t0)+c_span x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_span x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_span_case_36(x1)(x3)(x4)(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)+c_span x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_span(x1)(x)(st))(i)(xs)(st)+c_span x1 x st = Curry.RunTimeSystem.patternFail("Prelude.span")(x)++++c_span'46_'35selFP13'35ys :: (Curry t627) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t627) (Curry.Module.Prelude.List t627)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t627+c_span'46_'35selFP13'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_span'46_'35selFP13'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_span'46_'35selFP13'35ys(x)(st))(i)(xs)(st)+c_span'46_'35selFP13'35ys x st = Curry.RunTimeSystem.patternFail("Prelude.span._#selFP13#ys")(x)++++c_span'46_'35selFP14'35zs :: (Curry t627) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t627) (Curry.Module.Prelude.List t627)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t627+c_span'46_'35selFP14'35zs x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_span'46_'35selFP14'35zs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_span'46_'35selFP14'35zs(x)(st))(i)(xs)(st)+c_span'46_'35selFP14'35zs x st = Curry.RunTimeSystem.patternFail("Prelude.span._#selFP14#zs")(x)++++c_break :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List t0))+c_break x1 st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_span(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_not))(x1)(st)))++++c_lines :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_lines x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_lines x1@((Curry.Module.Prelude.:<) x2 x3) st = let {x4 = Curry.Module.Prelude.c_lines'46splitline'46314((Curry.Module.Prelude.:<)(x2)(x3))(st)} in (Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_lines'46_'35selFP19'35l(x4)(st))(Curry.Module.Prelude.c_lines(Curry.Module.Prelude.c_lines'46_'35selFP20'35xs_l(x4)(st))(st))+c_lines (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines(x)(st))(i)(xs)(st)+c_lines x st = Curry.RunTimeSystem.patternFail("Prelude.lines")(x)++++c_lines'46splitline'46314 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_lines'46splitline'46314 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_lines'46splitline'46314 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.c_lines'46splitline'46314_case_35(x2)(x3)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Char('\n'))(st))(st)+c_lines'46splitline'46314 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines'46splitline'46314(x)(st))(i)(xs)(st)+c_lines'46splitline'46314 x st = Curry.RunTimeSystem.patternFail("Prelude.lines.splitline.314")(x)++++c_lines'46splitline'46314'46_'35selFP16'35ds :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_lines'46splitline'46314'46_'35selFP16'35ds x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_lines'46splitline'46314'46_'35selFP16'35ds (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines'46splitline'46314'46_'35selFP16'35ds(x)(st))(i)(xs)(st)+c_lines'46splitline'46314'46_'35selFP16'35ds x st = Curry.RunTimeSystem.patternFail("Prelude.lines.splitline.314._#selFP16#ds")(x)++++c_lines'46splitline'46314'46_'35selFP17'35es :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_lines'46splitline'46314'46_'35selFP17'35es x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_lines'46splitline'46314'46_'35selFP17'35es (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines'46splitline'46314'46_'35selFP17'35es(x)(st))(i)(xs)(st)+c_lines'46splitline'46314'46_'35selFP17'35es x st = Curry.RunTimeSystem.patternFail("Prelude.lines.splitline.314._#selFP17#es")(x)++++c_lines'46_'35selFP19'35l :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_lines'46_'35selFP19'35l x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_lines'46_'35selFP19'35l (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines'46_'35selFP19'35l(x)(st))(i)(xs)(st)+c_lines'46_'35selFP19'35l x st = Curry.RunTimeSystem.patternFail("Prelude.lines._#selFP19#l")(x)++++c_lines'46_'35selFP20'35xs_l :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_lines'46_'35selFP20'35xs_l x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_lines'46_'35selFP20'35xs_l (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines'46_'35selFP20'35xs_l(x)(st))(i)(xs)(st)+c_lines'46_'35selFP20'35xs_l x st = Curry.RunTimeSystem.patternFail("Prelude.lines._#selFP20#xs_l")(x)++++c_unlines :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_unlines x1 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_43_43))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))))(st))(x1)(st)++++c_words :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_words x1 st = let {x2 = Curry.Module.Prelude.c_dropWhile(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_words'46isSpace'46326))(x1)(st)} in Curry.Module.Prelude.c_words_case_34(x2)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.List)(st))(st)++++c_words'46isSpace'46326 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_words'46isSpace'46326 x1 st = Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char(' '))(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\t'))(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\n'))(st))(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\r'))(st))(st))(st))(st)++++c_words'46_'35selFP22'35w :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_words'46_'35selFP22'35w x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_words'46_'35selFP22'35w (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_words'46_'35selFP22'35w(x)(st))(i)(xs)(st)+c_words'46_'35selFP22'35w x st = Curry.RunTimeSystem.patternFail("Prelude.words._#selFP22#w")(x)++++c_words'46_'35selFP23'35s2 :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_words'46_'35selFP23'35s2 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_words'46_'35selFP23'35s2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_words'46_'35selFP23'35s2(x)(st))(i)(xs)(st)+c_words'46_'35selFP23'35s2 x st = Curry.RunTimeSystem.patternFail("Prelude.words._#selFP23#s2")(x)++++c_unwords :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_unwords x1 st = Curry.Module.Prelude.c_unwords_case_33(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.List)(st))(st)++++c_unwords'46_'35lambda6 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_unwords'46_'35lambda6 x1 x2 st = Curry.Module.Prelude.op_43_43(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(x2))(st)++++c_reverse :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_reverse st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldl(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pc))((Curry.Module.Prelude.:<)))))(Curry.Module.Prelude.List))++++c_and :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_and st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_38_38))(Curry.Module.Prelude.C_True))++++c_or :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Bool) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_or st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_124_124))(Curry.Module.Prelude.C_False))++++c_any :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_any x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.c_or(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++++c_all :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_all x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.c_and(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++++c_elem :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_elem x1 st = Curry.Module.Prelude.c_any(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_61_61(x1)))(st)++++c_notElem :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_notElem x1 st = Curry.Module.Prelude.c_all(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_47_61(x1)))(st)++++c_lookup :: (Curry t0,Curry t1) => t0 -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1+c_lookup x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Nothing+c_lookup x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_lookup_case_32(x1)(x4)(x3)(st)+c_lookup x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lookup(x1)(x)(st))(i)(xs)(st)+c_lookup x1 x st = Curry.RunTimeSystem.patternFail("Prelude.lookup")(x)++++c_enumFrom :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_enumFrom x1 st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.c_enumFrom(Curry.Module.Prelude.op_43(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))++++c_enumFromThen :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_enumFromThen x1 x2 st = Curry.Module.Prelude.c_iterate(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(x2)(x1)(st))))(x1)(st)++++c_enumFromTo :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_enumFromTo x1 x2 st = Curry.Module.Prelude.c_enumFromTo_case_30(x1)(x2)(Curry.Module.Prelude.op_62(x1)(x2)(st))(st)++++c_enumFromThenTo :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_enumFromThenTo x1 x2 x3 st = Curry.Module.Prelude.c_takeWhile(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_enumFromThenTo'46p'46364(x3)(x1)(x2)))(Curry.Module.Prelude.c_enumFromThen(x1)(x2)(st))(st)++++c_enumFromThenTo'46p'46364 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_enumFromThenTo'46p'46364 x1 x2 x3 x4 st = Curry.Module.Prelude.c_enumFromThenTo'46p'46364_case_29(x1)(x2)(x3)(x4)(Curry.Module.Prelude.op_62_61(x3)(x2)(st))(st)++++c_ord :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ord x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_prim_ord))(x1)(st)++++c_chr :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_chr x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_prim_chr))(x1)(st)++++c_succ :: Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Nat+c_succ x1@(Curry.Module.Prelude.C_O x2) st = Curry.Module.Prelude.C_I(x2)+c_succ x1@(Curry.Module.Prelude.C_I x3) st = Curry.Module.Prelude.C_O(Curry.Module.Prelude.c_succ(x3)(st))+c_succ x1@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)+c_succ (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_succ(x)(st))(i)(xs)(st)+c_succ x st = Curry.RunTimeSystem.patternFail("Prelude.succ")(x)++++op_43_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Nat+op_43_94 x1@(Curry.Module.Prelude.C_O x3) x2 st = Curry.Module.Prelude.c_'43'94_case_28(x3)(x2)(st)+op_43_94 x1@(Curry.Module.Prelude.C_I x6) x2 st = Curry.Module.Prelude.c_'43'94_case_27(x6)(x2)(st)+op_43_94 x1@Curry.Module.Prelude.C_IHi x2 st = Curry.Module.Prelude.c_succ(x2)(st)+op_43_94 (Curry.Module.Prelude.C_NatOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_43_94(x)(x2)(st))(i)(xs)(st)+op_43_94 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.+^")(x)++++c_cmpNat :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_cmpNat x1@Curry.Module.Prelude.C_IHi x2 st = Curry.Module.Prelude.c_cmpNat_case_26(x2)(st)+c_cmpNat x1@(Curry.Module.Prelude.C_O x5) x2 st = Curry.Module.Prelude.c_cmpNat_case_25(x5)(x2)(st)+c_cmpNat x1@(Curry.Module.Prelude.C_I x8) x2 st = Curry.Module.Prelude.c_cmpNat_case_24(x8)(x2)(st)+c_cmpNat (Curry.Module.Prelude.C_NatOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNat(x)(x2)(st))(i)(xs)(st)+c_cmpNat x x2 st = Curry.RunTimeSystem.patternFail("Prelude.cmpNat")(x)++++c_cmpNatLT :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_cmpNatLT x1@Curry.Module.Prelude.C_IHi x2 st = Curry.Module.Prelude.C_LT+c_cmpNatLT x1@(Curry.Module.Prelude.C_O x3) x2 st = Curry.Module.Prelude.c_cmpNatLT_case_23(x3)(x2)(st)+c_cmpNatLT x1@(Curry.Module.Prelude.C_I x6) x2 st = Curry.Module.Prelude.c_cmpNatLT_case_22(x6)(x2)(st)+c_cmpNatLT (Curry.Module.Prelude.C_NatOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNatLT(x)(x2)(st))(i)(xs)(st)+c_cmpNatLT x x2 st = Curry.RunTimeSystem.patternFail("Prelude.cmpNatLT")(x)++++c_cmpNatGT :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_cmpNatGT x1 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_GT+c_cmpNatGT x1 x2@(Curry.Module.Prelude.C_O x3) st = Curry.Module.Prelude.c_cmpNatGT_case_21(x3)(x1)(st)+c_cmpNatGT x1 x2@(Curry.Module.Prelude.C_I x6) st = Curry.Module.Prelude.c_cmpNatGT_case_20(x6)(x1)(st)+c_cmpNatGT x1 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNatGT(x1)(x)(st))(i)(xs)(st)+c_cmpNatGT x1 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNatGT")(x)++++op_60_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_60_94 x1 x2 st = Curry.Module.Prelude.c_isLT(Curry.Module.Prelude.c_cmpNat(x1)(x2)(st))(st)++++op_62_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_62_94 x1 x2 st = Curry.Module.Prelude.c_isGT(Curry.Module.Prelude.c_cmpNat(x1)(x2)(st))(st)++++op_60_61_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_60_61_94 x1 x2 st = Curry.Module.Prelude.c_not(Curry.Module.Prelude.c_isGT(Curry.Module.Prelude.c_cmpNat(x1)(x2)(st))(st))(st)++++op_62_61_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_62_61_94 x1 x2 st = Curry.Module.Prelude.c_not(Curry.Module.Prelude.c_isLT(Curry.Module.Prelude.c_cmpNat(x1)(x2)(st))(st))(st)++++op_42_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Nat+op_42_94 x1@Curry.Module.Prelude.C_IHi x2 st = x2+op_42_94 x1@(Curry.Module.Prelude.C_I x3) x2 st = Curry.Module.Prelude.op_43_94(Curry.Module.Prelude.C_O(Curry.Module.Prelude.op_42_94(x2)(x3)(st)))(x2)(st)+op_42_94 x1@(Curry.Module.Prelude.C_O x4) x2 st = Curry.Module.Prelude.C_O(Curry.Module.Prelude.op_42_94(x4)(x2)(st))+op_42_94 (Curry.Module.Prelude.C_NatOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_42_94(x)(x2)(st))(i)(xs)(st)+op_42_94 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.*^")(x)++++c_pred :: Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Nat+c_pred x1@(Curry.Module.Prelude.C_O x2) st = Curry.Module.Prelude.c_pred_case_19(x2)(st)+c_pred x1@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.C_O(x5)+c_pred (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_pred(x)(st))(i)(xs)(st)+c_pred x st = Curry.RunTimeSystem.patternFail("Prelude.pred")(x)++++c_inc :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_inc x1@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_inc x1@(Curry.Module.Prelude.C_Pos x2) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.c_succ(x2)(st))+c_inc x1@(Curry.Module.Prelude.C_Neg x3) st = Curry.Module.Prelude.c_inc_case_18(x3)(st)+c_inc (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_inc(x)(st))(i)(xs)(st)+c_inc x st = Curry.RunTimeSystem.patternFail("Prelude.inc")(x)++++c_dec :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_dec x1@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.C_IHi)+c_dec x1@(Curry.Module.Prelude.C_Neg x2) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.c_succ(x2)(st))+c_dec x1@(Curry.Module.Prelude.C_Pos x3) st = Curry.Module.Prelude.c_dec_case_17(x3)(st)+c_dec (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_dec(x)(st))(i)(xs)(st)+c_dec x st = Curry.RunTimeSystem.patternFail("Prelude.dec")(x)++++c_mult2 :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_mult2 x1@(Curry.Module.Prelude.C_Pos x2) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(x2))+c_mult2 x1@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Zero+c_mult2 x1@(Curry.Module.Prelude.C_Neg x3) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.C_O(x3))+c_mult2 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_mult2(x)(st))(i)(xs)(st)+c_mult2 x st = Curry.RunTimeSystem.patternFail("Prelude.mult2")(x)++++op_45_94 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+op_45_94 x1@Curry.Module.Prelude.C_IHi x2 st = Curry.Module.Prelude.c_inc(Curry.Module.Prelude.C_Neg(x2))(st)+op_45_94 x1@(Curry.Module.Prelude.C_O x3) x2 st = Curry.Module.Prelude.c_'45'94_case_16(x3)(x2)(st)+op_45_94 x1@(Curry.Module.Prelude.C_I x6) x2 st = Curry.Module.Prelude.c_'45'94_case_15(x6)(x2)(st)+op_45_94 (Curry.Module.Prelude.C_NatOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_45_94(x)(x2)(st))(i)(xs)(st)+op_45_94 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.-^")(x)++++c_div2 :: Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Nat+c_div2 x1@(Curry.Module.Prelude.C_O x2) st = x2+c_div2 x1@(Curry.Module.Prelude.C_I x3) st = x3+c_div2 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_div2(x)(st))(i)(xs)(st)+c_div2 x st = Curry.RunTimeSystem.patternFail("Prelude.div2")(x)++++c_mod2 :: Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_mod2 x1@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_mod2 x1@(Curry.Module.Prelude.C_O x2) st = Curry.Module.Prelude.C_Zero+c_mod2 x1@(Curry.Module.Prelude.C_I x3) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_mod2 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_mod2(x)(st))(i)(xs)(st)+c_mod2 x st = Curry.RunTimeSystem.patternFail("Prelude.mod2")(x)++++c_divmodNat :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int+c_divmodNat x1 x2 st = Curry.Module.Prelude.c_divmodNat_case_14(x1)(x2)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_IHi)(st))(st)++++c_divmodNat'46shift'46523 :: Curry.Module.Prelude.C_Nat -> Curry.Module.Prelude.C_Nat -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Nat+c_divmodNat'46shift'46523 x1@(Curry.Module.Prelude.C_O x3) x2 st = Curry.Module.Prelude.C_O(x2)+c_divmodNat'46shift'46523 x1@(Curry.Module.Prelude.C_I x4) x2 st = Curry.Module.Prelude.C_I(x2)+c_divmodNat'46shift'46523 (Curry.Module.Prelude.C_NatOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat'46shift'46523(x)(x2)(st))(i)(xs)(st)+c_divmodNat'46shift'46523 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat.shift.523")(x)++++op_43 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+op_43 x1@(Curry.Module.Prelude.C_Pos x3) x2 st = Curry.Module.Prelude.c_'43_case_7(x1)(x3)(x2)(st)+op_43 x1@(Curry.Module.Prelude.C_Neg x6) x2 st = Curry.Module.Prelude.c_'43_case_6(x1)(x6)(x2)(st)+op_43 x1@Curry.Module.Prelude.C_Zero x2 st = x2+op_43 (Curry.Module.Prelude.C_IntOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_43(x)(x2)(st))(i)(xs)(st)+op_43 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.+")(x)++++op_45 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+op_45 x1 x2@(Curry.Module.Prelude.C_Neg x3) st = Curry.Module.Prelude.op_43(x1)(Curry.Module.Prelude.C_Pos(x3))(st)+op_45 x1 x2@(Curry.Module.Prelude.C_Pos x4) st = Curry.Module.Prelude.op_43(x1)(Curry.Module.Prelude.C_Neg(x4))(st)+op_45 x1 x2@Curry.Module.Prelude.C_Zero st = x1+op_45 x1 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_45(x1)(x)(st))(i)(xs)(st)+op_45 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.-")(x)++++op_42 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+op_42 x1@(Curry.Module.Prelude.C_Pos x3) x2 st = Curry.Module.Prelude.c_'42_case_5(x3)(x2)(st)+op_42 x1@(Curry.Module.Prelude.C_Neg x6) x2 st = Curry.Module.Prelude.c_'42_case_4(x6)(x2)(st)+op_42 x1@Curry.Module.Prelude.C_Zero x2 st = Curry.Module.Prelude.C_Zero+op_42 (Curry.Module.Prelude.C_IntOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.op_42(x)(x2)(st))(i)(xs)(st)+op_42 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.*")(x)++++c_divmod :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int+c_divmod x1@Curry.Module.Prelude.C_Zero x2 st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.C_Zero)+c_divmod x1@(Curry.Module.Prelude.C_Pos x3) x2 st = Curry.Module.Prelude.c_divmod_case_3(x3)(x2)(st)+c_divmod x1@(Curry.Module.Prelude.C_Neg x9) x2 st = Curry.Module.Prelude.c_divmod_case_2(x9)(x2)(st)+c_divmod (Curry.Module.Prelude.C_IntOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod(x)(x2)(st))(i)(xs)(st)+c_divmod x x2 st = Curry.RunTimeSystem.patternFail("Prelude.divmod")(x)++++c_divmod'46_'35selFP25'35d :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_divmod'46_'35selFP25'35d x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_divmod'46_'35selFP25'35d (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod'46_'35selFP25'35d(x)(st))(i)(xs)(st)+c_divmod'46_'35selFP25'35d x st = Curry.RunTimeSystem.patternFail("Prelude.divmod._#selFP25#d")(x)++++c_divmod'46_'35selFP26'35m :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_divmod'46_'35selFP26'35m x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_divmod'46_'35selFP26'35m (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod'46_'35selFP26'35m(x)(st))(i)(xs)(st)+c_divmod'46_'35selFP26'35m x st = Curry.RunTimeSystem.patternFail("Prelude.divmod._#selFP26#m")(x)++++c_divmod'46_'35selFP28'35d :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_divmod'46_'35selFP28'35d x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_divmod'46_'35selFP28'35d (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod'46_'35selFP28'35d(x)(st))(i)(xs)(st)+c_divmod'46_'35selFP28'35d x st = Curry.RunTimeSystem.patternFail("Prelude.divmod._#selFP28#d")(x)++++c_divmod'46_'35selFP29'35m :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_divmod'46_'35selFP29'35m x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_divmod'46_'35selFP29'35m (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod'46_'35selFP29'35m(x)(st))(i)(xs)(st)+c_divmod'46_'35selFP29'35m x st = Curry.RunTimeSystem.patternFail("Prelude.divmod._#selFP29#m")(x)++++c_divmod'46_'35selFP31'35d :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_divmod'46_'35selFP31'35d x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_divmod'46_'35selFP31'35d (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod'46_'35selFP31'35d(x)(st))(i)(xs)(st)+c_divmod'46_'35selFP31'35d x st = Curry.RunTimeSystem.patternFail("Prelude.divmod._#selFP31#d")(x)++++c_divmod'46_'35selFP32'35m :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_divmod'46_'35selFP32'35m x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_divmod'46_'35selFP32'35m (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod'46_'35selFP32'35m(x)(st))(i)(xs)(st)+c_divmod'46_'35selFP32'35m x st = Curry.RunTimeSystem.patternFail("Prelude.divmod._#selFP32#m")(x)++++c_div :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_div x1 x2 st = Curry.Module.Prelude.c_fst(Curry.Module.Prelude.c_divmod(x1)(x2)(st))(st)++++c_mod :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_mod x1 x2 st = Curry.Module.Prelude.c_snd(Curry.Module.Prelude.c_divmod(x1)(x2)(st))(st)++++c_negate :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_negate x1@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Zero+c_negate x1@(Curry.Module.Prelude.C_Pos x2) st = Curry.Module.Prelude.C_Neg(x2)+c_negate x1@(Curry.Module.Prelude.C_Neg x3) st = Curry.Module.Prelude.C_Pos(x3)+c_negate (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_negate(x)(st))(i)(xs)(st)+c_negate x st = Curry.RunTimeSystem.patternFail("Prelude.negate")(x)++++c_success :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success+c_success st = Curry.Module.Prelude.C_Success++++op_61_58_61 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success+op_61_58_61 x1 x2 st = Curry.Module.Prelude.c_'61'58'61_case_1(x1)(x2)(Curry.Module.Prelude.op_61_61_61(x1)(x2)(st))(st)++++op_38_62 :: (Curry t0) => Curry.Module.Prelude.C_Success -> t0 -> Curry.RunTimeSystem.State -> t0+op_38_62 x1 x2 st = Curry.Module.Prelude.c_cond(x1)(x2)(st)++++c_maybe :: (Curry t0,Curry t1) => t0 -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t0)) -> (Curry.Module.Prelude.C_Maybe t1) -> Curry.RunTimeSystem.State -> t0+c_maybe x1 x2 x3@Curry.Module.Prelude.C_Nothing st = x1+c_maybe x1 x2 x3@(Curry.Module.Prelude.C_Just x4) st = Curry.Module.Prelude.c_apply(x2)(x4)(st)+c_maybe x1 x2 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_maybe(x1)(x2)(x)(st))(i)(xs)(st)+c_maybe x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.maybe")(x)++++c_either :: (Curry t0,Curry t1,Curry t2) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> (Curry.Module.Prelude.Prim (t2 -> Curry.RunTimeSystem.State -> t1)) -> (Curry.Module.Prelude.C_Either t0 t2) -> Curry.RunTimeSystem.State -> t1+c_either x1 x2 x3@(Curry.Module.Prelude.C_Left x4) st = Curry.Module.Prelude.c_apply(x1)(x4)(st)+c_either x1 x2 x3@(Curry.Module.Prelude.C_Right x5) st = Curry.Module.Prelude.c_apply(x2)(x5)(st)+c_either x1 x2 (Curry.Module.Prelude.C_EitherOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_either(x1)(x2)(x)(st))(i)(xs)(st)+c_either x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.either")(x)++++op_62_62 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.C_IO t0) -> (Curry.Module.Prelude.C_IO t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1+op_62_62 x1 x2 st = Curry.Module.Prelude.op_62_62_61(x1)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(x2)))(st)++++c_done :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_done st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.T0)(st)++++c_putChar :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_putChar x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_prim_putChar))(x1)(st)++++c_readFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_readFile x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_prim_readFile))(x1)(st)++++c_writeFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeFile x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_prim_writeFile))(x1)(st))(x2)(st)++++c_appendFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_appendFile x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_prim_appendFile))(x1)(st))(x2)(st)++++c_putStr :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_putStr x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_done(st)+c_putStr x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.op_62_62(Curry.Module.Prelude.c_putChar(x2)(st))(Curry.Module.Prelude.c_putStr(x3)(st))(st)+c_putStr (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_putStr(x)(st))(i)(xs)(st)+c_putStr x st = Curry.RunTimeSystem.patternFail("Prelude.putStr")(x)++++c_putStrLn :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_putStrLn x1 st = Curry.Module.Prelude.op_62_62(Curry.Module.Prelude.c_putStr(x1)(st))(Curry.Module.Prelude.c_putChar(Curry.Module.Prelude.C_Char('\n'))(st))(st)++++c_getLine :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getLine st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_getChar(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_getLine'46_'35lambda10))(st)++++c_getLine'46_'35lambda10 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getLine'46_'35lambda10 x1 st = Curry.Module.Prelude.c_getLine'46_'35lambda10_case_0(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char('\n'))(st))(st)++++c_getLine'46_'35lambda10'46_'35lambda11 :: Curry.Module.Prelude.C_Char -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getLine'46_'35lambda10'46_'35lambda11 x1 x2 st = Curry.Module.Prelude.c_return((Curry.Module.Prelude.:<)(x1)(x2))(st)++++c_show :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_show x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_prim_show))(x1)(st)++++c_print :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_print x1 st = Curry.Module.Prelude.c_putStrLn(Curry.Module.Prelude.c_show(x1)(st))(st)++++c_doSolve :: Curry.Module.Prelude.C_Success -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_doSolve x1 st = Curry.Module.Prelude.c_cond(x1)(Curry.Module.Prelude.c_done(st))(st)++++c_sequenceIO :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.C_IO t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t0)+c_sequenceIO x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.List)(st)+c_sequenceIO x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Prelude.op_62_62_61(x2)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_sequenceIO'46_'35lambda12(x3)))(st)+c_sequenceIO (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_sequenceIO(x)(st))(i)(xs)(st)+c_sequenceIO x st = Curry.RunTimeSystem.patternFail("Prelude.sequenceIO")(x)++++c_sequenceIO'46_'35lambda12 :: (Curry t937) => (Curry.Module.Prelude.List (Curry.Module.Prelude.C_IO t937)) -> t937 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t937)+c_sequenceIO'46_'35lambda12 x1 x2 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_sequenceIO(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_sequenceIO'46_'35lambda12'46_'35lambda13(x2)))(st)++++c_sequenceIO'46_'35lambda12'46_'35lambda13 :: (Curry t937) => t937 -> (Curry.Module.Prelude.List t937) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t937)+c_sequenceIO'46_'35lambda12'46_'35lambda13 x1 x2 st = Curry.Module.Prelude.c_return((Curry.Module.Prelude.:<)(x1)(x2))(st)++++c_sequenceIO_ :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List (Curry.Module.Prelude.C_IO t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_sequenceIO_ st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_62_62))(Curry.Module.Prelude.c_done(st)))++++c_mapIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t1))+c_mapIO x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_sequenceIO))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++++c_mapIO_ :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_mapIO_ x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.c_sequenceIO_(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(x1)))(st)++++op_63 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> t0+op_63 x1 x2 st = Curry.RunTimeSystem.orF(x1)(x2)++++c_allValuesD :: (Curry t0) => (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_allValuesD x1@(Curry.Module.Prelude.C_Value x2) st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.List)+c_allValuesD x1@Curry.Module.Prelude.C_Fail st = Curry.Module.Prelude.List+c_allValuesD x1@Curry.Module.Prelude.C_Suspend st = Curry.Module.Prelude.List+c_allValuesD x1@(Curry.Module.Prelude.C_Choice x3) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_allValuesD))(st))(x3)(st)+c_allValuesD (Curry.Module.Prelude.C_SearchTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesD(x)(st))(i)(xs)(st)+c_allValuesD x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesD")(x)++++c_allValuesB :: (Curry t0) => (Curry.Module.Prelude.C_SearchTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_allValuesB x1 st = Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692((Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.List))(st)++++c_allValuesB'46partition'46692 :: (Curry t0) => (Curry.Module.Prelude.C_SearchTree t0) -> (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0))+c_allValuesB'46partition'46692 x1@(Curry.Module.Prelude.C_Value x3) x2 st = Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP34'35vs(x2)(st)))(Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP35'35ors(x2)(st))+c_allValuesB'46partition'46692 x1@(Curry.Module.Prelude.C_Choice x7) x2 st = Curry.Module.Prelude.T2(Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP37'35vs(x2)(st))(Curry.Module.Prelude.op_43_43(x7)(Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP38'35ors(x2)(st))(st))+c_allValuesB'46partition'46692 x1@Curry.Module.Prelude.C_Fail x2 st = x2+c_allValuesB'46partition'46692 x1@Curry.Module.Prelude.C_Suspend x2 st = x2+c_allValuesB'46partition'46692 (Curry.Module.Prelude.C_SearchTreeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46partition'46692(x)(x2)(st))(i)(xs)(st)+c_allValuesB'46partition'46692 x x2 st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.partition.692")(x)++++c_allValuesB'46partition'46692'46_'35selFP34'35vs :: (Curry t1001) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1001) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1001))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1001+c_allValuesB'46partition'46692'46_'35selFP34'35vs x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_allValuesB'46partition'46692'46_'35selFP34'35vs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP34'35vs(x)(st))(i)(xs)(st)+c_allValuesB'46partition'46692'46_'35selFP34'35vs x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.partition.692._#selFP34#vs")(x)++++c_allValuesB'46partition'46692'46_'35selFP35'35ors :: (Curry t1001) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1001) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1001))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1001)+c_allValuesB'46partition'46692'46_'35selFP35'35ors x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_allValuesB'46partition'46692'46_'35selFP35'35ors (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP35'35ors(x)(st))(i)(xs)(st)+c_allValuesB'46partition'46692'46_'35selFP35'35ors x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.partition.692._#selFP35#ors")(x)++++c_allValuesB'46partition'46692'46_'35selFP37'35vs :: (Curry t1001) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1001) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1001))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1001+c_allValuesB'46partition'46692'46_'35selFP37'35vs x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_allValuesB'46partition'46692'46_'35selFP37'35vs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP37'35vs(x)(st))(i)(xs)(st)+c_allValuesB'46partition'46692'46_'35selFP37'35vs x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.partition.692._#selFP37#vs")(x)++++c_allValuesB'46partition'46692'46_'35selFP38'35ors :: (Curry t1001) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1001) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1001))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1001)+c_allValuesB'46partition'46692'46_'35selFP38'35ors x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_allValuesB'46partition'46692'46_'35selFP38'35ors (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46partition'46692'46_'35selFP38'35ors(x)(st))(i)(xs)(st)+c_allValuesB'46partition'46692'46_'35selFP38'35ors x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.partition.692._#selFP38#ors")(x)++++c_allValuesB'46unfoldOrs'46692 :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_allValuesB'46unfoldOrs'46692 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_allValuesB'46unfoldOrs'46692 x1@((Curry.Module.Prelude.:<) x2 x3) st = let {x4 = Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_allValuesB'46partition'46692))(Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List))((Curry.Module.Prelude.:<)(x2)(x3))(st)} in Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692'46_'35selFP40'35vals(x4)(st))(Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692(Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692'46_'35selFP41'35ors(x4)(st))(st))(st)+c_allValuesB'46unfoldOrs'46692 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692(x)(st))(i)(xs)(st)+c_allValuesB'46unfoldOrs'46692 x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.unfoldOrs.692")(x)++++c_allValuesB'46unfoldOrs'46692'46_'35selFP40'35vals :: (Curry t1014) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1014) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1014))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1014+c_allValuesB'46unfoldOrs'46692'46_'35selFP40'35vals x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_allValuesB'46unfoldOrs'46692'46_'35selFP40'35vals (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692'46_'35selFP40'35vals(x)(st))(i)(xs)(st)+c_allValuesB'46unfoldOrs'46692'46_'35selFP40'35vals x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.unfoldOrs.692._#selFP40#vals")(x)++++c_allValuesB'46unfoldOrs'46692'46_'35selFP41'35ors :: (Curry t1014) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1014) (Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1014))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.C_SearchTree t1014)+c_allValuesB'46unfoldOrs'46692'46_'35selFP41'35ors x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_allValuesB'46unfoldOrs'46692'46_'35selFP41'35ors (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_allValuesB'46unfoldOrs'46692'46_'35selFP41'35ors(x)(st))(i)(xs)(st)+c_allValuesB'46unfoldOrs'46692'46_'35selFP41'35ors x st = Curry.RunTimeSystem.patternFail("Prelude.allValuesB.unfoldOrs.692._#selFP41#ors")(x)++++c_inject :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)+c_inject x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_inject'46_'35lambda14(x1)(x2))++++c_inject'46_'35lambda14 :: (Curry t1025) => (Curry.Module.Prelude.Prim (t1025 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)) -> (Curry.Module.Prelude.Prim (t1025 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success)) -> t1025 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success+c_inject'46_'35lambda14 x1 x2 x3 st = Curry.Module.Prelude.op_38(Curry.Module.Prelude.c_apply(x2)(x3)(st))(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)++++c_PEVAL :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> t0+c_PEVAL x1 st = x1++++c_unknown :: (Curry t0) => Curry.RunTimeSystem.State -> t0+c_unknown st = Curry.RunTimeSystem.freeF(\ x1 -> x1)++++c_getLine'46_'35lambda10_case_0 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.List)(st)+c_getLine'46_'35lambda10_case_0 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_getLine(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_getLine'46_'35lambda10'46_'35lambda11(x1)))(st)+c_getLine'46_'35lambda10_case_0 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_getLine'46_'35lambda10_case_0(x1)(x)(st))(i)(xs)(st)+c_getLine'46_'35lambda10_case_0 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.getLine._#lambda10_case_0")(x)++++c_'61'58'61_case_1 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Success+c_'61'58'61_case_1 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'61'58'61_case_1(x1)(x2)(x)(st))(i)(xs)(st)+c_'61'58'61_case_1 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.=:=_case_1")(x)++++c_divmod_case_2 x9 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('0'))(Curry.Module.Prelude.List))))))))))))))(st)+c_divmod_case_2 x9 x2@(Curry.Module.Prelude.C_Pos x10) st = let {x11 = Curry.Module.Prelude.c_divmodNat(x9)(x10)(st)} in Curry.Module.Prelude.T2(Curry.Module.Prelude.c_negate(Curry.Module.Prelude.c_divmod'46_'35selFP28'35d(x11)(st))(st))(Curry.Module.Prelude.c_negate(Curry.Module.Prelude.c_divmod'46_'35selFP29'35m(x11)(st))(st))+c_divmod_case_2 x9 x2@(Curry.Module.Prelude.C_Neg x14) st = let {x15 = Curry.Module.Prelude.c_divmodNat(x9)(x14)(st)} in Curry.Module.Prelude.T2(Curry.Module.Prelude.c_divmod'46_'35selFP31'35d(x15)(st))(Curry.Module.Prelude.c_negate(Curry.Module.Prelude.c_divmod'46_'35selFP32'35m(x15)(st))(st))+c_divmod_case_2 x9 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod_case_2(x9)(x)(st))(i)(xs)(st)+c_divmod_case_2 x9 x st = Curry.RunTimeSystem.patternFail("Prelude.divmod_case_2")(x)++++c_divmod_case_3 x3 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('0'))(Curry.Module.Prelude.List))))))))))))))(st)+c_divmod_case_3 x3 x2@(Curry.Module.Prelude.C_Pos x4) st = Curry.Module.Prelude.c_divmodNat(x3)(x4)(st)+c_divmod_case_3 x3 x2@(Curry.Module.Prelude.C_Neg x5) st = let {x6 = Curry.Module.Prelude.c_divmodNat(x3)(x5)(st)} in Curry.Module.Prelude.T2(Curry.Module.Prelude.c_negate(Curry.Module.Prelude.c_divmod'46_'35selFP25'35d(x6)(st))(st))(Curry.Module.Prelude.c_divmod'46_'35selFP26'35m(x6)(st))+c_divmod_case_3 x3 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmod_case_3(x3)(x)(st))(i)(xs)(st)+c_divmod_case_3 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.divmod_case_3")(x)++++c_'42_case_4 x6 x2@(Curry.Module.Prelude.C_Neg x7) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.op_42_94(x6)(x7)(st))+c_'42_case_4 x6 x2@(Curry.Module.Prelude.C_Pos x8) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.op_42_94(x6)(x8)(st))+c_'42_case_4 x6 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Zero+c_'42_case_4 x6 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'42_case_4(x6)(x)(st))(i)(xs)(st)+c_'42_case_4 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.*_case_4")(x)++++c_'42_case_5 x3 x2@(Curry.Module.Prelude.C_Pos x4) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.op_42_94(x3)(x4)(st))+c_'42_case_5 x3 x2@(Curry.Module.Prelude.C_Neg x5) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.op_42_94(x3)(x5)(st))+c_'42_case_5 x3 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_Zero+c_'42_case_5 x3 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'42_case_5(x3)(x)(st))(i)(xs)(st)+c_'42_case_5 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.*_case_5")(x)++++c_'43_case_6 x1 x6 x2@(Curry.Module.Prelude.C_Neg x7) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.op_43_94(x6)(x7)(st))+c_'43_case_6 x1 x6 x2@(Curry.Module.Prelude.C_Pos x8) st = Curry.Module.Prelude.op_45_94(x8)(x6)(st)+c_'43_case_6 x1 x6 x2@Curry.Module.Prelude.C_Zero st = x1+c_'43_case_6 x1 x6 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'43_case_6(x1)(x6)(x)(st))(i)(xs)(st)+c_'43_case_6 x1 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.+_case_6")(x)++++c_'43_case_7 x1 x3 x2@(Curry.Module.Prelude.C_Pos x4) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.op_43_94(x3)(x4)(st))+c_'43_case_7 x1 x3 x2@(Curry.Module.Prelude.C_Neg x5) st = Curry.Module.Prelude.op_45_94(x3)(x5)(st)+c_'43_case_7 x1 x3 x2@Curry.Module.Prelude.C_Zero st = x1+c_'43_case_7 x1 x3 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'43_case_7(x1)(x3)(x)(st))(i)(xs)(st)+c_'43_case_7 x1 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.+_case_7")(x)++++c_divmodNat_case_14 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Pos(x1))(Curry.Module.Prelude.C_Zero)+c_divmodNat_case_14 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_divmodNat_case_13(x1)(x2)(Curry.Module.Prelude.c_cmpNat(x1)(x2)(st))(st)+c_divmodNat_case_14 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_14(x1)(x2)(x)(st))(i)(xs)(st)+c_divmodNat_case_14 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_14")(x)++++c_divmodNat_case_13 x1 x2 x3@Curry.Module.Prelude.C_EQ st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.Prelude.C_Zero)+c_divmodNat_case_13 x1 x2 x3@Curry.Module.Prelude.C_LT st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.C_Pos(x1))+c_divmodNat_case_13 x1 x2 x3@Curry.Module.Prelude.C_GT st = Curry.Module.Prelude.c_divmodNat_case_12(x1)(x2)(Curry.Module.Prelude.c_divmodNat(Curry.Module.Prelude.c_div2(x1)(st))(x2)(st))(st)+c_divmodNat_case_13 x1 x2 (Curry.Module.Prelude.C_OrderingOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_13(x1)(x2)(x)(st))(i)(xs)(st)+c_divmodNat_case_13 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_13")(x)++++c_divmodNat_case_12 x1 x2 (Curry.Module.Prelude.T2 x3 x4) st = Curry.Module.Prelude.c_divmodNat_case_11(x1)(x2)(x4)(x3)(st)+c_divmodNat_case_12 x1 x2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_12(x1)(x2)(x)(st))(i)(xs)(st)+c_divmodNat_case_12 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_12")(x)++++c_divmodNat_case_11 x1 x2 x4 x3@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(Curry.Module.Prelude.op_45_94(x1)(x2)(st))+c_divmodNat_case_11 x1 x2 x4 x3@(Curry.Module.Prelude.C_Pos x5) st = Curry.Module.Prelude.c_divmodNat_case_10(x1)(x2)(x5)(x4)(st)+c_divmodNat_case_11 x1 x2 x4 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_11(x1)(x2)(x4)(x)(st))(i)(xs)(st)+c_divmodNat_case_11 x1 x2 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_11")(x)++++c_divmodNat_case_10 x1 x2 x5 x4@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(x5)))(Curry.Module.Prelude.c_mod2(x1)(st))+c_divmodNat_case_10 x1 x2 x5 x4@(Curry.Module.Prelude.C_Pos x6) st = Curry.Module.Prelude.c_divmodNat_case_9(x1)(x2)(x5)(x6)(Curry.Module.Prelude.c_divmodNat(Curry.Module.Prelude.c_divmodNat'46shift'46523(x1)(x6)(st))(x2)(st))(st)+c_divmodNat_case_10 x1 x2 x5 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_10(x1)(x2)(x5)(x)(st))(i)(xs)(st)+c_divmodNat_case_10 x1 x2 x5 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_10")(x)++++c_divmodNat_case_9 x1 x2 x5 x6 (Curry.Module.Prelude.T2 x7 x8) st = Curry.Module.Prelude.c_divmodNat_case_8(x5)(x8)(x7)(st)+c_divmodNat_case_9 x1 x2 x5 x6 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_9(x1)(x2)(x5)(x6)(x)(st))(i)(xs)(st)+c_divmodNat_case_9 x1 x2 x5 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_9")(x)++++c_divmodNat_case_8 x5 x8 x7@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(x5)))(x8)+c_divmodNat_case_8 x5 x8 x7@(Curry.Module.Prelude.C_Pos x9) st = Curry.Module.Prelude.T2(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.op_43_94(Curry.Module.Prelude.C_O(x5))(x9)(st)))(x8)+c_divmodNat_case_8 x5 x8 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_divmodNat_case_8(x5)(x8)(x)(st))(i)(xs)(st)+c_divmodNat_case_8 x5 x8 x st = Curry.RunTimeSystem.patternFail("Prelude.divmodNat_case_8")(x)++++c_'45'94_case_15 x6 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(x6))+c_'45'94_case_15 x6 x2@(Curry.Module.Prelude.C_O x7) st = Curry.Module.Prelude.c_inc(Curry.Module.Prelude.c_mult2(Curry.Module.Prelude.op_45_94(x6)(x7)(st))(st))(st)+c_'45'94_case_15 x6 x2@(Curry.Module.Prelude.C_I x8) st = Curry.Module.Prelude.c_mult2(Curry.Module.Prelude.op_45_94(x6)(x8)(st))(st)+c_'45'94_case_15 x6 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'45'94_case_15(x6)(x)(st))(i)(xs)(st)+c_'45'94_case_15 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.-^_case_15")(x)++++c_'45'94_case_16 x3 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.c_pred(Curry.Module.Prelude.C_O(x3))(st))+c_'45'94_case_16 x3 x2@(Curry.Module.Prelude.C_O x4) st = Curry.Module.Prelude.c_mult2(Curry.Module.Prelude.op_45_94(x3)(x4)(st))(st)+c_'45'94_case_16 x3 x2@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.c_dec(Curry.Module.Prelude.c_mult2(Curry.Module.Prelude.op_45_94(x3)(x5)(st))(st))(st)+c_'45'94_case_16 x3 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'45'94_case_16(x3)(x)(st))(i)(xs)(st)+c_'45'94_case_16 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.-^_case_16")(x)++++c_dec_case_17 x3@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_Zero+c_dec_case_17 x3@(Curry.Module.Prelude.C_O x4) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.c_pred(Curry.Module.Prelude.C_O(x4))(st))+c_dec_case_17 x3@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(x5))+c_dec_case_17 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_dec_case_17(x)(st))(i)(xs)(st)+c_dec_case_17 x st = Curry.RunTimeSystem.patternFail("Prelude.dec_case_17")(x)++++c_inc_case_18 x3@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_Zero+c_inc_case_18 x3@(Curry.Module.Prelude.C_O x4) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.c_pred(Curry.Module.Prelude.C_O(x4))(st))+c_inc_case_18 x3@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.C_Neg(Curry.Module.Prelude.C_O(x5))+c_inc_case_18 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_inc_case_18(x)(st))(i)(xs)(st)+c_inc_case_18 x st = Curry.RunTimeSystem.patternFail("Prelude.inc_case_18")(x)++++c_pred_case_19 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_IHi+c_pred_case_19 x2@(Curry.Module.Prelude.C_O x3) st = Curry.Module.Prelude.C_I(Curry.Module.Prelude.c_pred(x2)(st))+c_pred_case_19 x2@(Curry.Module.Prelude.C_I x4) st = Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(x4))+c_pred_case_19 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_pred_case_19(x)(st))(i)(xs)(st)+c_pred_case_19 x st = Curry.RunTimeSystem.patternFail("Prelude.pred_case_19")(x)++++c_cmpNatGT_case_20 x6 x1@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_LT+c_cmpNatGT_case_20 x6 x1@(Curry.Module.Prelude.C_I x7) st = Curry.Module.Prelude.c_cmpNatGT(x7)(x6)(st)+c_cmpNatGT_case_20 x6 x1@(Curry.Module.Prelude.C_O x8) st = Curry.Module.Prelude.c_cmpNatLT(x8)(x6)(st)+c_cmpNatGT_case_20 x6 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNatGT_case_20(x6)(x)(st))(i)(xs)(st)+c_cmpNatGT_case_20 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNatGT_case_20")(x)++++c_cmpNatGT_case_21 x3 x1@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_LT+c_cmpNatGT_case_21 x3 x1@(Curry.Module.Prelude.C_O x4) st = Curry.Module.Prelude.c_cmpNatGT(x4)(x3)(st)+c_cmpNatGT_case_21 x3 x1@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.c_cmpNatGT(x5)(x3)(st)+c_cmpNatGT_case_21 x3 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNatGT_case_21(x3)(x)(st))(i)(xs)(st)+c_cmpNatGT_case_21 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNatGT_case_21")(x)++++c_cmpNatLT_case_22 x6 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_GT+c_cmpNatLT_case_22 x6 x2@(Curry.Module.Prelude.C_I x7) st = Curry.Module.Prelude.c_cmpNatLT(x6)(x7)(st)+c_cmpNatLT_case_22 x6 x2@(Curry.Module.Prelude.C_O x8) st = Curry.Module.Prelude.c_cmpNatGT(x6)(x8)(st)+c_cmpNatLT_case_22 x6 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNatLT_case_22(x6)(x)(st))(i)(xs)(st)+c_cmpNatLT_case_22 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNatLT_case_22")(x)++++c_cmpNatLT_case_23 x3 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_GT+c_cmpNatLT_case_23 x3 x2@(Curry.Module.Prelude.C_O x4) st = Curry.Module.Prelude.c_cmpNatLT(x3)(x4)(st)+c_cmpNatLT_case_23 x3 x2@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.c_cmpNatLT(x3)(x5)(st)+c_cmpNatLT_case_23 x3 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNatLT_case_23(x3)(x)(st))(i)(xs)(st)+c_cmpNatLT_case_23 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNatLT_case_23")(x)++++c_cmpNat_case_24 x8 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_GT+c_cmpNat_case_24 x8 x2@(Curry.Module.Prelude.C_I x9) st = Curry.Module.Prelude.c_cmpNat(x8)(x9)(st)+c_cmpNat_case_24 x8 x2@(Curry.Module.Prelude.C_O x10) st = Curry.Module.Prelude.c_cmpNatGT(x8)(x10)(st)+c_cmpNat_case_24 x8 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNat_case_24(x8)(x)(st))(i)(xs)(st)+c_cmpNat_case_24 x8 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNat_case_24")(x)++++c_cmpNat_case_25 x5 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_GT+c_cmpNat_case_25 x5 x2@(Curry.Module.Prelude.C_O x6) st = Curry.Module.Prelude.c_cmpNat(x5)(x6)(st)+c_cmpNat_case_25 x5 x2@(Curry.Module.Prelude.C_I x7) st = Curry.Module.Prelude.c_cmpNatLT(x5)(x7)(st)+c_cmpNat_case_25 x5 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNat_case_25(x5)(x)(st))(i)(xs)(st)+c_cmpNat_case_25 x5 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNat_case_25")(x)++++c_cmpNat_case_26 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_EQ+c_cmpNat_case_26 x2@(Curry.Module.Prelude.C_O x3) st = Curry.Module.Prelude.C_LT+c_cmpNat_case_26 x2@(Curry.Module.Prelude.C_I x4) st = Curry.Module.Prelude.C_LT+c_cmpNat_case_26 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_cmpNat_case_26(x)(st))(i)(xs)(st)+c_cmpNat_case_26 x st = Curry.RunTimeSystem.patternFail("Prelude.cmpNat_case_26")(x)++++c_'43'94_case_27 x6 x2@(Curry.Module.Prelude.C_O x7) st = Curry.Module.Prelude.C_I(Curry.Module.Prelude.op_43_94(x6)(x7)(st))+c_'43'94_case_27 x6 x2@(Curry.Module.Prelude.C_I x8) st = Curry.Module.Prelude.C_O(Curry.Module.Prelude.op_43_94(Curry.Module.Prelude.c_succ(x6)(st))(x8)(st))+c_'43'94_case_27 x6 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_O(Curry.Module.Prelude.c_succ(x6)(st))+c_'43'94_case_27 x6 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'43'94_case_27(x6)(x)(st))(i)(xs)(st)+c_'43'94_case_27 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.+^_case_27")(x)++++c_'43'94_case_28 x3 x2@(Curry.Module.Prelude.C_O x4) st = Curry.Module.Prelude.C_O(Curry.Module.Prelude.op_43_94(x3)(x4)(st))+c_'43'94_case_28 x3 x2@(Curry.Module.Prelude.C_I x5) st = Curry.Module.Prelude.C_I(Curry.Module.Prelude.op_43_94(x3)(x5)(st))+c_'43'94_case_28 x3 x2@Curry.Module.Prelude.C_IHi st = Curry.Module.Prelude.C_I(x3)+c_'43'94_case_28 x3 (Curry.Module.Prelude.C_NatOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'43'94_case_28(x3)(x)(st))(i)(xs)(st)+c_'43'94_case_28 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.+^_case_28")(x)++++c_enumFromThenTo'46p'46364_case_29 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_60_61(x4)(x1)(st)+c_enumFromThenTo'46p'46364_case_29 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_62_61(x4)(x1)(st)+c_enumFromThenTo'46p'46364_case_29 x1 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_enumFromThenTo'46p'46364_case_29(x1)(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_enumFromThenTo'46p'46364_case_29 x1 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.enumFromThenTo.p.364_case_29")(x)++++c_enumFromTo_case_30 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_enumFromTo_case_30 x1 x2 x3@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.c_enumFromTo(Curry.Module.Prelude.op_43(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x2)(st))+c_enumFromTo_case_30 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_enumFromTo_case_30(x1)(x2)(x)(st))(i)(xs)(st)+c_enumFromTo_case_30 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.enumFromTo_case_30")(x)++++c_lookup_case_32 x1 x4 x3@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.Prelude.c_lookup_case_31(x1)(x4)(x5)(x6)(Curry.Module.Prelude.op_61_61(x1)(x5)(st))(st)+c_lookup_case_32 x1 x4 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lookup_case_32(x1)(x4)(x)(st))(i)(xs)(st)+c_lookup_case_32 x1 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.lookup_case_32")(x)++++c_lookup_case_31 x1 x4 x5 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Just(x6)+c_lookup_case_31 x1 x4 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_lookup(x1)(x4)(st)+c_lookup_case_31 x1 x4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lookup_case_31(x1)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_lookup_case_31 x1 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.lookup_case_31")(x)++++c_unwords_case_33 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_unwords_case_33 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_foldr1(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.c_unwords'46_'35lambda6))(x1)(st)+c_unwords_case_33 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unwords_case_33(x1)(x)(st))(i)(xs)(st)+c_unwords_case_33 x1 x st = Curry.RunTimeSystem.patternFail("Prelude.unwords_case_33")(x)++++c_words_case_34 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.List+c_words_case_34 x2 x3@Curry.Module.Prelude.C_False st = let {x3 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_words'46isSpace'46326))(st))(x2)(st)} in (Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_words'46_'35selFP22'35w(x3)(st))(Curry.Module.Prelude.c_words(Curry.Module.Prelude.c_words'46_'35selFP23'35s2(x3)(st))(st))+c_words_case_34 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_words_case_34(x2)(x)(st))(i)(xs)(st)+c_words_case_34 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.words_case_34")(x)++++c_lines'46splitline'46314_case_35 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(x3)+c_lines'46splitline'46314_case_35 x2 x3 x4@Curry.Module.Prelude.C_False st = let {x4 = Curry.Module.Prelude.c_lines'46splitline'46314(x3)(st)} in Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x2)(Curry.Module.Prelude.c_lines'46splitline'46314'46_'35selFP16'35ds(x4)(st)))(Curry.Module.Prelude.c_lines'46splitline'46314'46_'35selFP17'35es(x4)(st))+c_lines'46splitline'46314_case_35 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_lines'46splitline'46314_case_35(x2)(x3)(x)(st))(i)(xs)(st)+c_lines'46splitline'46314_case_35 x2 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.lines.splitline.314_case_35")(x)++++c_span_case_36 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = let {x5 = Curry.Module.Prelude.c_span(x1)(x4)(st)} in Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.c_span'46_'35selFP13'35ys(x5)(st)))(Curry.Module.Prelude.c_span'46_'35selFP14'35zs(x5)(st))+c_span_case_36 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)((Curry.Module.Prelude.:<)(x3)(x4))+c_span_case_36 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_span_case_36(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_span_case_36 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.span_case_36")(x)++++c_dropWhile_case_37 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_dropWhile(x1)(x4)(st)+c_dropWhile_case_37 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(x3)(x4)+c_dropWhile_case_37 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_dropWhile_case_37(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_dropWhile_case_37 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.dropWhile_case_37")(x)++++c_takeWhile_case_38 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.c_takeWhile(x1)(x4)(st))+c_takeWhile_case_38 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.List+c_takeWhile_case_38 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_takeWhile_case_38(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_takeWhile_case_38 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.takeWhile_case_38")(x)++++c_splitAt_case_39 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(x2)+c_splitAt_case_39 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_splitAt'46splitAtp'46282(x1)(x2)(st)+c_splitAt_case_39 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_splitAt_case_39(x1)(x2)(x)(st))(i)(xs)(st)+c_splitAt_case_39 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.splitAt_case_39")(x)++++c_drop_case_40 x1 x2 x3@Curry.Module.Prelude.C_True st = x2+c_drop_case_40 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_drop'46dropp'46272(x1)(x2)(st)+c_drop_case_40 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_drop_case_40(x1)(x2)(x)(st))(i)(xs)(st)+c_drop_case_40 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.drop_case_40")(x)++++c_take_case_41 x4 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_take_case_41 x4 x2@((Curry.Module.Prelude.:<) x5 x6) st = (Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_take(Curry.Module.Prelude.op_45(Curry.Module.Prelude.C_Pos(x4))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x6)(st))+c_take_case_41 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_take_case_41(x4)(x)(st))(i)(xs)(st)+c_take_case_41 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.take_case_41")(x)++++c_unzip3_case_42 x3 x2@(Curry.Module.Prelude.T3 x4 x5 x6) st = let {x7 = Curry.Module.Prelude.c_unzip3(x3)(st)} in Curry.Module.Prelude.T3((Curry.Module.Prelude.:<)(x4)(Curry.Module.Prelude.c_unzip3'46_'35selFP6'35xs(x7)(st)))((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_unzip3'46_'35selFP7'35ys(x7)(st)))((Curry.Module.Prelude.:<)(x6)(Curry.Module.Prelude.c_unzip3'46_'35selFP8'35zs(x7)(st)))+c_unzip3_case_42 x3 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip3_case_42(x3)(x)(st))(i)(xs)(st)+c_unzip3_case_42 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.unzip3_case_42")(x)++++c_unzip_case_43 x3 x2@(Curry.Module.Prelude.T2 x4 x5) st = let {x6 = Curry.Module.Prelude.c_unzip(x3)(st)} in Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x4)(Curry.Module.Prelude.c_unzip'46_'35selFP3'35xs(x6)(st)))((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_unzip'46_'35selFP4'35ys(x6)(st)))+c_unzip_case_43 x3 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_unzip_case_43(x3)(x)(st))(i)(xs)(st)+c_unzip_case_43 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.unzip_case_43")(x)++++c_zipWith3_case_45 x1 x4 x5 x6 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_zipWith3_case_45 x1 x4 x5 x6 x3@((Curry.Module.Prelude.:<) x7 x8) st = Curry.Module.Prelude.c_zipWith3_case_44(x1)(x5)(x6)(x7)(x8)(x4)(st)+c_zipWith3_case_45 x1 x4 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zipWith3_case_45(x1)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_zipWith3_case_45 x1 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("Prelude.zipWith3_case_45")(x)++++c_zipWith3_case_44 x1 x5 x6 x7 x8 x4@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_zipWith3_case_44 x1 x5 x6 x7 x8 x4@((Curry.Module.Prelude.:<) x9 x10) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x5)(st))(x7)(st))(x9)(st))(Curry.Module.Prelude.c_zipWith3(x1)(x6)(x8)(x10)(st))+c_zipWith3_case_44 x1 x5 x6 x7 x8 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zipWith3_case_44(x1)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_zipWith3_case_44 x1 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("Prelude.zipWith3_case_44")(x)++++c_zipWith_case_46 x1 x4 x5 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_zipWith_case_46 x1 x4 x5 x3@((Curry.Module.Prelude.:<) x6 x7) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x6)(st))(Curry.Module.Prelude.c_zipWith(x1)(x5)(x7)(st))+c_zipWith_case_46 x1 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zipWith_case_46(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_zipWith_case_46 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("Prelude.zipWith_case_46")(x)++++c_zip3_case_48 x3 x4 x5 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_zip3_case_48 x3 x4 x5 x2@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Prelude.c_zip3_case_47(x4)(x5)(x6)(x7)(x3)(st)+c_zip3_case_48 x3 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zip3_case_48(x3)(x4)(x5)(x)(st))(i)(xs)(st)+c_zip3_case_48 x3 x4 x5 x st = Curry.RunTimeSystem.patternFail("Prelude.zip3_case_48")(x)++++c_zip3_case_47 x4 x5 x6 x7 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_zip3_case_47 x4 x5 x6 x7 x3@((Curry.Module.Prelude.:<) x8 x9) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.T3(x4)(x6)(x8))(Curry.Module.Prelude.c_zip3(x5)(x7)(x9)(st))+c_zip3_case_47 x4 x5 x6 x7 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zip3_case_47(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_zip3_case_47 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Prelude.zip3_case_47")(x)++++c_zip_case_49 x3 x4 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_zip_case_49 x3 x4 x2@((Curry.Module.Prelude.:<) x5 x6) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x3)(x5))(Curry.Module.Prelude.c_zip(x4)(x6)(st))+c_zip_case_49 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_zip_case_49(x3)(x4)(x)(st))(i)(xs)(st)+c_zip_case_49 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.zip_case_49")(x)++++c_filter_case_50 x1 x3 x4 x5@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.c_filter(x1)(x4)(st))+c_filter_case_50 x1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_filter(x1)(x4)(st)+c_filter_case_50 x1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_filter_case_50(x1)(x3)(x4)(x)(st))(i)(xs)(st)+c_filter_case_50 x1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.filter_case_50")(x)++++c_foldr1_case_51 x1 x3 x4@Curry.Module.Prelude.List st = x3+c_foldr1_case_51 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(Curry.Module.Prelude.c_foldr1(x1)((Curry.Module.Prelude.:<)(x5)(x6))(st))(st)+c_foldr1_case_51 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_foldr1_case_51(x1)(x3)(x)(st))(i)(xs)(st)+c_foldr1_case_51 x1 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.foldr1_case_51")(x)++++c_'33'33_case_53 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = x3+c_'33'33_case_53 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_'33'33_case_52(x2)(x4)(Curry.Module.Prelude.op_62(x2)(Curry.Module.Prelude.C_Zero)(st))(st)+c_'33'33_case_53 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'33'33_case_53(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_'33'33_case_53 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.!!_case_53")(x)++++c_'33'33_case_52 x2 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_33_33(x4)(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)+c_'33'33_case_52 x2 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_'33'33_case_52(x2)(x4)(x)(st))(i)(xs)(st)+c_'33'33_case_52 x2 x4 x st = Curry.RunTimeSystem.patternFail("Prelude.!!_case_52")(x)++++c_min_case_54 x1 x2 x3@Curry.Module.Prelude.C_GT st = x2+c_min_case_54 x1 x2 x3@Curry.Module.Prelude.C_LT st = x1+c_min_case_54 x1 x2 x3@Curry.Module.Prelude.C_EQ st = x1+c_min_case_54 x1 x2 (Curry.Module.Prelude.C_OrderingOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_min_case_54(x1)(x2)(x)(st))(i)(xs)(st)+c_min_case_54 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.min_case_54")(x)++++c_max_case_55 x1 x2 x3@Curry.Module.Prelude.C_LT st = x2+c_max_case_55 x1 x2 x3@Curry.Module.Prelude.C_EQ st = x1+c_max_case_55 x1 x2 x3@Curry.Module.Prelude.C_GT st = x1+c_max_case_55 x1 x2 (Curry.Module.Prelude.C_OrderingOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_max_case_55(x1)(x2)(x)(st))(i)(xs)(st)+c_max_case_55 x1 x2 x st = Curry.RunTimeSystem.patternFail("Prelude.max_case_55")(x)++++c_compare_case_56 x8 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_LT+c_compare_case_56 x8 x2@(Curry.Module.Prelude.C_Pos x9) st = Curry.Module.Prelude.C_LT+c_compare_case_56 x8 x2@(Curry.Module.Prelude.C_Neg x10) st = Curry.Module.Prelude.c_cmpNat(x10)(x8)(st)+c_compare_case_56 x8 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_compare_case_56(x8)(x)(st))(i)(xs)(st)+c_compare_case_56 x8 x st = Curry.RunTimeSystem.patternFail("Prelude.compare_case_56")(x)++++c_compare_case_57 x5 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_GT+c_compare_case_57 x5 x2@(Curry.Module.Prelude.C_Pos x6) st = Curry.Module.Prelude.c_cmpNat(x5)(x6)(st)+c_compare_case_57 x5 x2@(Curry.Module.Prelude.C_Neg x7) st = Curry.Module.Prelude.C_GT+c_compare_case_57 x5 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_compare_case_57(x5)(x)(st))(i)(xs)(st)+c_compare_case_57 x5 x st = Curry.RunTimeSystem.patternFail("Prelude.compare_case_57")(x)++++c_compare_case_58 x2@Curry.Module.Prelude.C_Zero st = Curry.Module.Prelude.C_EQ+c_compare_case_58 x2@(Curry.Module.Prelude.C_Pos x3) st = Curry.Module.Prelude.C_LT+c_compare_case_58 x2@(Curry.Module.Prelude.C_Neg x4) st = Curry.Module.Prelude.C_GT+c_compare_case_58 (Curry.Module.Prelude.C_IntOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_compare_case_58(x)(st))(i)(xs)(st)+c_compare_case_58 x st = Curry.RunTimeSystem.patternFail("Prelude.compare_case_58")(x)++++c_until_case_59 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x3+c_until_case_59 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_until(x1)(x2)(Curry.Module.Prelude.c_apply(x2)(x3)(st))(st)+c_until_case_59 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Prelude.c_until_case_59(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_until_case_59 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Prelude.until_case_59")(x)++++op_36_33 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t1+op_36_33 x1 x2 st = (Curry.Module.Prelude.$!)(x1)(x2)(st)++++op_36_33_33 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t1+op_36_33_33 x1 x2 st = (Curry.Module.Prelude.$!!)(x1)(x2)(st)++++op_36_35 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t1+op_36_35 x1 x2 st = (Curry.Module.Prelude.$#)(x1)(x2)(st)++++op_36_35_35 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t1+op_36_35_35 x1 x2 st = (Curry.Module.Prelude.$##)(x1)(x2)(st)++++c_prim_error :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_prim_error x1 st = Curry.Module.Prelude.prim_error(x1)(st)++++c_failed :: (Curry t0) => Curry.RunTimeSystem.State -> t0+c_failed st = Curry.Module.Prelude.failed(st)++++op_61_61 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_61_61 x1 x2 st = (Curry.Module.Prelude.==)(x1)(x2)(st)++++c_prim_ord :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_prim_ord x1 st = Curry.Module.Prelude.prim_ord(x1)(st)++++c_prim_chr :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_prim_chr x1 st = Curry.Module.Prelude.prim_chr(x1)(st)++++op_61_61_61 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+op_61_61_61 x1 x2 st = (Curry.Module.Prelude.===)(x1)(x2)(st)++++op_38 :: Curry.Module.Prelude.C_Success -> Curry.Module.Prelude.C_Success -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success+op_38 x1 x2 st = (Curry.Module.Prelude.&)(x1)(x2)(st)++++op_62_62_61 :: (Curry t0,Curry t1) => (Curry.Module.Prelude.C_IO t0) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1+op_62_62_61 x1 x2 st = (Curry.Module.Prelude.>>=)(x1)(x2)(st)++++c_return :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_return x1 st = Curry.Module.Prelude.return(x1)(st)++++c_prim_putChar :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_putChar x1 st = Curry.Module.Prelude.prim_putChar(x1)(st)++++c_getChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Char+c_getChar st = Curry.Module.Prelude.getChar(st)++++c_prim_readFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_prim_readFile x1 st = Curry.Module.Prelude.prim_readFile(x1)(st)++++c_prim_writeFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_writeFile x1 x2 st = Curry.Module.Prelude.prim_writeFile(x1)(x2)(st)++++c_prim_appendFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_appendFile x1 x2 st = Curry.Module.Prelude.prim_appendFile(x1)(x2)(st)++++c_catchFail :: (Curry t0) => (Curry.Module.Prelude.C_IO t0) -> (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_catchFail x1 x2 st = Curry.Module.Prelude.catchFail(x1)(x2)(st)++++c_prim_show :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_prim_show x1 st = Curry.Module.Prelude.prim_show(x1)(st)++++c_getSearchTree :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_SearchTree t0)+c_getSearchTree x1 st = Curry.Module.Prelude.getSearchTree(x1)(st)++++c_apply :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t1+c_apply x1 x2 st = Curry.Module.Prelude.apply(x1)(x2)(st)++++c_cond :: (Curry t0) => Curry.Module.Prelude.C_Success -> t0 -> Curry.RunTimeSystem.State -> t0+c_cond x1 x2 st = Curry.Module.Prelude.cond(x1)(x2)(st)++++op_61_58_60_61 :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Success+op_61_58_60_61 x1 x2 st = (Curry.Module.Prelude.=:<=)(x1)(x2)(st)++
+ dist/build/Curry/Module/Pretty.hs view
@@ -0,0 +1,963 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Pretty (module Curry.Module.Pretty) where++import Curry.RunTimeSystem+import Curry.Module.Dequeue+import Curry.Module.Prelude++++-- begin included++++-- end included++type C_Layout = Curry.Module.Prelude.List Curry.Module.Prelude.C_Char++type C_Horizontal = Curry.Module.Prelude.C_Bool++type C_Remaining = Curry.Module.Prelude.C_Int++type C_Width = Curry.Module.Prelude.C_Int++type C_Position = Curry.Module.Prelude.C_Int++type C_StartPosition = Curry.Module.Prelude.C_Int++type C_EndPosition = Curry.Module.Prelude.C_Int++type C_Out = Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char++type C_OutGroupPrefix = Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char++type C_Margins = Curry.Module.Prelude.List Curry.Module.Prelude.C_Int++data C_Doc = C_Doc (Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Tokens -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens))+  | C_DocFail Curry.RunTimeSystem.C_Exceptions+  | C_DocOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Pretty.C_Doc)++data C_Tokens = C_Text (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Pretty.C_Tokens+  | C_Line (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.Pretty.C_Tokens+  | C_Open Curry.Module.Pretty.C_Tokens+  | C_Close Curry.Module.Pretty.C_Tokens+  | C_Empty+  | C_OpenNest (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)))) Curry.Module.Pretty.C_Tokens+  | C_CloseNest Curry.Module.Pretty.C_Tokens+  | C_TokensFail Curry.RunTimeSystem.C_Exceptions+  | C_TokensOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Pretty.C_Tokens)++instance BaseCurry Curry.Module.Pretty.C_Doc where+  nf f (Curry.Module.Pretty.C_Doc x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_Doc(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Pretty.C_Doc x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_Doc(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Pretty.C_DocOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Pretty.C_Doc(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Pretty.C_DocFail++  branching  = Curry.Module.Pretty.C_DocOr++  consKind (Curry.Module.Pretty.C_DocOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Pretty.C_DocFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Pretty.C_DocFail x) = x++  orRef (Curry.Module.Pretty.C_DocOr x _) = x++  branches (Curry.Module.Pretty.C_DocOr _ x) = x++++++instance BaseCurry Curry.Module.Pretty.C_Tokens where+  nf f (Curry.Module.Pretty.C_Text x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Pretty.C_Text(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Pretty.C_Line x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Pretty.C_Line(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Pretty.C_Open x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_Open(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Pretty.C_Close x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_Close(v1))(state1))(x1)(state0)+  nf f (Curry.Module.Pretty.C_OpenNest x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f(Curry.Module.Pretty.C_OpenNest(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f (Curry.Module.Pretty.C_CloseNest x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_CloseNest(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Pretty.C_Text x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Pretty.C_Text(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Pretty.C_Line x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Pretty.C_Line(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Pretty.C_Open x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_Open(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Pretty.C_Close x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_Close(v1))(state1))(x1)(state0)+  gnf f (Curry.Module.Pretty.C_OpenNest x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f(Curry.Module.Pretty.C_OpenNest(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f (Curry.Module.Pretty.C_CloseNest x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Pretty.C_CloseNest(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Pretty.C_TokensOr(Curry.RunTimeSystem.mkRef(r)(2)(i))([Curry.Module.Pretty.C_Text(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Pretty.C_Line(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Pretty.C_Open(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Pretty.C_Close(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Pretty.C_Empty,Curry.Module.Pretty.C_OpenNest(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.Pretty.C_CloseNest(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(2)++  failed  = Curry.Module.Pretty.C_TokensFail++  branching  = Curry.Module.Pretty.C_TokensOr++  consKind (Curry.Module.Pretty.C_TokensOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Pretty.C_TokensFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Pretty.C_TokensFail x) = x++  orRef (Curry.Module.Pretty.C_TokensOr x _) = x++  branches (Curry.Module.Pretty.C_TokensOr _ x) = x++++++instance Curry Curry.Module.Pretty.C_Doc where+  strEq (Curry.Module.Pretty.C_Doc x1) (Curry.Module.Pretty.C_Doc y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Pretty.C_Doc x1) (Curry.Module.Pretty.C_Doc y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Pretty.C_Doc x1) st = Curry.Module.Pretty.C_Doc(f((0::Int))(x1)(st))++  foldCurry f c (Curry.Module.Pretty.C_Doc x1) st = f(x1)(c)(st)++  typeName _ = "Doc"++  showQ d (Curry.Module.Pretty.C_Doc x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.Doc "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Pretty.C_DocOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Pretty.C_Tokens where+  strEq (Curry.Module.Pretty.C_Text x1 x2) (Curry.Module.Pretty.C_Text y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq (Curry.Module.Pretty.C_Line x1 x2) (Curry.Module.Pretty.C_Line y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq (Curry.Module.Pretty.C_Open x1) (Curry.Module.Pretty.C_Open y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq (Curry.Module.Pretty.C_Close x1) (Curry.Module.Pretty.C_Close y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq Curry.Module.Pretty.C_Empty Curry.Module.Pretty.C_Empty st = Curry.Module.Prelude.strEqSuccess+  strEq (Curry.Module.Pretty.C_OpenNest x1 x2) (Curry.Module.Pretty.C_OpenNest y1 y2) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(st)+  strEq (Curry.Module.Pretty.C_CloseNest x1) (Curry.Module.Pretty.C_CloseNest y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Pretty.C_Text x1 x2) (Curry.Module.Pretty.C_Text y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq (Curry.Module.Pretty.C_Line x1 x2) (Curry.Module.Pretty.C_Line y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq (Curry.Module.Pretty.C_Open x1) (Curry.Module.Pretty.C_Open y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq (Curry.Module.Pretty.C_Close x1) (Curry.Module.Pretty.C_Close y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq Curry.Module.Pretty.C_Empty Curry.Module.Pretty.C_Empty st = Curry.Module.Prelude.C_True+  eq (Curry.Module.Pretty.C_OpenNest x1 x2) (Curry.Module.Pretty.C_OpenNest y1 y2) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.genEq(x2)(y2)(st))(st)+  eq (Curry.Module.Pretty.C_CloseNest x1) (Curry.Module.Pretty.C_CloseNest y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Pretty.C_Text x1 x2) st = Curry.Module.Pretty.C_Text(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f (Curry.Module.Pretty.C_Line x1 x2) st = Curry.Module.Pretty.C_Line(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f (Curry.Module.Pretty.C_Open x1) st = Curry.Module.Pretty.C_Open(f((0::Int))(x1)(st))+  propagate f (Curry.Module.Pretty.C_Close x1) st = Curry.Module.Pretty.C_Close(f((0::Int))(x1)(st))+  propagate f Curry.Module.Pretty.C_Empty st = Curry.Module.Pretty.C_Empty+  propagate f (Curry.Module.Pretty.C_OpenNest x1 x2) st = Curry.Module.Pretty.C_OpenNest(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))+  propagate f (Curry.Module.Pretty.C_CloseNest x1) st = Curry.Module.Pretty.C_CloseNest(f((0::Int))(x1)(st))++  foldCurry f c (Curry.Module.Pretty.C_Text x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c (Curry.Module.Pretty.C_Line x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c (Curry.Module.Pretty.C_Open x1) st = f(x1)(c)(st)+  foldCurry f c (Curry.Module.Pretty.C_Close x1) st = f(x1)(c)(st)+  foldCurry f c Curry.Module.Pretty.C_Empty st = c+  foldCurry f c (Curry.Module.Pretty.C_OpenNest x1 x2) st = f(x1)(f(x2)(c)(st))(st)+  foldCurry f c (Curry.Module.Pretty.C_CloseNest x1) st = f(x1)(c)(st)++  typeName _ = "Tokens"++  showQ d (Curry.Module.Pretty.C_Text x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.Text "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ d (Curry.Module.Pretty.C_Line x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.Line "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ d (Curry.Module.Pretty.C_Open x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.Open "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ d (Curry.Module.Pretty.C_Close x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.Close "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ Curry.Module.Pretty.C_Empty = Prelude.showString("Pretty.Empty")+  showQ d (Curry.Module.Pretty.C_OpenNest x1 x2) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.OpenNest "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))))+++  showQ d (Curry.Module.Pretty.C_CloseNest x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Pretty.CloseNest "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Pretty.C_TokensOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Pretty.C_Doc where+  showsPrec d (Curry.Module.Pretty.C_Doc x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Doc "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Pretty.C_DocOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Pretty.C_Tokens where+  showsPrec d (Curry.Module.Pretty.C_Text x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Text "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec d (Curry.Module.Pretty.C_Line x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Line "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec d (Curry.Module.Pretty.C_Open x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Open "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec d (Curry.Module.Pretty.C_Close x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Close "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ Curry.Module.Pretty.C_Empty = Prelude.showString("Empty")+  showsPrec d (Curry.Module.Pretty.C_OpenNest x1 x2) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("OpenNest "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))))+++  showsPrec d (Curry.Module.Pretty.C_CloseNest x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("CloseNest "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Pretty.C_TokensOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Read Curry.Module.Pretty.C_Doc where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_Doc(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("Doc")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r)++++++instance Read Curry.Module.Pretty.C_Tokens where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_Text(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("Text")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_Line(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("Line")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_Open(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("Open")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_Close(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("Close")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.Pretty.C_Empty)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("Empty")(r)])(r))((Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_OpenNest(x1)(x2))(r2) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("OpenNest")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1)])(r))(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Pretty.C_CloseNest(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Pretty")("CloseNest")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r)))))))++++++c_deDoc :: Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Tokens -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens)+c_deDoc x1@(Curry.Module.Pretty.C_Doc x2) st = x2+c_deDoc (Curry.Module.Pretty.C_DocOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_deDoc(x)(st))(i)(xs)(st)+c_deDoc x st = Curry.RunTimeSystem.patternFail("Pretty.deDoc")(x)++++c_empty :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_empty st = Curry.Module.Pretty.c_text(Curry.Module.Prelude.List)(st)++++c_text :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_text x1 st = Curry.Module.Pretty.C_Doc(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_Text(x1)))++++c_linesep :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_linesep st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_Doc))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pc))(Curry.Module.Pretty.C_Line))(st)++++c_line :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_line st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_linesep(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(st)++++c_linebreak :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_linebreak st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_linesep(st))(Curry.Module.Prelude.List)(st)++++c_softline :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_softline st = Curry.Module.Pretty.c_group(Curry.Module.Pretty.c_line(st))(st)++++c_softbreak :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_softbreak st = Curry.Module.Pretty.c_group(Curry.Module.Pretty.c_linebreak(st))(st)++++c_group :: Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_group x1 st = Curry.Module.Pretty.C_Doc(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_Open))(Curry.Module.Prelude.op_46(Curry.Module.Pretty.c_deDoc(x1)(st))(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_Close))(st))(st))++++c_nest :: Curry.Module.Prelude.C_Int -> Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_nest x1 x2 st = Curry.Module.Pretty.C_Doc(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_OpenNest(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.Pretty.c_nest'46_'35lambda2(x1)))))(Curry.Module.Prelude.op_46(Curry.Module.Pretty.c_deDoc(x2)(st))(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_CloseNest))(st))(st))++++c_nest'46_'35lambda2 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_nest'46_'35lambda2 x1 x2@((Curry.Module.Prelude.:<) x5 x6) x3 x4 st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.op_43(x5)(x1)(st))(x2)+c_nest'46_'35lambda2 x1 (Curry.Module.Prelude.ListOr i xs) x3 x4 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_nest'46_'35lambda2(x1)(x)(x3)(x4)(st))(i)(xs)(st)+c_nest'46_'35lambda2 x1 x x3 x4 st = Curry.RunTimeSystem.patternFail("Pretty.nest._#lambda2")(x)++++c_hang :: Curry.Module.Prelude.C_Int -> Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_hang x1 x2 st = Curry.Module.Pretty.C_Doc(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_OpenNest(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa))(Curry.Module.Prelude.cp(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))))(Curry.Module.Pretty.c_hang'46_'35lambda3(x1)))))(Curry.Module.Prelude.op_46(Curry.Module.Pretty.c_deDoc(x2)(st))(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_CloseNest))(st))(st))++++c_hang'46_'35lambda3 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_hang'46_'35lambda3 x1 x2 x3 x4 st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(x4)(x3)(st))(x1)(st))(x2)++++c_align :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_align st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_hang(Curry.Module.Prelude.C_Zero))++++c_combine :: Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_combine x1 x2 x3 st = Curry.Module.Pretty.c_enclose(x2)(x3)(x1)(st)++++op_60_62 :: Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+op_60_62 x1 x2 st = Curry.Module.Pretty.C_Doc(Curry.Module.Prelude.op_46(Curry.Module.Pretty.c_deDoc(x1)(st))(Curry.Module.Pretty.c_deDoc(x2)(st))(st))++++op_60_43_62 :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc))+op_60_43_62 st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_combine(Curry.Module.Pretty.c_space(st)))++++op_60_36_62 :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc))+op_60_36_62 st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_combine(Curry.Module.Pretty.c_line(st)))++++op_60_47_62 :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc))+op_60_47_62 st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_combine(Curry.Module.Pretty.c_softline(st)))++++op_60_36_36_62 :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc))+op_60_36_36_62 st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_combine(Curry.Module.Pretty.c_linebreak(st)))++++op_60_47_47_62 :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc))+op_60_47_47_62 st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_combine(Curry.Module.Pretty.c_softbreak(st)))++++c_compose :: (Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc))) -> (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_compose x1 x2@Curry.Module.Prelude.List st = Curry.Module.Pretty.c_empty(st)+c_compose x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Prelude.c_foldr1(x1)(x2)(st)+c_compose x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_compose(x1)(x)(st))(i)(xs)(st)+c_compose x1 x st = Curry.RunTimeSystem.patternFail("Pretty.compose")(x)++++c_hsep :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_hsep st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_compose(Curry.Module.Pretty.op_60_43_62(st)))++++c_vsep :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_vsep st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_compose(Curry.Module.Pretty.op_60_36_62(st)))++++c_fillSep :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_fillSep st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_compose(Curry.Module.Pretty.op_60_47_62(st)))++++c_sep :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_sep st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_group))(Curry.Module.Pretty.c_vsep(st))(st)++++c_hcat :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_hcat st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_compose(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.op_60_62)))++++c_vcat :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_vcat st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_compose(Curry.Module.Pretty.op_60_36_36_62(st)))++++c_fillCat :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_fillCat st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_compose(Curry.Module.Pretty.op_60_47_47_62(st)))++++c_cat :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_cat st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_group))(Curry.Module.Pretty.c_vcat(st))(st)++++c_punctuate :: Curry.Module.Pretty.C_Doc -> (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc+c_punctuate x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_punctuate x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Pretty.c_punctuate'46go'4675(x1)(x2)(st)+c_punctuate x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_punctuate(x1)(x)(st))(i)(xs)(st)+c_punctuate x1 x st = Curry.RunTimeSystem.patternFail("Pretty.punctuate")(x)++++c_punctuate'46go'4675 :: Curry.Module.Pretty.C_Doc -> (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc+c_punctuate'46go'4675 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Pretty.c_punctuate'46go'4675_case_13(x1)(x3)(x4)(st)+c_punctuate'46go'4675 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_punctuate'46go'4675(x1)(x)(st))(i)(xs)(st)+c_punctuate'46go'4675 x1 x st = Curry.RunTimeSystem.patternFail("Pretty.punctuate.go.75")(x)++++c_encloseSep :: Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_encloseSep x1 x2 x3 x4@Curry.Module.Prelude.List st = Curry.Module.Pretty.op_60_62(x1)(x2)(st)+c_encloseSep x1 x2 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_align(st))(Curry.Module.Pretty.c_enclose(x1)(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_cat(st))((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Pretty.op_60_62(x3)))(x6)(st)))(st))(st))(st)+c_encloseSep x1 x2 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_encloseSep(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_encloseSep x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Pretty.encloseSep")(x)++++c_hEncloseSep :: Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_hEncloseSep x1 x2 x3 x4@Curry.Module.Prelude.List st = Curry.Module.Pretty.op_60_62(x1)(x2)(st)+c_hEncloseSep x1 x2 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_align(st))(Curry.Module.Pretty.c_enclose(x1)(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_hcat(st))((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Pretty.op_60_62(x3)))(x6)(st)))(st))(st))(st)+c_hEncloseSep x1 x2 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_hEncloseSep(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_hEncloseSep x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Pretty.hEncloseSep")(x)++++c_fillEncloseSep :: Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_fillEncloseSep x1 x2 x3 x4@Curry.Module.Prelude.List st = Curry.Module.Pretty.op_60_62(x1)(x2)(st)+c_fillEncloseSep x1 x2 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_align(st))(Curry.Module.Pretty.c_enclose(x1)(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_hcat(st))((Curry.Module.Prelude.:<)(x5)(Curry.Module.Pretty.c_fillEncloseSep'46withSoftBreaks'4696(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Pretty.op_60_62(x3)))(x6)(st))(st)))(st))(st))(st)+c_fillEncloseSep x1 x2 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_fillEncloseSep(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_fillEncloseSep x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Pretty.fillEncloseSep")(x)++++c_fillEncloseSep'46withSoftBreaks'4696 :: (Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc+c_fillEncloseSep'46withSoftBreaks'4696 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_fillEncloseSep'46withSoftBreaks'4696 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Pretty.c_fillEncloseSep'46withSoftBreaks'4696_case_12(x2)(x3)(st)+c_fillEncloseSep'46withSoftBreaks'4696 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_fillEncloseSep'46withSoftBreaks'4696(x)(st))(i)(xs)(st)+c_fillEncloseSep'46withSoftBreaks'4696 x st = Curry.RunTimeSystem.patternFail("Pretty.fillEncloseSep.withSoftBreaks.96")(x)++++c_list :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_list st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_fillEncloseSep(Curry.Module.Pretty.c_lbracket(st))(Curry.Module.Pretty.c_rbracket(st))(Curry.Module.Pretty.c_comma(st)))++++c_tupled :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_tupled st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_fillEncloseSep(Curry.Module.Pretty.c_lparen(st))(Curry.Module.Pretty.c_rparen(st))(Curry.Module.Pretty.c_comma(st)))++++c_semiBraces :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Pretty.C_Doc) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_semiBraces st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_fillEncloseSep(Curry.Module.Pretty.c_lbrace(st))(Curry.Module.Pretty.c_rbrace(st))(Curry.Module.Pretty.c_semi(st)))++++c_enclose :: Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_enclose x1 x2 x3 st = Curry.Module.Pretty.op_60_62(Curry.Module.Pretty.op_60_62(x1)(x3)(st))(x2)(st)++++c_squotes :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_squotes st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_squote(st))(Curry.Module.Pretty.c_squote(st)))++++c_dquotes :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_dquotes st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_dquote(st))(Curry.Module.Pretty.c_dquote(st)))++++c_bquotes :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bquotes st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_bquote(st))(Curry.Module.Pretty.c_bquote(st)))++++c_parens :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_parens st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_lparen(st))(Curry.Module.Pretty.c_rparen(st)))++++c_angles :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_angles st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_langle(st))(Curry.Module.Pretty.c_rangle(st)))++++c_braces :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_braces st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_lbrace(st))(Curry.Module.Pretty.c_rbrace(st)))++++c_brackets :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_brackets st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_lbracket(st))(Curry.Module.Pretty.c_rbracket(st)))++++c_char :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_char x1 st = Curry.Module.Pretty.c_text((Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.List))(st)++++c_string :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_string st = Curry.Module.Prelude.op_46(Curry.Module.Pretty.c_hcat(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_string'46_'35lambda4))))(st)++++c_string'46_'35lambda4 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_string'46_'35lambda4 x1 st = Curry.Module.Pretty.c_string'46_'35lambda4_case_11(x1)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(x1)(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\r'))(Curry.Module.Prelude.List)))(st))(st)++++c_int :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_int x1 st = Curry.Module.Pretty.c_text(Curry.Module.Prelude.c_show(x1)(st))(st)++++c_float :: Curry.Module.Prelude.C_Float -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_float x1 st = Curry.Module.Pretty.c_text(Curry.Module.Prelude.c_show(x1)(st))(st)++++c_lparen :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_lparen st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('('))(st)++++c_rparen :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_rparen st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char(')'))(st)++++c_langle :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_langle st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('<'))(st)++++c_rangle :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_rangle st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('>'))(st)++++c_lbrace :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_lbrace st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('{'))(st)++++c_rbrace :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_rbrace st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('}'))(st)++++c_lbracket :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_lbracket st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('['))(st)++++c_rbracket :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_rbracket st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char(']'))(st)++++c_squote :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_squote st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('\''))(st)++++c_dquote :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_dquote st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('\"'))(st)++++c_bquote :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_bquote st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('`'))(st)++++c_semi :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_semi st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char(';'))(st)++++c_colon :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_colon st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char(':'))(st)++++c_comma :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_comma st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char(','))(st)++++c_space :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_space st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char(' '))(st)++++c_dot :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_dot st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('.'))(st)++++c_backslash :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_backslash st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('\\'))(st)++++c_equals :: Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc+c_equals st = Curry.Module.Pretty.c_char(Curry.Module.Prelude.C_Char('='))(st)++++c_normalise :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Tokens -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens)+c_normalise st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_normalise'46go'46173(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))++++c_normalise'46open'46173 :: Curry.Module.Pretty.C_Tokens -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens+c_normalise'46open'46173 x1@(Curry.Module.Pretty.C_Close x2) st = x2+c_normalise'46open'46173 x1@(Curry.Module.Pretty.C_Text x3 x4) st = Curry.Module.Pretty.C_Open(x1)+c_normalise'46open'46173 x1@(Curry.Module.Pretty.C_Line x5 x6) st = Curry.Module.Pretty.C_Open(x1)+c_normalise'46open'46173 x1@(Curry.Module.Pretty.C_Open x7) st = Curry.Module.Pretty.C_Open(x1)+c_normalise'46open'46173 x1@Curry.Module.Pretty.C_Empty st = Curry.Module.Pretty.C_Open(x1)+c_normalise'46open'46173 x1@(Curry.Module.Pretty.C_OpenNest x8 x9) st = Curry.Module.Pretty.C_Open(x1)+c_normalise'46open'46173 x1@(Curry.Module.Pretty.C_CloseNest x10) st = Curry.Module.Pretty.C_Open(x1)+c_normalise'46open'46173 (Curry.Module.Pretty.C_TokensOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_normalise'46open'46173(x)(st))(i)(xs)(st)+c_normalise'46open'46173 x st = Curry.RunTimeSystem.patternFail("Pretty.normalise.open.173")(x)++++c_normalise'46go'46173 :: (Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Tokens -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens)) -> Curry.Module.Pretty.C_Tokens -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens+c_normalise'46go'46173 x1 x2@Curry.Module.Pretty.C_Empty st = Curry.Module.Prelude.c_apply(x1)(Curry.Module.Pretty.C_Empty)(st)+c_normalise'46go'46173 x1 x2@(Curry.Module.Pretty.C_Open x3) st = Curry.Module.Pretty.c_normalise'46go'46173(Curry.Module.Prelude.op_46(x1)(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_normalise'46open'46173))(st))(x3)(st)+c_normalise'46go'46173 x1 x2@(Curry.Module.Pretty.C_Close x4) st = Curry.Module.Pretty.c_normalise'46go'46173(Curry.Module.Prelude.op_46(x1)(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_Close))(st))(x4)(st)+c_normalise'46go'46173 x1 x2@(Curry.Module.Pretty.C_Line x5 x6) st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.op_46(x1)(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Pretty.C_Line(x5)))(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_normalise'46go'46173(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))))(st))(st))(x6)(st)+c_normalise'46go'46173 x1 x2@(Curry.Module.Pretty.C_Text x7 x8) st = Curry.Module.Pretty.C_Text(x7)(Curry.Module.Pretty.c_normalise'46go'46173(x1)(x8)(st))+c_normalise'46go'46173 x1 x2@(Curry.Module.Pretty.C_OpenNest x9 x10) st = Curry.Module.Pretty.C_OpenNest(x9)(Curry.Module.Pretty.c_normalise'46go'46173(x1)(x10)(st))+c_normalise'46go'46173 x1 x2@(Curry.Module.Pretty.C_CloseNest x11) st = Curry.Module.Pretty.C_CloseNest(Curry.Module.Pretty.c_normalise'46go'46173(x1)(x11)(st))+c_normalise'46go'46173 x1 (Curry.Module.Pretty.C_TokensOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_normalise'46go'46173(x1)(x)(st))(i)(xs)(st)+c_normalise'46go'46173 x1 x st = Curry.RunTimeSystem.patternFail("Pretty.normalise.go.173")(x)++++c_doc2Tokens :: Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Tokens+c_doc2Tokens x1@(Curry.Module.Pretty.C_Doc x2) st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_normalise(st))(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Pretty.C_Empty)(st))(st)+c_doc2Tokens (Curry.Module.Pretty.C_DocOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_doc2Tokens(x)(st))(i)(xs)(st)+c_doc2Tokens x st = Curry.RunTimeSystem.patternFail("Pretty.doc2Tokens")(x)++++c_pretty :: Curry.Module.Prelude.C_Int -> Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_pretty x1 x2 st = Curry.Module.Pretty.c_noGroup(Curry.Module.Pretty.c_doc2Tokens(x2)(st))(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(x1)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Zero)(Curry.Module.Prelude.List))(st)++++c_length :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int)+c_length st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_length))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_not))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_elem))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(Curry.Module.Prelude.List))))(Curry.Module.Prelude.c_enumFromTo(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st))(st))))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_ord))(st))(st))))(st)++++c_noGroup :: Curry.Module.Pretty.C_Tokens -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_noGroup x1@Curry.Module.Pretty.C_Empty x2 x3 x4 x5 st = Curry.Module.Prelude.List+c_noGroup x1@(Curry.Module.Pretty.C_Text x6 x7) x2 x3 x4 x5 st = let {x8 = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_length(st))(x6)(st)} in Curry.Module.Prelude.op_43_43(x6)(Curry.Module.Pretty.c_noGroup(x7)(x2)(Curry.Module.Prelude.op_43(x3)(x8)(st))(Curry.Module.Prelude.op_45(x4)(x8)(st))(x5)(st))(st)+c_noGroup x1@(Curry.Module.Pretty.C_Line x9 x10) x2 x3 x4 x5 st = Curry.Module.Pretty.c_noGroup_case_10(x2)(x3)(x10)(x5)(st)+c_noGroup x1@(Curry.Module.Pretty.C_Open x13) x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_oneGroup(x13)(x2)(x3)(Curry.Module.Prelude.op_43(x3)(x4)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_noGroup'46_'35lambda6))(st))(x4)(st))(x5)(st)+c_noGroup x1@(Curry.Module.Pretty.C_Close x14) x2 x3 x4 x5 st = Curry.Module.Pretty.c_noGroup(x14)(x2)(x3)(x4)(x5)(st)+c_noGroup x1@(Curry.Module.Pretty.C_OpenNest x15 x16) x2 x3 x4 x5 st = Curry.Module.Pretty.c_noGroup(x16)(x2)(x3)(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x15)(x5)(st))(x4)(st))(x2)(st))(st)+c_noGroup x1@(Curry.Module.Pretty.C_CloseNest x17) x2 x3 x4 x5 st = Curry.Module.Pretty.c_noGroup(x17)(x2)(x3)(x4)(Curry.Module.Prelude.c_tail(x5)(st))(st)+c_noGroup (Curry.Module.Pretty.C_TokensOr i xs) x2 x3 x4 x5 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_noGroup(x)(x2)(x3)(x4)(x5)(st))(i)(xs)(st)+c_noGroup x x2 x3 x4 x5 st = Curry.RunTimeSystem.patternFail("Pretty.noGroup")(x)++++c_noGroup'46_'35lambda6 :: Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_noGroup'46_'35lambda6 x1 x2 st = x2++++c_oneGroup :: Curry.Module.Pretty.C_Tokens -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_oneGroup x1@(Curry.Module.Pretty.C_Text x6 x7) x2 x3 x4 x5 st = let {x8 = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_length(st))(x6)(st)} in Curry.Module.Pretty.c_pruneOne(x7)(x2)(Curry.Module.Prelude.op_43(x3)(x8)(st))(x4)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda7(x8)(x5)(x6)))(st)+c_oneGroup x1@(Curry.Module.Pretty.C_Line x9 x10) x2 x3 x4 x5 st = let {x11 = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_length(st))(x9)(st)} in Curry.Module.Pretty.c_pruneOne(x10)(x2)(Curry.Module.Prelude.op_43(x3)(x11)(st))(x4)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda8(x11)(x5)(x9)(x2)))(st)+c_oneGroup x1@(Curry.Module.Pretty.C_Open x12) x2 x3 x4 x5 st = Curry.Module.Pretty.c_multiGroup(x12)(x2)(x3)(x4)(x5)(Curry.Module.Dequeue.c_empty(st))(x3)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda9))(st)+c_oneGroup x1@(Curry.Module.Pretty.C_Close x13) x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.op_60_61(x3)(x4)(st))(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_noGroup(x13)(x2)(x3)))(st)+c_oneGroup x1@(Curry.Module.Pretty.C_OpenNest x14 x15) x2 x3 x4 x5 st = Curry.Module.Pretty.c_oneGroup(x15)(x2)(x3)(x4)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda10(x14)(x5)(x2)))(st)+c_oneGroup x1@(Curry.Module.Pretty.C_CloseNest x16) x2 x3 x4 x5 st = Curry.Module.Pretty.c_oneGroup(x16)(x2)(x3)(x4)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda12(x5)))(st)+c_oneGroup (Curry.Module.Pretty.C_TokensOr i xs) x2 x3 x4 x5 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_oneGroup(x)(x2)(x3)(x4)(x5)(st))(i)(xs)(st)+c_oneGroup x x2 x3 x4 x5 st = Curry.RunTimeSystem.patternFail("Pretty.oneGroup")(x)++++c_oneGroup'46outText'46234 :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_oneGroup'46outText'46234 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.op_43_43(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(Curry.Module.Prelude.op_45(x4)(x1)(st))(st))(x5)(st))(st)++++c_oneGroup'46_'35lambda7 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_oneGroup'46_'35lambda7 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46outText'46234(x1)(x3)(x5)))(st)++++c_oneGroup'46outLine'46240 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_oneGroup'46outLine'46240 x1 x2 x3 x4 x5 x6 x7@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Pretty.c_oneGroup'46outLine'46240_case_9(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x4)(st)+c_oneGroup'46outLine'46240 x1 x2 x3 x4 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_oneGroup'46outLine'46240(x1)(x2)(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_oneGroup'46outLine'46240 x1 x2 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("Pretty.oneGroup.outLine.240")(x)++++c_oneGroup'46_'35lambda8 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_oneGroup'46_'35lambda8 x1 x2 x3 x4 x5 x6 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x5)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46outLine'46240(x1)(x3)(x4)(x5)(x6)))(st)++++c_oneGroup'46_'35lambda9 :: Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_oneGroup'46_'35lambda9 x1 x2 st = x2++++c_oneGroup'46_'35lambda10 :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_oneGroup'46_'35lambda10 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda10'46_'35lambda11(x5)(x1)(x3)))(st)++++c_oneGroup'46_'35lambda10'46_'35lambda11 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_oneGroup'46_'35lambda10'46_'35lambda11 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x5)(st))(x4)(st))(x3)(st))(st)++++c_oneGroup'46_'35lambda12 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_oneGroup'46_'35lambda12 x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_oneGroup'46_'35lambda12'46_'35lambda13(x3)))(st)++++c_oneGroup'46_'35lambda12'46_'35lambda13 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_oneGroup'46_'35lambda12'46_'35lambda13 x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(Curry.Module.Prelude.c_tail(x3)(st))(st)++++c_multiGroup :: Curry.Module.Pretty.C_Tokens -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Dequeue.C_Queue (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup x1@(Curry.Module.Pretty.C_Text x9 x10) x2 x3 x4 x5 x6 x7 x8 st = let {x11 = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_length(st))(x9)(st)} in Curry.Module.Pretty.c_pruneMulti(x10)(x2)(Curry.Module.Prelude.op_43(x3)(x11)(st))(x4)(x5)(x6)(x7)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda14(x11)(x8)(x9)))(st)+c_multiGroup x1@(Curry.Module.Pretty.C_Line x12 x13) x2 x3 x4 x5 x6 x7 x8 st = let {x14 = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_length(st))(x12)(st)} in Curry.Module.Pretty.c_pruneMulti(x13)(x2)(Curry.Module.Prelude.op_43(x3)(x14)(st))(x4)(x5)(x6)(x7)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda15(x14)(x8)(x12)(x2)))(st)+c_multiGroup x1@(Curry.Module.Pretty.C_Open x15) x2 x3 x4 x5 x6 x7 x8 st = Curry.Module.Pretty.c_multiGroup(x15)(x2)(x3)(x4)(x5)(Curry.Module.Dequeue.c_cons(Curry.Module.Prelude.T2(x7)(x8))(x6)(st))(x3)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda16))(st)+c_multiGroup x1@(Curry.Module.Pretty.C_Close x16) x2 x3 x4 x5 x6 x7 x8 st = Curry.Module.Pretty.c_multiGroup_case_8(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x16)(Curry.Module.Dequeue.c_matchHead(x6)(st))(st)+c_multiGroup x1@(Curry.Module.Pretty.C_OpenNest x22 x23) x2 x3 x4 x5 x6 x7 x8 st = Curry.Module.Pretty.c_multiGroup(x23)(x2)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda22(x22)(x8)(x2)))(st)+c_multiGroup x1@(Curry.Module.Pretty.C_CloseNest x24) x2 x3 x4 x5 x6 x7 x8 st = Curry.Module.Pretty.c_multiGroup(x24)(x2)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda24(x8)))(st)+c_multiGroup (Curry.Module.Pretty.C_TokensOr i xs) x2 x3 x4 x5 x6 x7 x8 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_multiGroup(x)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(st))(i)(xs)(st)+c_multiGroup x x2 x3 x4 x5 x6 x7 x8 st = Curry.RunTimeSystem.patternFail("Pretty.multiGroup")(x)++++c_multiGroup'46outText'46261 :: (Curry t0) => Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_multiGroup'46outText'46261 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.op_43_43(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(Curry.Module.Prelude.op_45(x4)(x1)(st))(st))(x5)(st))(st)++++c_multiGroup'46_'35lambda14 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda14 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46outText'46261(x1)(x3)(x5)))(st)++++c_multiGroup'46outLine'46267 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_multiGroup'46outLine'46267 x1 x2 x3 x4 x5 x6 x7@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Pretty.c_multiGroup'46outLine'46267_case_5(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x4)(st)+c_multiGroup'46outLine'46267 x1 x2 x3 x4 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_multiGroup'46outLine'46267(x1)(x2)(x3)(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_multiGroup'46outLine'46267 x1 x2 x3 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("Pretty.multiGroup.outLine.267")(x)++++c_multiGroup'46_'35lambda15 :: Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda15 x1 x2 x3 x4 x5 x6 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x5)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46outLine'46267(x1)(x3)(x4)(x5)(x6)))(st)++++c_multiGroup'46_'35lambda16 :: Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda16 x1 x2 st = x2++++c_multiGroup'46_'35lambda18 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda18 x1 x2 x3 x4 x5 x6 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x5)(st))(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_multiGroup'46_'35lambda18'46_'35lambda19(x6)(x1)(x3)(x4)))(st)++++c_multiGroup'46_'35lambda18'46_'35lambda19 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_multiGroup'46_'35lambda18'46_'35lambda19 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.op_60_61(x3)(Curry.Module.Prelude.op_43(x4)(x5)(st))(st))(st))(x1)(st))(x5)(st)++++c_multiGroup'46_'35lambda20 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda20 x1 x2 x3 x4 x5 x6 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x5)(st))(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_multiGroup'46_'35lambda20'46_'35lambda21(x6)(x2)(x3)(x4)))(st)++++c_multiGroup'46_'35lambda20'46_'35lambda21 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_multiGroup'46_'35lambda20'46_'35lambda21 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.op_60_61(x3)(Curry.Module.Prelude.op_43(x4)(x5)(st))(st))(st))(x1)(st))(x5)(st)++++c_multiGroup'46_'35lambda22 :: (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)))) -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda22 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x4)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda22'46_'35lambda23(x5)(x1)(x3)))(st)++++c_multiGroup'46_'35lambda22'46_'35lambda23 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int)))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_multiGroup'46_'35lambda22'46_'35lambda23 x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x5)(st))(x4)(st))(x3)(st))(st)++++c_multiGroup'46_'35lambda24 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Bool -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_multiGroup'46_'35lambda24 x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda24'46_'35lambda25(x3)))(st)++++c_multiGroup'46_'35lambda24'46_'35lambda25 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_multiGroup'46_'35lambda24'46_'35lambda25 x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x2)(st))(Curry.Module.Prelude.c_tail(x3)(st))(st)++++c_pruneOne :: Curry.Module.Pretty.C_Tokens -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_pruneOne x1 x2 x3 x4 x5 st = Curry.Module.Pretty.c_pruneOne_case_4(x1)(x2)(x3)(x4)(x5)(Curry.Module.Prelude.op_60_61(x3)(x4)(st))(st)++++c_pruneMulti :: Curry.Module.Pretty.C_Tokens -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> (Curry.Module.Dequeue.C_Queue (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_pruneMulti x1 x2 x3 x4 x5 x6 x7 x8 st = Curry.Module.Pretty.c_pruneMulti_case_3(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.op_60_61(x3)(x4)(st))(st)++++c_pruneMulti'46_'35lambda26 :: (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))) -> Curry.Module.Prelude.C_Int -> (Curry.Module.Dequeue.C_Queue (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int (Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))))))) -> Curry.Module.Prelude.C_Int -> Curry.Module.Pretty.C_Tokens -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_pruneMulti'46_'35lambda26 x1 x2 x3 x4 x5 x6 x7 st = Curry.Module.Pretty.c_pruneMulti'46_'35lambda26_case_2(x1)(x2)(x3)(x4)(x5)(x6)(x7)(Curry.Module.Dequeue.c_matchLast(x3)(st))(st)++++c_pruneMulti'46_'35lambda26_case_2 x1 x2 x3 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_Nothing st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_pruneOne(x5)(x6)(x2)(Curry.Module.Prelude.op_43(x4)(x7)(st))(x1)(st))(x7)(st)+c_pruneMulti'46_'35lambda26_case_2 x1 x2 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_Just x8) st = Curry.Module.Pretty.c_pruneMulti'46_'35lambda26_case_1(x1)(x2)(x4)(x5)(x6)(x7)(x8)(st)+c_pruneMulti'46_'35lambda26_case_2 x1 x2 x3 x4 x5 x6 x7 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_pruneMulti'46_'35lambda26_case_2(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_pruneMulti'46_'35lambda26_case_2 x1 x2 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Pretty.pruneMulti._#lambda26_case_2")(x)++++c_pruneMulti'46_'35lambda26_case_1 x1 x2 x4 x5 x6 x7 x8@(Curry.Module.Prelude.T2 x9 x10) st = Curry.Module.Pretty.c_pruneMulti'46_'35lambda26_case_0(x1)(x2)(x4)(x5)(x6)(x7)(x10)(x9)(st)+c_pruneMulti'46_'35lambda26_case_1 x1 x2 x4 x5 x6 x7 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_pruneMulti'46_'35lambda26_case_1(x1)(x2)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_pruneMulti'46_'35lambda26_case_1 x1 x2 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Pretty.pruneMulti._#lambda26_case_1")(x)++++c_pruneMulti'46_'35lambda26_case_0 x1 x2 x4 x5 x6 x7 x10 x9@(Curry.Module.Prelude.T2 x11 x12) st = Curry.Module.Prelude.c_apply(Curry.Module.Pretty.c_pruneMulti(x5)(x6)(x2)(Curry.Module.Prelude.op_43(x11)(x7)(st))(x12)(x10)(x4)(x1)(st))(x7)(st)+c_pruneMulti'46_'35lambda26_case_0 x1 x2 x4 x5 x6 x7 x10 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_pruneMulti'46_'35lambda26_case_0(x1)(x2)(x4)(x5)(x6)(x7)(x10)(x)(st))(i)(xs)(st)+c_pruneMulti'46_'35lambda26_case_0 x1 x2 x4 x5 x6 x7 x10 x st = Curry.RunTimeSystem.patternFail("Pretty.pruneMulti._#lambda26_case_0")(x)++++c_pruneMulti_case_3 x1 x2 x3 x4 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Pretty.c_multiGroup(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(st)+c_pruneMulti_case_3 x1 x2 x3 x4 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.C_False)(st))(Curry.Module.Prelude.pf(Curry.Module.Pretty.c_pruneMulti'46_'35lambda26(x8)(x3)(x6)(x7)(x1)(x2)))(st)+c_pruneMulti_case_3 x1 x2 x3 x4 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_pruneMulti_case_3(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_pruneMulti_case_3 x1 x2 x3 x4 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("Pretty.pruneMulti_case_3")(x)++++c_pruneOne_case_4 x1 x2 x3 x4 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.Pretty.c_oneGroup(x1)(x2)(x3)(x4)(x5)(st)+c_pruneOne_case_4 x1 x2 x3 x4 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.C_False)(st))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_noGroup(x1)(x2)(x3)))(st)+c_pruneOne_case_4 x1 x2 x3 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_pruneOne_case_4(x1)(x2)(x3)(x4)(x5)(x)(st))(i)(xs)(st)+c_pruneOne_case_4 x1 x2 x3 x4 x5 x st = Curry.RunTimeSystem.patternFail("Pretty.pruneOne_case_4")(x)++++c_multiGroup'46outLine'46267_case_5 x1 x2 x3 x5 x6 x7 x8 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43_43(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.op_45(x6)(x1)(st))(st))(x7)(st))(st)+c_multiGroup'46outLine'46267_case_5 x1 x2 x3 x5 x6 x7 x8 x4@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_replicate(x8)(Curry.Module.Prelude.C_Char(' '))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.op_45(x3)(x8)(st))(st))(x7)(st))(st))+c_multiGroup'46outLine'46267_case_5 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_multiGroup'46outLine'46267_case_5(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_multiGroup'46outLine'46267_case_5 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("Pretty.multiGroup.outLine.267_case_5")(x)++++c_multiGroup_case_8 x2 x3 x4 x5 x6 x7 x8 x16 x17@Curry.Module.Prelude.C_Nothing st = Curry.Module.Pretty.c_oneGroup(x16)(x2)(x3)(x4)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda18(x8)(x5)(x3)(x7)))(st)+c_multiGroup_case_8 x2 x3 x4 x5 x6 x7 x8 x16 (Curry.Module.Prelude.C_Just x17) st = Curry.Module.Pretty.c_multiGroup_case_7(x2)(x3)(x4)(x5)(x7)(x8)(x16)(x17)(st)+c_multiGroup_case_8 x2 x3 x4 x5 x6 x7 x8 x16 (Curry.Module.Prelude.C_MaybeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_multiGroup_case_8(x2)(x3)(x4)(x5)(x6)(x7)(x8)(x16)(x)(st))(i)(xs)(st)+c_multiGroup_case_8 x2 x3 x4 x5 x6 x7 x8 x16 x st = Curry.RunTimeSystem.patternFail("Pretty.multiGroup_case_8")(x)++++c_multiGroup_case_7 x2 x3 x4 x5 x7 x8 x16 x17@(Curry.Module.Prelude.T2 x18 x19) st = Curry.Module.Pretty.c_multiGroup_case_6(x2)(x3)(x4)(x5)(x7)(x8)(x16)(x19)(x18)(st)+c_multiGroup_case_7 x2 x3 x4 x5 x7 x8 x16 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_multiGroup_case_7(x2)(x3)(x4)(x5)(x7)(x8)(x16)(x)(st))(i)(xs)(st)+c_multiGroup_case_7 x2 x3 x4 x5 x7 x8 x16 x st = Curry.RunTimeSystem.patternFail("Pretty.multiGroup_case_7")(x)++++c_multiGroup_case_6 x2 x3 x4 x5 x7 x8 x16 x19 x18@(Curry.Module.Prelude.T2 x20 x21) st = Curry.Module.Pretty.c_multiGroup(x16)(x2)(x3)(x4)(x5)(x19)(x20)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Pretty.c_multiGroup'46_'35lambda20(x21)(x8)(x3)(x7)))(st)+c_multiGroup_case_6 x2 x3 x4 x5 x7 x8 x16 x19 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_multiGroup_case_6(x2)(x3)(x4)(x5)(x7)(x8)(x16)(x19)(x)(st))(i)(xs)(st)+c_multiGroup_case_6 x2 x3 x4 x5 x7 x8 x16 x19 x st = Curry.RunTimeSystem.patternFail("Pretty.multiGroup_case_6")(x)++++c_oneGroup'46outLine'46240_case_9 x1 x2 x3 x5 x6 x7 x8 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43_43(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.op_45(x6)(x1)(st))(st))(x7)(st))(st)+c_oneGroup'46outLine'46240_case_9 x1 x2 x3 x5 x6 x7 x8 x4@Curry.Module.Prelude.C_False st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_replicate(x8)(Curry.Module.Prelude.C_Char(' '))(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x5)(Curry.Module.Prelude.op_45(x3)(x8)(st))(st))(x7)(st))(st))+c_oneGroup'46outLine'46240_case_9 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_oneGroup'46outLine'46240_case_9(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_oneGroup'46outLine'46240_case_9 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("Pretty.oneGroup.outLine.240_case_9")(x)++++c_noGroup_case_10 x2 x3 x10 x5@((Curry.Module.Prelude.:<) x11 x12) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_replicate(x11)(Curry.Module.Prelude.C_Char(' '))(st))(Curry.Module.Pretty.c_noGroup(x10)(x2)(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Prelude.op_45(x2)(x11)(st))(x5)(st))(st))+c_noGroup_case_10 x2 x3 x10 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_noGroup_case_10(x2)(x3)(x10)(x)(st))(i)(xs)(st)+c_noGroup_case_10 x2 x3 x10 x st = Curry.RunTimeSystem.patternFail("Pretty.noGroup_case_10")(x)++++c_string'46_'35lambda4_case_11 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Pretty.c_line(st)+c_string'46_'35lambda4_case_11 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Pretty.c_char(x1)(st)+c_string'46_'35lambda4_case_11 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_string'46_'35lambda4_case_11(x1)(x)(st))(i)(xs)(st)+c_string'46_'35lambda4_case_11 x1 x st = Curry.RunTimeSystem.patternFail("Pretty.string._#lambda4_case_11")(x)++++c_fillEncloseSep'46withSoftBreaks'4696_case_12 x2 x3@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(Curry.Module.Pretty.c_group(Curry.Module.Pretty.op_60_62(Curry.Module.Pretty.c_linebreak(st))(x2)(st))(st))(Curry.Module.Prelude.List)+c_fillEncloseSep'46withSoftBreaks'4696_case_12 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = (Curry.Module.Prelude.:<)(Curry.Module.Pretty.c_group(Curry.Module.Pretty.op_60_62(Curry.Module.Pretty.c_linebreak(st))(Curry.Module.Pretty.c_group(Curry.Module.Pretty.op_60_62(x2)(Curry.Module.Pretty.c_linebreak(st))(st))(st))(st))(st))(Curry.Module.Pretty.c_fillEncloseSep'46withSoftBreaks'4696(x3)(st))+c_fillEncloseSep'46withSoftBreaks'4696_case_12 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_fillEncloseSep'46withSoftBreaks'4696_case_12(x2)(x)(st))(i)(xs)(st)+c_fillEncloseSep'46withSoftBreaks'4696_case_12 x2 x st = Curry.RunTimeSystem.patternFail("Pretty.fillEncloseSep.withSoftBreaks.96_case_12")(x)++++c_punctuate'46go'4675_case_13 x1 x3 x4@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List)+c_punctuate'46go'4675_case_13 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = (Curry.Module.Prelude.:<)(Curry.Module.Pretty.op_60_62(x3)(x1)(st))(Curry.Module.Pretty.c_punctuate'46go'4675(x1)(x4)(st))+c_punctuate'46go'4675_case_13 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Pretty.c_punctuate'46go'4675_case_13(x1)(x3)(x)(st))(i)(xs)(st)+c_punctuate'46go'4675_case_13 x1 x3 x st = Curry.RunTimeSystem.patternFail("Pretty.punctuate.go.75_case_13")(x)++
+ dist/build/Curry/Module/PropertyFile.hs view
@@ -0,0 +1,123 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.PropertyFile (module Curry.Module.PropertyFile) where++import Curry.RunTimeSystem+import Curry.Module.Char+import Curry.Module.Directory+import Curry.Module.IOExts+import Curry.Module.Prelude++++-- begin included++++-- end included++c_readPropertyFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_readPropertyFile x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Directory.c_doesFileExist(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_readPropertyFile'46_'35lambda3(x1)))(st)++++c_readPropertyFile'46splitEqs'463 :: (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readPropertyFile'46splitEqs'463 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_readPropertyFile'46splitEqs'463 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463_case_4(x2)(x3)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.C_Char('='))))(st))(x2)(st))(st)+c_readPropertyFile'46splitEqs'463 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463(x)(st))(i)(xs)(st)+c_readPropertyFile'46splitEqs'463 x st = Curry.RunTimeSystem.patternFail("PropertyFile.readPropertyFile.splitEqs.3")(x)++++c_readPropertyFile'46_'35lambda3 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Bool -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_readPropertyFile'46_'35lambda3 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_readFile(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_readPropertyFile'46_'35lambda3'46_'35lambda4))(st)+c_readPropertyFile'46_'35lambda3 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_return(Curry.Module.Prelude.List)(st)+c_readPropertyFile'46_'35lambda3 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_readPropertyFile'46_'35lambda3(x1)(x)(st))(i)(xs)(st)+c_readPropertyFile'46_'35lambda3 x1 x st = Curry.RunTimeSystem.patternFail("PropertyFile.readPropertyFile._#lambda3")(x)++++c_readPropertyFile'46_'35lambda3'46_'35lambda4 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_readPropertyFile'46_'35lambda3'46_'35lambda4 x1 st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.op_36(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_readPropertyFile'46_'35lambda3'46_'35lambda4'46_'35lambda5))))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_lines))(st))(st))(x1)(st))(st)++++c_readPropertyFile'46_'35lambda3'46_'35lambda4'46_'35lambda5 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_readPropertyFile'46_'35lambda3'46_'35lambda4'46_'35lambda5 x1 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.c_not(Curry.Module.Prelude.c_null(x1)(st))(st))(Curry.Module.Char.c_isAlpha(Curry.Module.Prelude.c_head(x1)(st))(st))(st)++++c_updatePropertyFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_updatePropertyFile x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.PropertyFile.c_readPropertyFile(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_updatePropertyFile'46_'35lambda6(x1)(x2)(x3)))(st)++++c_updatePropertyFile'46_'35lambda6 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_updatePropertyFile'46_'35lambda6 x1 x2 x3 x4 st = Curry.Module.PropertyFile.c_updatePropertyFile'46_'35lambda6_case_2(x1)(x2)(x3)(x4)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_lookup(x2)(x4)(st))(Curry.Module.Prelude.C_Nothing)(st))(st)++++c_changePropertyInFile :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_changePropertyInFile x1 x2 x3 st = Curry.Module.IOExts.c_updateFile(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_changePropertyInFile'46_'35lambda7(x2)(x3)))(x1)(st)++++c_changePropertyInFile'46changeProp'4621 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_changePropertyInFile'46changeProp'4621 x1 x2 x3 st = let {x4 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.C_Char('='))))(st))(x3)(st)} in let {x5 = Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621'46_'35selFP3'35s1(x4)(st)} in Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621_case_1(x1)(x2)(x3)(x4)(x5)(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.c_null(x3)(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.c_not(Curry.Module.Char.c_isAlpha(Curry.Module.Prelude.c_head(x3)(st))(st))(st))(Curry.Module.Prelude.c_null(Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621'46_'35selFP4'35s2(x4)(st))(st))(st))(st))(st)++++c_changePropertyInFile'46changeProp'4621'46_'35selFP3'35s1 :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_changePropertyInFile'46changeProp'4621'46_'35selFP3'35s1 x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_changePropertyInFile'46changeProp'4621'46_'35selFP3'35s1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621'46_'35selFP3'35s1(x)(st))(i)(xs)(st)+c_changePropertyInFile'46changeProp'4621'46_'35selFP3'35s1 x st = Curry.RunTimeSystem.patternFail("PropertyFile.changePropertyInFile.changeProp.21._#selFP3#s1")(x)++++c_changePropertyInFile'46changeProp'4621'46_'35selFP4'35s2 :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_changePropertyInFile'46changeProp'4621'46_'35selFP4'35s2 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_changePropertyInFile'46changeProp'4621'46_'35selFP4'35s2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621'46_'35selFP4'35s2(x)(st))(i)(xs)(st)+c_changePropertyInFile'46changeProp'4621'46_'35selFP4'35s2 x st = Curry.RunTimeSystem.patternFail("PropertyFile.changePropertyInFile.changeProp.21._#selFP4#s2")(x)++++c_changePropertyInFile'46_'35lambda7 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_changePropertyInFile'46_'35lambda7 x1 x2 x3 st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_unlines))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621(x1)(x2)))))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_lines))(st))(st))(x3)(st)++++c_changePropertyInFile'46changeProp'4621_case_1 x1 x2 x3 x4 x5 x6@Curry.Module.Prelude.C_True st = x3+c_changePropertyInFile'46changeProp'4621_case_1 x1 x2 x3 x4 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621_case_0(x1)(x2)(x3)(x5)(Curry.Module.Prelude.op_61_61(x5)(x1)(st))(st)+c_changePropertyInFile'46changeProp'4621_case_1 x1 x2 x3 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621_case_1(x1)(x2)(x3)(x4)(x5)(x)(st))(i)(xs)(st)+c_changePropertyInFile'46changeProp'4621_case_1 x1 x2 x3 x4 x5 x st = Curry.RunTimeSystem.patternFail("PropertyFile.changePropertyInFile.changeProp.21_case_1")(x)++++c_changePropertyInFile'46changeProp'4621_case_0 x1 x2 x3 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43_43(x5)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('='))(Curry.Module.Prelude.List))(x2)(st))(st)+c_changePropertyInFile'46changeProp'4621_case_0 x1 x2 x3 x5 x6@Curry.Module.Prelude.C_False st = x3+c_changePropertyInFile'46changeProp'4621_case_0 x1 x2 x3 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_changePropertyInFile'46changeProp'4621_case_0(x1)(x2)(x3)(x5)(x)(st))(i)(xs)(st)+c_changePropertyInFile'46changeProp'4621_case_0 x1 x2 x3 x5 x st = Curry.RunTimeSystem.patternFail("PropertyFile.changePropertyInFile.changeProp.21_case_0")(x)++++c_updatePropertyFile'46_'35lambda6_case_2 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_appendFile(x1)(Curry.Module.Prelude.op_43_43(x2)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('='))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(x3)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('\n'))(Curry.Module.Prelude.List))(st))(st))(st))(st)+c_updatePropertyFile'46_'35lambda6_case_2 x1 x2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.PropertyFile.c_changePropertyInFile(x1)(x2)(x3)(st)+c_updatePropertyFile'46_'35lambda6_case_2 x1 x2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_updatePropertyFile'46_'35lambda6_case_2(x1)(x2)(x3)(x4)(x)(st))(i)(xs)(st)+c_updatePropertyFile'46_'35lambda6_case_2 x1 x2 x3 x4 x st = Curry.RunTimeSystem.patternFail("PropertyFile.updatePropertyFile._#lambda6_case_2")(x)++++c_readPropertyFile'46splitEqs'463_case_4 x2 x3 (Curry.Module.Prelude.T2 x4 x5) st = Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463_case_3(x3)(x4)(x5)(st)+c_readPropertyFile'46splitEqs'463_case_4 x2 x3 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463_case_4(x2)(x3)(x)(st))(i)(xs)(st)+c_readPropertyFile'46splitEqs'463_case_4 x2 x3 x st = Curry.RunTimeSystem.patternFail("PropertyFile.readPropertyFile.splitEqs.3_case_4")(x)++++c_readPropertyFile'46splitEqs'463_case_3 x3 x4 x5@((Curry.Module.Prelude.:<) x6 x7) st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x4)(x7))(Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463(x3)(st))+c_readPropertyFile'46splitEqs'463_case_3 x3 x4 x5@Curry.Module.Prelude.List st = Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463(x3)(st)+c_readPropertyFile'46splitEqs'463_case_3 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.PropertyFile.c_readPropertyFile'46splitEqs'463_case_3(x3)(x4)(x)(st))(i)(xs)(st)+c_readPropertyFile'46splitEqs'463_case_3 x3 x4 x st = Curry.RunTimeSystem.patternFail("PropertyFile.readPropertyFile.splitEqs.3_case_3")(x)++
+ dist/build/Curry/Module/Random.hs view
@@ -0,0 +1,228 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Random (module Curry.Module.Random) where++import Curry.RunTimeSystem+import Curry.Module.Prelude+import Curry.Module.System+import Curry.Module.Time++++-- begin included++++-- end included++c_multiplier :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_multiplier st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))))))))))))))))))))))))))))))++++c_addend :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addend st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))++++c_powermask :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_powermask st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))++++c_mask :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_mask st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))))))))))))))))))))))))))))))))))))))))))))++++c_intsize :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_intsize st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))++++c_intspan :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_intspan st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))))))))))))))))))))))))))))++++c_intlimit :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_intlimit st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))++++c_sequence :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_sequence x1 st = let {x2 = Curry.Module.Random.c_nextseed(x1)(st)} in (Curry.Module.Prelude.:<)(x2)(Curry.Module.Random.c_sequence(x2)(st))++++c_nextseed :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_nextseed x1 st = Curry.Module.Prelude.c_mod(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))))))))))))))))))(st)++++c_xor :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_xor x1 x2 st = Curry.Module.Random.c_xor_case_6(x1)(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Zero)(st))(st))(st)++++c_power :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_power x1 x2 st = Curry.Module.Random.c_power'46binary'4643(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(x1)(x2)(st)++++c_power'46binary'4643 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_power'46binary'4643 x1 x2 x3 st = Curry.Module.Random.c_power'46binary'4643_case_4(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x3)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_nextIntBits :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_nextIntBits x1 x2 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Random.c_nextIntBits'46adjust'4653(Curry.Module.Random.c_power(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.Prelude.op_45(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))(x2)(st))(st))))(Curry.Module.Random.c_sequence(Curry.Module.Prelude.c_mod(Curry.Module.Random.c_xor(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))))))))))))))))))(st))(st))(st)++++c_nextIntBits'46adjust'4653 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_nextIntBits'46adjust'4653 x1 x2 st = let {x3 = Curry.Module.Prelude.c_mod(Curry.Module.Prelude.c_div(x2)(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))(st)} in Curry.Module.Random.c_nextIntBits'46adjust'4653_case_2(x3)(Curry.Module.Prelude.op_62(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))))))))))))))))))))))))))))(st))(st)++++c_nextInt :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_nextInt x1 st = Curry.Module.Random.c_nextIntBits(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))(st)++++c_nextIntRange :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_nextIntRange x1 x2 st = let {x3 = Curry.Module.Random.c_nextIntBits(x1)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)} in Curry.Module.Random.c_nextIntRange_case_1(x2)(x3)(Curry.Module.Prelude.op_62(x2)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_nextIntRange'46adjust_a'4664 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_nextIntRange'46adjust_a'4664 x1 x2 st = Curry.Module.Prelude.c_div(Curry.Module.Prelude.op_42(x1)(x2)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))))))))))))))))))))))))))))))(st)++++c_nextIntRange'46adjust_b'4664 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_nextIntRange'46adjust_b'4664 x1 x2 st = Curry.Module.Prelude.c_mod(x2)(x1)(st)++++c_nextIntRange'46adjust_c'4664 :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_nextIntRange'46adjust_c'4664 x1 x2 st = Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(x2)(Curry.Module.Prelude.c_mod(x2)(x1)(st))(st))(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(Curry.Module.Prelude.C_Zero)(st)++++c_nextIntRange'46power_of_2'4664 :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_nextIntRange'46power_of_2'4664 x1 st = Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Random.c_nextIntRange'46power_of_2'4664(Curry.Module.Prelude.c_div(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(st))(st)++++c_nextBoolean :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Bool+c_nextBoolean x1 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(Curry.Module.Prelude.C_Zero)))(Curry.Module.Random.c_nextIntBits(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)++++c_getRandomSeed :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getRandomSeed st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Time.c_getClockTime(st))(Curry.Module.Prelude.pf(Curry.Module.Random.c_getRandomSeed'46_'35lambda2))(st)++++c_getRandomSeed'46_'35lambda2 :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2 x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.System.c_getCPUTime(st))(Curry.Module.Prelude.pf(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3(x1)))(st)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3 :: Curry.Module.Time.C_ClockTime -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3 x1 x2 st = let {x3 = Curry.Module.Time.c_toUTCTime(x1)(st)} in Curry.Module.Prelude.c_return(Curry.Module.Prelude.c_mod(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_43(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP3'35y(x3)(st))(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP4'35mo(x3)(st))(st))(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP5'35d(x3)(st))(st))(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP6'35h(x3)(st))(st))(Curry.Module.Prelude.op_42(Curry.Module.Prelude.op_42(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP7'35m(x3)(st))(Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP8'35s(x3)(st))(st))(x2)(st))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))))))))))))))))))(st))(st)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP3'35y :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP3'35y x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x2+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP3'35y (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP3'35y(x)(st))(i)(xs)(st)+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP3'35y x st = Curry.RunTimeSystem.patternFail("Random.getRandomSeed._#lambda2._#lambda3._#selFP3#y")(x)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP4'35mo :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP4'35mo x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x3+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP4'35mo (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP4'35mo(x)(st))(i)(xs)(st)+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP4'35mo x st = Curry.RunTimeSystem.patternFail("Random.getRandomSeed._#lambda2._#lambda3._#selFP4#mo")(x)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP5'35d :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP5'35d x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x4+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP5'35d (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP5'35d(x)(st))(i)(xs)(st)+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP5'35d x st = Curry.RunTimeSystem.patternFail("Random.getRandomSeed._#lambda2._#lambda3._#selFP5#d")(x)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP6'35h :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP6'35h x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x5+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP6'35h (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP6'35h(x)(st))(i)(xs)(st)+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP6'35h x st = Curry.RunTimeSystem.patternFail("Random.getRandomSeed._#lambda2._#lambda3._#selFP6#h")(x)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP7'35m :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP7'35m x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x6+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP7'35m (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP7'35m(x)(st))(i)(xs)(st)+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP7'35m x st = Curry.RunTimeSystem.patternFail("Random.getRandomSeed._#lambda2._#lambda3._#selFP7#m")(x)++++c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP8'35s :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP8'35s x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x7+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP8'35s (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP8'35s(x)(st))(i)(xs)(st)+c_getRandomSeed'46_'35lambda2'46_'35lambda3'46_'35selFP8'35s x st = Curry.RunTimeSystem.patternFail("Random.getRandomSeed._#lambda2._#lambda3._#selFP8#s")(x)++++c_nextIntRange_case_1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Random.c_nextIntRange_case_0(x2)(x3)(Curry.Module.Random.c_nextIntRange'46power_of_2'4664(x2)(st))(st)+c_nextIntRange_case_1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_nextIntRange_case_1(x2)(x3)(x)(st))(i)(xs)(st)+c_nextIntRange_case_1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Random.nextIntRange_case_1")(x)++++c_nextIntRange_case_0 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Random.c_nextIntRange'46adjust_a'4664(x2)))(x3)(st)+c_nextIntRange_case_0 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Random.c_nextIntRange'46adjust_b'4664(x2)))(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.pf(Curry.Module.Random.c_nextIntRange'46adjust_c'4664(x2)))(x3)(st))(st)+c_nextIntRange_case_0 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_nextIntRange_case_0(x2)(x3)(x)(st))(i)(xs)(st)+c_nextIntRange_case_0 x2 x3 x st = Curry.RunTimeSystem.patternFail("Random.nextIntRange_case_0")(x)++++c_nextIntBits'46adjust'4653_case_2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_45(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))))))))))))))))))(st)+c_nextIntBits'46adjust'4653_case_2 x3 x4@Curry.Module.Prelude.C_False st = x3+c_nextIntBits'46adjust'4653_case_2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_nextIntBits'46adjust'4653_case_2(x3)(x)(st))(i)(xs)(st)+c_nextIntBits'46adjust'4653_case_2 x3 x st = Curry.RunTimeSystem.patternFail("Random.nextIntBits.adjust.53_case_2")(x)++++c_power'46binary'4643_case_4 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x1+c_power'46binary'4643_case_4 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Random.c_power'46binary'4643(Curry.Module.Prelude.op_42(x1)(Curry.Module.Random.c_power'46binary'4643_case_3(x2)(x3)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(st))(Curry.Module.Prelude.op_42(x2)(x2)(st))(Curry.Module.Prelude.c_div(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st)+c_power'46binary'4643_case_4 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_power'46binary'4643_case_4(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_power'46binary'4643_case_4 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("Random.power.binary.43_case_4")(x)++++c_power'46binary'4643_case_3 x2 x3 x4@Curry.Module.Prelude.C_True st = x2+c_power'46binary'4643_case_3 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_power'46binary'4643_case_3 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_power'46binary'4643_case_3(x2)(x3)(x)(st))(i)(xs)(st)+c_power'46binary'4643_case_3 x2 x3 x st = Curry.RunTimeSystem.patternFail("Random.power.binary.43_case_3")(x)++++c_xor_case_6 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_xor_case_6 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.op_43(Curry.Module.Random.c_xor_case_5(x1)(x2)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(Curry.Module.Prelude.op_42(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(Curry.Module.Random.c_xor(Curry.Module.Prelude.c_div(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(Curry.Module.Prelude.c_div(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st))(st))(st)+c_xor_case_6 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_xor_case_6(x1)(x2)(x)(st))(i)(xs)(st)+c_xor_case_6 x1 x2 x st = Curry.RunTimeSystem.patternFail("Random.xor_case_6")(x)++++c_xor_case_5 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Zero+c_xor_case_5 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi)+c_xor_case_5 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Random.c_xor_case_5(x1)(x2)(x)(st))(i)(xs)(st)+c_xor_case_5 x1 x2 x st = Curry.RunTimeSystem.patternFail("Random.xor_case_5")(x)++
+ dist/build/Curry/Module/RandomExternal.hs view
@@ -0,0 +1,95 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.RandomExternal (module Curry.Module.RandomExternal) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++import System.Random++prim_split :: C_Int -> Result (T2 C_Int C_Int)+prim_split seed _ = toCurry (fst (next g1), fst (next g2))+ where+  (g1,g2) = split (mkStdGen (fromCurry seed))++prim_nextInt :: C_Int -> Result (List C_Int)+prim_nextInt seed _ = toCurry (nextInt (fromCurry seed))++nextInt :: Int -> [Int]+nextInt = randoms . mkStdGen++prim_nextIntRange :: C_Int -> C_Int -> Result (List C_Int)+prim_nextIntRange seed bound _ =+  toCurry (nextIntRange (fromCurry seed) (fromCurry bound))++nextIntRange :: Int -> Int -> [Int]+nextIntRange seed bound = randomRs (0,bound) (mkStdGen seed)++getRandomSeed :: Result (C_IO C_Int)+getRandomSeed = ioFunc0 (getStdRandom next)++++-- end included++c_split :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_split x1 st = let {x2 = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.RandomExternal.c_prim_split))(x1)(st)} in (Curry.Module.Prelude.:<)(Curry.Module.RandomExternal.c_split'46_'35selFP3'35s1(x2)(st))(Curry.Module.RandomExternal.c_split(Curry.Module.RandomExternal.c_split'46_'35selFP4'35s2(x2)(st))(st))++++c_split'46_'35selFP3'35s1 :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_split'46_'35selFP3'35s1 x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_split'46_'35selFP3'35s1 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RandomExternal.c_split'46_'35selFP3'35s1(x)(st))(i)(xs)(st)+c_split'46_'35selFP3'35s1 x st = Curry.RunTimeSystem.patternFail("RandomExternal.split._#selFP3#s1")(x)++++c_split'46_'35selFP4'35s2 :: (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_split'46_'35selFP4'35s2 x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_split'46_'35selFP4'35s2 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RandomExternal.c_split'46_'35selFP4'35s2(x)(st))(i)(xs)(st)+c_split'46_'35selFP4'35s2 x st = Curry.RunTimeSystem.patternFail("RandomExternal.split._#selFP4#s2")(x)++++c_nextInt :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_nextInt x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.RandomExternal.c_prim_nextInt))(x1)(st)++++c_nextIntRange :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_nextIntRange x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.RandomExternal.c_prim_nextIntRange))(x1)(st))(x2)(st)++++c_nextBoolean :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Bool+c_nextBoolean x1 st = Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.C_Zero)))(Curry.Module.RandomExternal.c_nextIntRange(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)++++c_prim_split :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int+c_prim_split x1 st = Curry.Module.RandomExternal.prim_split(x1)(st)++++c_prim_nextInt :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_prim_nextInt x1 st = Curry.Module.RandomExternal.prim_nextInt(x1)(st)++++c_prim_nextIntRange :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Int+c_prim_nextIntRange x1 x2 st = Curry.Module.RandomExternal.prim_nextIntRange(x1)(x2)(st)++++c_getRandomSeed :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getRandomSeed st = Curry.Module.RandomExternal.getRandomSeed(st)++
+ dist/build/Curry/Module/Read.hs view
@@ -0,0 +1,111 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Read (module Curry.Module.Read) where++import Curry.RunTimeSystem+import Curry.Module.Char+import Curry.Module.Prelude++++-- begin included++++-- end included++c_readNat :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readNat x1 st = Curry.Module.Read.c_readNat'46readNatPrefix'463(Curry.Module.Prelude.c_dropWhile(Curry.Module.Prelude.pf(Curry.Module.Read.c_readNat'46_'35lambda2))(x1)(st))(Curry.Module.Prelude.C_Zero)(st)++++c_readNat'46readNatPrefix'463 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readNat'46readNatPrefix'463 x1@Curry.Module.Prelude.List x2 st = x2+c_readNat'46readNatPrefix'463 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = let {x5 = Curry.Module.Prelude.c_ord(x3)(st)} in Curry.Module.Read.c_readNat'46readNatPrefix'463_case_4(x2)(x4)(x5)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(x5)(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(st))(Curry.Module.Prelude.op_60_61(x5)(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('9'))(st))(st))(st))(st)+c_readNat'46readNatPrefix'463 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readNat'46readNatPrefix'463(x)(x2)(st))(i)(xs)(st)+c_readNat'46readNatPrefix'463 x x2 st = Curry.RunTimeSystem.patternFail("Read.readNat.readNatPrefix.3")(x)++++c_readNat'46_'35lambda2 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_readNat'46_'35lambda2 x1 st = Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char(' '))(st)++++c_readInt :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readInt x1 st = Curry.Module.Read.c_readInt'46readIntPrefix'4614(Curry.Module.Prelude.c_dropWhile(Curry.Module.Prelude.pf(Curry.Module.Read.c_readInt'46_'35lambda3))(x1)(st))(st)++++c_readInt'46readIntPrefix'4614 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readInt'46readIntPrefix'4614 x1@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_Zero+c_readInt'46readIntPrefix'4614 x1@((Curry.Module.Prelude.:<) x2 x3) st = Curry.Module.Read.c_readInt'46readIntPrefix'4614_case_3(x2)(x3)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.Prelude.C_Char('-'))(st))(st)+c_readInt'46readIntPrefix'4614 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readInt'46readIntPrefix'4614(x)(st))(i)(xs)(st)+c_readInt'46readIntPrefix'4614 x st = Curry.RunTimeSystem.patternFail("Read.readInt.readIntPrefix.14")(x)++++c_readInt'46_'35lambda3 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_readInt'46_'35lambda3 x1 st = Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char(' '))(st)++++c_readHex :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readHex x1 st = Curry.Module.Read.c_readHex'46readHexPrefix'4622(Curry.Module.Prelude.c_dropWhile(Curry.Module.Prelude.pf(Curry.Module.Read.c_readHex'46_'35lambda4))(x1)(st))(Curry.Module.Prelude.C_Zero)(st)++++c_readHex'46hex2int'4622 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readHex'46hex2int'4622 x1 st = Curry.Module.Read.c_readHex'46hex2int'4622_case_2(x1)(Curry.Module.Char.c_isDigit(x1)(st))(st)++++c_readHex'46readHexPrefix'4622 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_readHex'46readHexPrefix'4622 x1@Curry.Module.Prelude.List x2 st = x2+c_readHex'46readHexPrefix'4622 x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = let {x5 = Curry.Module.Read.c_readHex'46hex2int'4622(x3)(st)} in Curry.Module.Read.c_readHex'46readHexPrefix'4622_case_0(x2)(x4)(x5)(Curry.Module.Prelude.op_62_61(x5)(Curry.Module.Prelude.C_Zero)(st))(st)+c_readHex'46readHexPrefix'4622 (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readHex'46readHexPrefix'4622(x)(x2)(st))(i)(xs)(st)+c_readHex'46readHexPrefix'4622 x x2 st = Curry.RunTimeSystem.patternFail("Read.readHex.readHexPrefix.22")(x)++++c_readHex'46_'35lambda4 :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_readHex'46_'35lambda4 x1 st = Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Char(' '))(st)++++c_readHex'46readHexPrefix'4622_case_0 x2 x4 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.Read.c_readHex'46readHexPrefix'4622(x4)(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st))(x5)(st))(st)+c_readHex'46readHexPrefix'4622_case_0 x2 x4 x5 x6@Curry.Module.Prelude.C_False st = x2+c_readHex'46readHexPrefix'4622_case_0 x2 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readHex'46readHexPrefix'4622_case_0(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_readHex'46readHexPrefix'4622_case_0 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("Read.readHex.readHexPrefix.22_case_0")(x)++++c_readHex'46hex2int'4622_case_2 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(st)+c_readHex'46hex2int'4622_case_2 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Read.c_readHex'46hex2int'4622_case_1(x1)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('F'))(st))(st))(st))(st)+c_readHex'46hex2int'4622_case_2 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readHex'46hex2int'4622_case_2(x1)(x)(st))(i)(xs)(st)+c_readHex'46hex2int'4622_case_2 x1 x st = Curry.RunTimeSystem.patternFail("Read.readHex.hex2int.22_case_2")(x)++++c_readHex'46hex2int'4622_case_1 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st)+c_readHex'46hex2int'4622_case_1 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_negate(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st)+c_readHex'46hex2int'4622_case_1 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readHex'46hex2int'4622_case_1(x1)(x)(st))(i)(xs)(st)+c_readHex'46hex2int'4622_case_1 x1 x st = Curry.RunTimeSystem.patternFail("Read.readHex.hex2int.22_case_1")(x)++++c_readInt'46readIntPrefix'4614_case_3 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_negate(Curry.Module.Read.c_readNat(x3)(st))(st)+c_readInt'46readIntPrefix'4614_case_3 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.Read.c_readNat((Curry.Module.Prelude.:<)(x2)(x3))(st)+c_readInt'46readIntPrefix'4614_case_3 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readInt'46readIntPrefix'4614_case_3(x2)(x3)(x)(st))(i)(xs)(st)+c_readInt'46readIntPrefix'4614_case_3 x2 x3 x st = Curry.RunTimeSystem.patternFail("Read.readInt.readIntPrefix.14_case_3")(x)++++c_readNat'46readNatPrefix'463_case_4 x2 x4 x5 x6@Curry.Module.Prelude.C_True st = Curry.Module.Read.c_readNat'46readNatPrefix'463(x4)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_42(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(x5)(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(st))(st)+c_readNat'46readNatPrefix'463_case_4 x2 x4 x5 x6@Curry.Module.Prelude.C_False st = x2+c_readNat'46readNatPrefix'463_case_4 x2 x4 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Read.c_readNat'46readNatPrefix'463_case_4(x2)(x4)(x5)(x)(st))(i)(xs)(st)+c_readNat'46readNatPrefix'463_case_4 x2 x4 x5 x st = Curry.RunTimeSystem.patternFail("Read.readNat.readNatPrefix.3_case_4")(x)++
+ dist/build/Curry/Module/ReadShowTerm.hs view
@@ -0,0 +1,205 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.ReadShowTerm (module Curry.Module.ReadShowTerm) where++import Curry.RunTimeSystem+import Curry.Module.Char+import Curry.Module.Prelude++++-- begin included++++import Data.Char++prim_showTerm :: Curry t0 => t0 -> Result (List C_Char)+prim_showTerm = prim_show ++--because of type classes there is no need to qualify in kics+prim_showQTerm :: Curry t0 => t0 -> Result (List C_Char)+prim_showQTerm x _ = toCurry (showQ 0 x [])++prim_readsUnqualifiedTerm :: Curry t0 => +   List C_String -> C_String -> Result (List (T2 t0 C_String))+prim_readsUnqualifiedTerm _ x _ = +  fromHaskellList $ map (\ (x,y) -> T2 x (toCurry y)) $ reads $ fromCurry x++prim_readsQTerm :: Curry t0 => C_String -> Result (List (T2 t0 C_String))+prim_readsQTerm = prim_readsUnqualifiedTerm List  ++++-- end included++c_showTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showTerm x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_prim_showTerm))(x1)(st)++++c_showQTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showQTerm x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_prim_showQTerm))(x1)(st)++++c_readsUnqualifiedTerm :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsUnqualifiedTerm x1@Curry.Module.Prelude.List x2 st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(st)+c_readsUnqualifiedTerm x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.ReadShowTerm.c_readsUnqualifiedTermWithPrefixes((Curry.Module.Prelude.:<)(x3)(x4))(x2)(st)+c_readsUnqualifiedTerm (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readsUnqualifiedTerm(x)(x2)(st))(i)(xs)(st)+c_readsUnqualifiedTerm x x2 st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readsUnqualifiedTerm")(x)++++c_readsUnqualifiedTermWithPrefixes :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsUnqualifiedTermWithPrefixes x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.ReadShowTerm.c_prim_readsUnqualifiedTerm))(x1)(st))(x2)(st)++++c_readUnqualifiedTerm :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_readUnqualifiedTerm x1 x2 st = Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_11(x1)(x2)(Curry.Module.ReadShowTerm.c_readsUnqualifiedTerm(x1)(x2)(st))(st)++++c_readsTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsTerm x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_prim_readsUnqualifiedTerm(Curry.Module.Prelude.List)))(x1)(st)++++c_readTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_readTerm x1 st = Curry.Module.ReadShowTerm.c_readTerm_case_7(x1)(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_prim_readsUnqualifiedTerm(Curry.Module.Prelude.List)))(x1)(st))(st)++++c_readsQTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsQTerm x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_prim_readsQTerm))(x1)(st)++++c_readQTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_readQTerm x1 st = Curry.Module.ReadShowTerm.c_readQTerm_case_3(x1)(Curry.Module.ReadShowTerm.c_readsQTerm(x1)(st))(st)++++c_readQTermFile :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_readQTermFile x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_readFile(x1)(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_readQTerm))(st))(st)++++c_readQTermListFile :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t0)+c_readQTermListFile x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_readFile(x1)(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_readQTerm))))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_lines))(st))(st))(st)++++c_writeQTermFile :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeQTermFile x1 x2 st = Curry.Module.Prelude.c_writeFile(x1)(Curry.Module.ReadShowTerm.c_showQTerm(x2)(st))(st)++++c_writeQTermListFile :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_writeQTermListFile x1 x2 st = Curry.Module.Prelude.c_writeFile(x1)(Curry.Module.Prelude.c_unlines(Curry.Module.Prelude.c_map(Curry.Module.Prelude.pf(Curry.Module.ReadShowTerm.c_showQTerm))(x2)(st))(st))(st)++++c_readQTerm_case_3 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.ReadShowTerm.c_readQTerm_case_2(x4)(x3)(st)+c_readQTerm_case_3 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('Q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))(st)+c_readQTerm_case_3 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readQTerm_case_3(x1)(x)(st))(i)(xs)(st)+c_readQTerm_case_3 x1 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readQTerm_case_3")(x)++++c_readQTerm_case_2 x4 x3@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.ReadShowTerm.c_readQTerm_case_1(x5)(x6)(x4)(st)+c_readQTerm_case_2 x4 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readQTerm_case_2(x4)(x)(st))(i)(xs)(st)+c_readQTerm_case_2 x4 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readQTerm_case_2")(x)++++c_readQTerm_case_1 x5 x6 x4@Curry.Module.Prelude.List st = Curry.Module.ReadShowTerm.c_readQTerm_case_0(x5)(x6)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_all(Curry.Module.Prelude.pf(Curry.Module.Char.c_isSpace))(st))(x6)(st))(st)+c_readQTerm_case_1 x5 x6 x4@((Curry.Module.Prelude.:<) x7 x8) st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('Q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))(st)+c_readQTerm_case_1 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readQTerm_case_1(x5)(x6)(x)(st))(i)(xs)(st)+c_readQTerm_case_1 x5 x6 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readQTerm_case_1")(x)++++c_readQTerm_case_0 x5 x6 x7@Curry.Module.Prelude.C_True st = x5+c_readQTerm_case_0 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('Q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))(st)+c_readQTerm_case_0 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readQTerm_case_0(x5)(x6)(x)(st))(i)(xs)(st)+c_readQTerm_case_0 x5 x6 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readQTerm_case_0")(x)++++c_readTerm_case_7 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.ReadShowTerm.c_readTerm_case_6(x4)(x3)(st)+c_readTerm_case_7 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_error))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(Curry.Module.Prelude.c_take(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(x1)(st))(st))(st)+c_readTerm_case_7 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readTerm_case_7(x1)(x)(st))(i)(xs)(st)+c_readTerm_case_7 x1 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readTerm_case_7")(x)++++c_readTerm_case_6 x4 x3@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.ReadShowTerm.c_readTerm_case_5(x5)(x6)(x4)(st)+c_readTerm_case_6 x4 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readTerm_case_6(x4)(x)(st))(i)(xs)(st)+c_readTerm_case_6 x4 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readTerm_case_6")(x)++++c_readTerm_case_5 x5 x6 x4@Curry.Module.Prelude.List st = Curry.Module.ReadShowTerm.c_readTerm_case_4(x5)(x6)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_all(Curry.Module.Prelude.pf(Curry.Module.Char.c_isSpace))(st))(x6)(st))(st)+c_readTerm_case_5 x5 x6 x4@((Curry.Module.Prelude.:<) x7 x8) st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))(st)+c_readTerm_case_5 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readTerm_case_5(x5)(x6)(x)(st))(i)(xs)(st)+c_readTerm_case_5 x5 x6 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readTerm_case_5")(x)++++c_readTerm_case_4 x5 x6 x7@Curry.Module.Prelude.C_True st = x5+c_readTerm_case_4 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(x6)(st))(st)+c_readTerm_case_4 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readTerm_case_4(x5)(x6)(x)(st))(i)(xs)(st)+c_readTerm_case_4 x5 x6 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readTerm_case_4")(x)++++c_readUnqualifiedTerm_case_11 x1 x2 ((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_10(x4)(x3)(st)+c_readUnqualifiedTerm_case_11 x1 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))(st)+c_readUnqualifiedTerm_case_11 x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_11(x1)(x2)(x)(st))(i)(xs)(st)+c_readUnqualifiedTerm_case_11 x1 x2 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readUnqualifiedTerm_case_11")(x)++++c_readUnqualifiedTerm_case_10 x4 x3@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_9(x5)(x6)(x4)(st)+c_readUnqualifiedTerm_case_10 x4 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_10(x4)(x)(st))(i)(xs)(st)+c_readUnqualifiedTerm_case_10 x4 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readUnqualifiedTerm_case_10")(x)++++c_readUnqualifiedTerm_case_9 x5 x6 x4@Curry.Module.Prelude.List st = Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_8(x5)(x6)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_all(Curry.Module.Prelude.pf(Curry.Module.Char.c_isSpace))(st))(x6)(st))(st)+c_readUnqualifiedTerm_case_9 x5 x6 x4@((Curry.Module.Prelude.:<) x7 x8) st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))))))))))))(st)+c_readUnqualifiedTerm_case_9 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_9(x5)(x6)(x)(st))(i)(xs)(st)+c_readUnqualifiedTerm_case_9 x5 x6 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readUnqualifiedTerm_case_9")(x)++++c_readUnqualifiedTerm_case_8 x5 x6 x7@Curry.Module.Prelude.C_True st = x5+c_readUnqualifiedTerm_case_8 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(x6)(st))(st)+c_readUnqualifiedTerm_case_8 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.ReadShowTerm.c_readUnqualifiedTerm_case_8(x5)(x6)(x)(st))(i)(xs)(st)+c_readUnqualifiedTerm_case_8 x5 x6 x st = Curry.RunTimeSystem.patternFail("ReadShowTerm.readUnqualifiedTerm_case_8")(x)++++c_prim_showTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_prim_showTerm x1 st = Curry.Module.ReadShowTerm.prim_showTerm(x1)(st)++++c_prim_showQTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_prim_showQTerm x1 st = Curry.Module.ReadShowTerm.prim_showQTerm(x1)(st)++++c_prim_readsUnqualifiedTerm :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_prim_readsUnqualifiedTerm x1 x2 st = Curry.Module.ReadShowTerm.prim_readsUnqualifiedTerm(x1)(x2)(st)++++c_prim_readsQTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_prim_readsQTerm x1 st = Curry.Module.ReadShowTerm.prim_readsQTerm(x1)(st)++
+ dist/build/Curry/Module/RedBlackTree.hs view
@@ -0,0 +1,2159 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.RedBlackTree (module Curry.Module.RedBlackTree) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++data C_RedBlackTree t0 = C_RedBlackTree (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) (Curry.Module.RedBlackTree.C_Tree t0)+  | C_RedBlackTreeFail Curry.RunTimeSystem.C_Exceptions+  | C_RedBlackTreeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.RedBlackTree.C_RedBlackTree t0))++data C_Color = C_Red+  | C_Black+  | C_DoublyBlack+  | C_ColorFail Curry.RunTimeSystem.C_Exceptions+  | C_ColorOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.RedBlackTree.C_Color)++data C_Tree t0 = C_Tree Curry.Module.RedBlackTree.C_Color t0 (Curry.Module.RedBlackTree.C_Tree t0) (Curry.Module.RedBlackTree.C_Tree t0)+  | C_Empty+  | C_TreeFail Curry.RunTimeSystem.C_Exceptions+  | C_TreeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches (Curry.Module.RedBlackTree.C_Tree t0))++instance (BaseCurry t0) => BaseCurry (Curry.Module.RedBlackTree.C_RedBlackTree t0) where+  nf f (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> f(Curry.Module.RedBlackTree.C_RedBlackTree(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> f(Curry.Module.RedBlackTree.C_RedBlackTree(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.RedBlackTree.C_RedBlackTreeOr(Curry.RunTimeSystem.mkRef(r)(4)(i))([Curry.Module.RedBlackTree.C_RedBlackTree(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(4)++  failed  = Curry.Module.RedBlackTree.C_RedBlackTreeFail++  branching  = Curry.Module.RedBlackTree.C_RedBlackTreeOr++  consKind (Curry.Module.RedBlackTree.C_RedBlackTreeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.RedBlackTree.C_RedBlackTreeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.RedBlackTree.C_RedBlackTreeFail x) = x++  orRef (Curry.Module.RedBlackTree.C_RedBlackTreeOr x _) = x++  branches (Curry.Module.RedBlackTree.C_RedBlackTreeOr _ x) = x++++++instance BaseCurry Curry.Module.RedBlackTree.C_Color where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.RedBlackTree.C_ColorOr(Curry.RunTimeSystem.mkRef(r)(0)(i))([Curry.Module.RedBlackTree.C_Red,Curry.Module.RedBlackTree.C_Black,Curry.Module.RedBlackTree.C_DoublyBlack]))(0)++  failed  = Curry.Module.RedBlackTree.C_ColorFail++  branching  = Curry.Module.RedBlackTree.C_ColorOr++  consKind (Curry.Module.RedBlackTree.C_ColorOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.RedBlackTree.C_ColorFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.RedBlackTree.C_ColorFail x) = x++  orRef (Curry.Module.RedBlackTree.C_ColorOr x _) = x++  branches (Curry.Module.RedBlackTree.C_ColorOr _ x) = x++++++instance (BaseCurry t0) => BaseCurry (Curry.Module.RedBlackTree.C_Tree t0) where+  nf f (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> f(Curry.Module.RedBlackTree.C_Tree(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> f(Curry.Module.RedBlackTree.C_Tree(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.RedBlackTree.C_TreeOr(Curry.RunTimeSystem.mkRef(r)(4)(i))([Curry.Module.RedBlackTree.C_Tree(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int)))),Curry.Module.RedBlackTree.C_Empty]))(4)++  failed  = Curry.Module.RedBlackTree.C_TreeFail++  branching  = Curry.Module.RedBlackTree.C_TreeOr++  consKind (Curry.Module.RedBlackTree.C_TreeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.RedBlackTree.C_TreeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.RedBlackTree.C_TreeFail x) = x++  orRef (Curry.Module.RedBlackTree.C_TreeOr x _) = x++  branches (Curry.Module.RedBlackTree.C_TreeOr _ x) = x++++++instance (Curry t0) => Curry (Curry.Module.RedBlackTree.C_RedBlackTree t0) where+  strEq (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) (Curry.Module.RedBlackTree.C_RedBlackTree y1 y2 y3 y4) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) (Curry.Module.RedBlackTree.C_RedBlackTree y1 y2 y3 y4) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.genEq(x4)(y4)(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) st = Curry.Module.RedBlackTree.C_RedBlackTree(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))++  foldCurry f c (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) st = f(x1)(f(x2)(f(x3)(f(x4)(c)(st))(st))(st))(st)++  typeName _ = "RedBlackTree"++  showQ d (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("RedBlackTree.RedBlackTree "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x4))))))))+++  showQ _ (Curry.Module.RedBlackTree.C_RedBlackTreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.RedBlackTree.C_Color where+  strEq Curry.Module.RedBlackTree.C_Red Curry.Module.RedBlackTree.C_Red st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.RedBlackTree.C_Black Curry.Module.RedBlackTree.C_Black st = Curry.Module.Prelude.strEqSuccess+  strEq Curry.Module.RedBlackTree.C_DoublyBlack Curry.Module.RedBlackTree.C_DoublyBlack st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq Curry.Module.RedBlackTree.C_Red Curry.Module.RedBlackTree.C_Red st = Curry.Module.Prelude.C_True+  eq Curry.Module.RedBlackTree.C_Black Curry.Module.RedBlackTree.C_Black st = Curry.Module.Prelude.C_True+  eq Curry.Module.RedBlackTree.C_DoublyBlack Curry.Module.RedBlackTree.C_DoublyBlack st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f Curry.Module.RedBlackTree.C_Red st = Curry.Module.RedBlackTree.C_Red+  propagate f Curry.Module.RedBlackTree.C_Black st = Curry.Module.RedBlackTree.C_Black+  propagate f Curry.Module.RedBlackTree.C_DoublyBlack st = Curry.Module.RedBlackTree.C_DoublyBlack++  foldCurry f c Curry.Module.RedBlackTree.C_Red st = c+  foldCurry f c Curry.Module.RedBlackTree.C_Black st = c+  foldCurry f c Curry.Module.RedBlackTree.C_DoublyBlack st = c++  typeName _ = "Color"++  showQ _ Curry.Module.RedBlackTree.C_Red = Prelude.showString("RedBlackTree.Red")+  showQ _ Curry.Module.RedBlackTree.C_Black = Prelude.showString("RedBlackTree.Black")+  showQ _ Curry.Module.RedBlackTree.C_DoublyBlack = Prelude.showString("RedBlackTree.DoublyBlack")+  showQ _ (Curry.Module.RedBlackTree.C_ColorOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Curry t0) => Curry (Curry.Module.RedBlackTree.C_Tree t0) where+  strEq (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) (Curry.Module.RedBlackTree.C_Tree y1 y2 y3 y4) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(st))(st))(st)+  strEq Curry.Module.RedBlackTree.C_Empty Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.strEqSuccess+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) (Curry.Module.RedBlackTree.C_Tree y1 y2 y3 y4) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.genEq(x4)(y4)(st))(st))(st))(st)+  eq Curry.Module.RedBlackTree.C_Empty Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.C_True+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) st = Curry.Module.RedBlackTree.C_Tree(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))+  propagate f Curry.Module.RedBlackTree.C_Empty st = Curry.Module.RedBlackTree.C_Empty++  foldCurry f c (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) st = f(x1)(f(x2)(f(x3)(f(x4)(c)(st))(st))(st))(st)+  foldCurry f c Curry.Module.RedBlackTree.C_Empty st = c++  typeName _ = "Tree"++  showQ d (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("RedBlackTree.Tree "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x4))))))))+++  showQ _ Curry.Module.RedBlackTree.C_Empty = Prelude.showString("RedBlackTree.Empty")+  showQ _ (Curry.Module.RedBlackTree.C_TreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.RedBlackTree.C_RedBlackTree t0) where+  showsPrec d (Curry.Module.RedBlackTree.C_RedBlackTree x1 x2 x3 x4) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("RedBlackTree "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x4))))))))+++  showsPrec _ (Curry.Module.RedBlackTree.C_RedBlackTreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.RedBlackTree.C_Color where+  showsPrec _ Curry.Module.RedBlackTree.C_Red = Prelude.showString("Red")+  showsPrec _ Curry.Module.RedBlackTree.C_Black = Prelude.showString("Black")+  showsPrec _ Curry.Module.RedBlackTree.C_DoublyBlack = Prelude.showString("DoublyBlack")+  showsPrec _ (Curry.Module.RedBlackTree.C_ColorOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Show t0) => Show (Curry.Module.RedBlackTree.C_Tree t0) where+  showsPrec d (Curry.Module.RedBlackTree.C_Tree x1 x2 x3 x4) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Tree "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x4))))))))+++  showsPrec _ Curry.Module.RedBlackTree.C_Empty = Prelude.showString("Empty")+  showsPrec _ (Curry.Module.RedBlackTree.C_TreeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance (Read t0) => Read (Curry.Module.RedBlackTree.C_RedBlackTree t0) where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.RedBlackTree.C_RedBlackTree(x1)(x2)(x3)(x4))(r4) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("RedBlackTree")("RedBlackTree")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2), ((,) x4 r4) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r3)])(r)++++++instance Read Curry.Module.RedBlackTree.C_Color where+  readsPrec d r = (Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.RedBlackTree.C_Red)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("RedBlackTree")("Red")(r)])(r))((Prelude.++)(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.RedBlackTree.C_Black)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("RedBlackTree")("Black")(r)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.RedBlackTree.C_DoublyBlack)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("RedBlackTree")("DoublyBlack")(r)])(r)))++++++instance (Read t0) => Read (Curry.Module.RedBlackTree.C_Tree t0) where+  readsPrec d r = (Prelude.++)(Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.RedBlackTree.C_Tree(x1)(x2)(x3)(x4))(r4) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("RedBlackTree")("Tree")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2), ((,) x4 r4) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r3)])(r))(Prelude.readParen(Prelude.False)(\ r -> [(,)(Curry.Module.RedBlackTree.C_Empty)(r0) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("RedBlackTree")("Empty")(r)])(r))++++++c_empty :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_empty x1 x2 x3 st = Curry.Module.RedBlackTree.C_RedBlackTree(x1)(x2)(x3)(Curry.Module.RedBlackTree.C_Empty)++++c_isEmpty :: (Curry t0) => (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isEmpty x1@(Curry.Module.RedBlackTree.C_RedBlackTree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_isEmpty_case_177(x5)(st)+c_isEmpty (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_isEmpty(x)(st))(i)(xs)(st)+c_isEmpty x st = Curry.RunTimeSystem.patternFail("RedBlackTree.isEmpty")(x)++++c_newTreeLike :: (Curry t0) => (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_newTreeLike x1@(Curry.Module.RedBlackTree.C_RedBlackTree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.C_RedBlackTree(x2)(x3)(x4)(Curry.Module.RedBlackTree.C_Empty)+c_newTreeLike (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_newTreeLike(x)(st))(i)(xs)(st)+c_newTreeLike x st = Curry.RunTimeSystem.patternFail("RedBlackTree.newTreeLike")(x)++++c_lookup :: (Curry t0) => t0 -> (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t0+c_lookup x1 x2@(Curry.Module.RedBlackTree.C_RedBlackTree x3 x4 x5 x6) st = Curry.Module.RedBlackTree.c_lookupTree(x4)(x5)(x1)(x6)(st)+c_lookup x1 (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_lookup(x1)(x)(st))(i)(xs)(st)+c_lookup x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.lookup")(x)++++c_lookupTree :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t0+c_lookupTree x1 x2 x3 x4@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.C_Nothing+c_lookupTree x1 x2 x3 x4@(Curry.Module.RedBlackTree.C_Tree x5 x6 x7 x8) st = Curry.Module.RedBlackTree.c_lookupTree_case_176(x1)(x2)(x3)(x6)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x6)(st))(st)+c_lookupTree x1 x2 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_lookupTree(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_lookupTree x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.lookupTree")(x)++++c_update :: (Curry t0) => t0 -> (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_update x1 x2@(Curry.Module.RedBlackTree.C_RedBlackTree x3 x4 x5 x6) st = Curry.Module.RedBlackTree.C_RedBlackTree(x3)(x4)(x5)(Curry.Module.RedBlackTree.c_updateTree(x3)(x5)(x1)(x6)(st))+c_update x1 (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_update(x1)(x)(st))(i)(xs)(st)+c_update x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.update")(x)++++c_updateTree :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_updateTree x1 x2 x3 x4 st = let {x5 = Curry.Module.RedBlackTree.c_updateTree'46upd'4635(x3)(x1)(x2)(x4)(st)} in Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_updateTree'46_'35selFP3'35e2(x5)(st))(Curry.Module.RedBlackTree.c_updateTree'46_'35selFP4'35l(x5)(st))(Curry.Module.RedBlackTree.c_updateTree'46_'35selFP5'35r(x5)(st))++++c_updateTree'46upd'4635 :: (Curry t183) => t183 -> (Curry.Module.Prelude.Prim (t183 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t183 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t183 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t183 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.RedBlackTree.C_Tree t183) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t183+c_updateTree'46upd'4635 x1 x2 x3 x4@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(x1)(Curry.Module.RedBlackTree.C_Empty)(Curry.Module.RedBlackTree.C_Empty)+c_updateTree'46upd'4635 x1 x2 x3 x4@(Curry.Module.RedBlackTree.C_Tree x5 x6 x7 x8) st = Curry.Module.RedBlackTree.c_updateTree'46upd'4635_case_173(x1)(x2)(x3)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x1)(st))(x6)(st))(st)+c_updateTree'46upd'4635 x1 x2 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46upd'4635(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_updateTree'46upd'4635 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree.upd.35")(x)++++c_updateTree'46_'35selFP3'35e2 :: (Curry t183) => (Curry.Module.RedBlackTree.C_Tree t183) -> Curry.RunTimeSystem.State -> t183+c_updateTree'46_'35selFP3'35e2 x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = x3+c_updateTree'46_'35selFP3'35e2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46_'35selFP3'35e2(x)(st))(i)(xs)(st)+c_updateTree'46_'35selFP3'35e2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree._#selFP3#e2")(x)++++c_updateTree'46_'35selFP4'35l :: (Curry t183) => (Curry.Module.RedBlackTree.C_Tree t183) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t183+c_updateTree'46_'35selFP4'35l x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = x4+c_updateTree'46_'35selFP4'35l (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46_'35selFP4'35l(x)(st))(i)(xs)(st)+c_updateTree'46_'35selFP4'35l x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree._#selFP4#l")(x)++++c_updateTree'46_'35selFP5'35r :: (Curry t183) => (Curry.Module.RedBlackTree.C_Tree t183) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t183+c_updateTree'46_'35selFP5'35r x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = x5+c_updateTree'46_'35selFP5'35r (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46_'35selFP5'35r(x)(st))(i)(xs)(st)+c_updateTree'46_'35selFP5'35r x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree._#selFP5#r")(x)++++c_delete :: (Curry t0) => t0 -> (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_delete x1 x2@(Curry.Module.RedBlackTree.C_RedBlackTree x3 x4 x5 x6) st = Curry.Module.RedBlackTree.C_RedBlackTree(x3)(x4)(x5)(Curry.Module.RedBlackTree.c_delete'46blackenRoot'4644(Curry.Module.RedBlackTree.c_deleteTree(x4)(x5)(x1)(x6)(st))(st))+c_delete x1 (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_delete(x1)(x)(st))(i)(xs)(st)+c_delete x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.delete")(x)++++c_delete'46blackenRoot'4644 :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_delete'46blackenRoot'4644 x1@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.RedBlackTree.C_Empty+c_delete'46blackenRoot'4644 x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(x3)(x4)(x5)+c_delete'46blackenRoot'4644 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_delete'46blackenRoot'4644(x)(st))(i)(xs)(st)+c_delete'46blackenRoot'4644 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.delete.blackenRoot.44")(x)++++c_deleteTree :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t0 -> (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_deleteTree x1 x2 x3 x4@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.RedBlackTree.C_Empty+c_deleteTree x1 x2 x3 x4@(Curry.Module.RedBlackTree.C_Tree x5 x6 x7 x8) st = Curry.Module.RedBlackTree.c_deleteTree_case_170(x1)(x2)(x3)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x6)(st))(st)+c_deleteTree x1 x2 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_deleteTree x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree")(x)++++c_deleteTree'46addColor'4656 :: (Curry t0) => Curry.Module.RedBlackTree.C_Color -> (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_deleteTree'46addColor'4656 x1@Curry.Module.RedBlackTree.C_Red x2 st = x2+c_deleteTree'46addColor'4656 x1@Curry.Module.RedBlackTree.C_Black x2 st = Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656_case_165(x2)(st)+c_deleteTree'46addColor'4656 (Curry.Module.RedBlackTree.C_ColorOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656(x)(x2)(st))(i)(xs)(st)+c_deleteTree'46addColor'4656 x x2 st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree.addColor.56")(x)++++c_deleteTree'46rightMost'4656 :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> t0+c_deleteTree'46rightMost'4656 x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_deleteTree'46rightMost'4656_case_163(x3)(x5)(Curry.Module.Prelude.op_61_61(x5)(Curry.Module.RedBlackTree.C_Empty)(st))(st)+c_deleteTree'46rightMost'4656 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree'46rightMost'4656(x)(st))(i)(xs)(st)+c_deleteTree'46rightMost'4656 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree.rightMost.56")(x)++++c_tree2list :: (Curry t0) => (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_tree2list x1@(Curry.Module.RedBlackTree.C_RedBlackTree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_tree2listTree(x5)(st)+c_tree2list (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_tree2list(x)(st))(i)(xs)(st)+c_tree2list x st = Curry.RunTimeSystem.patternFail("RedBlackTree.tree2list")(x)++++c_tree2listTree :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_tree2listTree x1 st = Curry.Module.RedBlackTree.c_tree2listTree'46t2l'4677(x1)(Curry.Module.Prelude.List)(st)++++c_tree2listTree'46t2l'4677 :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_tree2listTree'46t2l'4677 x1@Curry.Module.RedBlackTree.C_Empty x2 st = x2+c_tree2listTree'46t2l'4677 x1@(Curry.Module.RedBlackTree.C_Tree x3 x4 x5 x6) x2 st = Curry.Module.RedBlackTree.c_tree2listTree'46t2l'4677(x5)((Curry.Module.Prelude.:<)(x4)(Curry.Module.RedBlackTree.c_tree2listTree'46t2l'4677(x6)(x2)(st)))(st)+c_tree2listTree'46t2l'4677 (Curry.Module.RedBlackTree.C_TreeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_tree2listTree'46t2l'4677(x)(x2)(st))(i)(xs)(st)+c_tree2listTree'46t2l'4677 x x2 st = Curry.RunTimeSystem.patternFail("RedBlackTree.tree2listTree.t2l.77")(x)++++c_sort :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_sort x1 x2 st = Curry.Module.RedBlackTree.c_tree2list(Curry.Module.Prelude.c_foldr(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.RedBlackTree.c_update))(Curry.Module.RedBlackTree.c_empty(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.RedBlackTree.c_sort'46_'35lambda2))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(x1)(st))(x2)(st))(st)++++c_sort'46_'35lambda2 :: (Curry t520) => t520 -> t520 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_sort'46_'35lambda2 x1 x2 st = Curry.Module.Prelude.C_False++++c_setInsertEquivalence :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_setInsertEquivalence x1 x2@(Curry.Module.RedBlackTree.C_RedBlackTree x3 x4 x5 x6) st = Curry.Module.RedBlackTree.C_RedBlackTree(x1)(x4)(x5)(x6)+c_setInsertEquivalence x1 (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_setInsertEquivalence(x1)(x)(st))(i)(xs)(st)+c_setInsertEquivalence x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.setInsertEquivalence")(x)++++c_rbt :: (Curry t0) => (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_rbt x1@(Curry.Module.RedBlackTree.C_RedBlackTree x2 x3 x4 x5) st = x5+c_rbt (Curry.Module.RedBlackTree.C_RedBlackTreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_rbt(x)(st))(i)(xs)(st)+c_rbt x st = Curry.RunTimeSystem.patternFail("RedBlackTree.rbt")(x)++++c_isBlack :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isBlack x1@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.C_True+c_isBlack x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.Prelude.op_61_61(x2)(Curry.Module.RedBlackTree.C_Black)(st)+c_isBlack (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_isBlack(x)(st))(i)(xs)(st)+c_isBlack x st = Curry.RunTimeSystem.patternFail("RedBlackTree.isBlack")(x)++++c_isRed :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isRed x1@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.C_False+c_isRed x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.Prelude.op_61_61(x2)(Curry.Module.RedBlackTree.C_Red)(st)+c_isRed (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_isRed(x)(st))(i)(xs)(st)+c_isRed x st = Curry.RunTimeSystem.patternFail("RedBlackTree.isRed")(x)++++c_isDoublyBlack :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isDoublyBlack x1@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.C_True+c_isDoublyBlack x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.Prelude.op_61_61(x2)(Curry.Module.RedBlackTree.C_DoublyBlack)(st)+c_isDoublyBlack (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_isDoublyBlack(x)(st))(i)(xs)(st)+c_isDoublyBlack x st = Curry.RunTimeSystem.patternFail("RedBlackTree.isDoublyBlack")(x)++++c_element :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> t0+c_element x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = x3+c_element (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_element(x)(st))(i)(xs)(st)+c_element x st = Curry.RunTimeSystem.patternFail("RedBlackTree.element")(x)++++c_left :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_left x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = x4+c_left (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_left(x)(st))(i)(xs)(st)+c_left x st = Curry.RunTimeSystem.patternFail("RedBlackTree.left")(x)++++c_right :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_right x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = x5+c_right (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_right(x)(st))(i)(xs)(st)+c_right x st = Curry.RunTimeSystem.patternFail("RedBlackTree.right")(x)++++c_singleBlack :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_singleBlack x1@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.RedBlackTree.C_Empty+c_singleBlack x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_singleBlack_case_162(x3)(x4)(x5)(x2)(st)+c_singleBlack (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_singleBlack(x)(st))(i)(xs)(st)+c_singleBlack x st = Curry.RunTimeSystem.patternFail("RedBlackTree.singleBlack")(x)++++c_balanceL :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_balanceL x1 st = let {x2 = Curry.Module.RedBlackTree.c_left(x1)(st)} in Curry.Module.RedBlackTree.c_balanceL_case_161(x1)(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.RedBlackTree.c_isRed(x2)(st))(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_left(x2)(st))(st))(st))(st)++++c_balanceL'46_'35selFP7'35z :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> t88+c_balanceL'46_'35selFP7'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP7'35z_case_158(x3)(x4)(st)+c_balanceL'46_'35selFP7'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP7'35z(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP7'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP7#z")(x)++++c_balanceL'46_'35selFP8'35y :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> t88+c_balanceL'46_'35selFP8'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP8'35y_case_156(x4)(st)+c_balanceL'46_'35selFP8'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP8'35y(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP8'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP8#y")(x)++++c_balanceL'46_'35selFP9'35x :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> t88+c_balanceL'46_'35selFP9'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP9'35x_case_154(x4)(st)+c_balanceL'46_'35selFP9'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP9'35x(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP9'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP9#x")(x)++++c_balanceL'46_'35selFP10'35a :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP10'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP10'35a_case_152(x4)(st)+c_balanceL'46_'35selFP10'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP10'35a(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP10'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP10#a")(x)++++c_balanceL'46_'35selFP11'35b :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP11'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP11'35b_case_150(x4)(st)+c_balanceL'46_'35selFP11'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP11'35b(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP11'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP11#b")(x)++++c_balanceL'46_'35selFP12'35c :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP12'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP12'35c_case_148(x4)(st)+c_balanceL'46_'35selFP12'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP12'35c(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP12'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP12#c")(x)++++c_balanceL'46_'35selFP13'35d :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP13'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP13'35d_case_146(x5)(x4)(st)+c_balanceL'46_'35selFP13'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP13'35d(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP13'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP13#d")(x)++++c_balanceL'46_'35selFP15'35z :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> t88+c_balanceL'46_'35selFP15'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP15'35z_case_144(x3)(x4)(st)+c_balanceL'46_'35selFP15'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP15'35z(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP15'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP15#z")(x)++++c_balanceL'46_'35selFP16'35x :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> t88+c_balanceL'46_'35selFP16'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP16'35x_case_142(x4)(st)+c_balanceL'46_'35selFP16'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP16'35x(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP16'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP16#x")(x)++++c_balanceL'46_'35selFP17'35a :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP17'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP17'35a_case_140(x4)(st)+c_balanceL'46_'35selFP17'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP17'35a(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP17'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP17#a")(x)++++c_balanceL'46_'35selFP18'35y :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> t88+c_balanceL'46_'35selFP18'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP18'35y_case_138(x4)(st)+c_balanceL'46_'35selFP18'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP18'35y(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP18'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP18#y")(x)++++c_balanceL'46_'35selFP19'35b :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP19'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP19'35b_case_136(x4)(st)+c_balanceL'46_'35selFP19'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP19'35b(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP19'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP19#b")(x)++++c_balanceL'46_'35selFP20'35c :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP20'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP20'35c_case_134(x4)(st)+c_balanceL'46_'35selFP20'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP20'35c(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP20'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP20#c")(x)++++c_balanceL'46_'35selFP21'35d :: (Curry t88) => (Curry.Module.RedBlackTree.C_Tree t88) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t88+c_balanceL'46_'35selFP21'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP21'35d_case_132(x5)(x4)(st)+c_balanceL'46_'35selFP21'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP21'35d(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP21'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP21#d")(x)++++c_balanceR :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_balanceR x1 st = let {x2 = Curry.Module.RedBlackTree.c_right(x1)(st)} in Curry.Module.RedBlackTree.c_balanceR_case_130(x1)(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.RedBlackTree.c_isRed(x2)(st))(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_right(x2)(st))(st))(st))(st)++++c_balanceR'46_'35selFP23'35x :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> t131+c_balanceR'46_'35selFP23'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP23'35x_case_127(x3)(x5)(st)+c_balanceR'46_'35selFP23'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP23'35x(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP23'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP23#x")(x)++++c_balanceR'46_'35selFP24'35a :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP24'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP24'35a_case_125(x4)(x5)(st)+c_balanceR'46_'35selFP24'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP24'35a(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP24'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP24#a")(x)++++c_balanceR'46_'35selFP25'35y :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> t131+c_balanceR'46_'35selFP25'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP25'35y_case_123(x5)(st)+c_balanceR'46_'35selFP25'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP25'35y(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP25'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP25#y")(x)++++c_balanceR'46_'35selFP26'35b :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP26'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP26'35b_case_121(x5)(st)+c_balanceR'46_'35selFP26'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP26'35b(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP26'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP26#b")(x)++++c_balanceR'46_'35selFP27'35z :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> t131+c_balanceR'46_'35selFP27'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP27'35z_case_119(x5)(st)+c_balanceR'46_'35selFP27'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP27'35z(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP27'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP27#z")(x)++++c_balanceR'46_'35selFP28'35c :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP28'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP28'35c_case_117(x5)(st)+c_balanceR'46_'35selFP28'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP28'35c(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP28'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP28#c")(x)++++c_balanceR'46_'35selFP29'35d :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP29'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP29'35d_case_115(x5)(st)+c_balanceR'46_'35selFP29'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP29'35d(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP29'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP29#d")(x)++++c_balanceR'46_'35selFP31'35x :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> t131+c_balanceR'46_'35selFP31'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP31'35x_case_113(x3)(x5)(st)+c_balanceR'46_'35selFP31'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP31'35x(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP31'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP31#x")(x)++++c_balanceR'46_'35selFP32'35a :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP32'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP32'35a_case_111(x4)(x5)(st)+c_balanceR'46_'35selFP32'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP32'35a(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP32'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP32#a")(x)++++c_balanceR'46_'35selFP33'35z :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> t131+c_balanceR'46_'35selFP33'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP33'35z_case_109(x5)(st)+c_balanceR'46_'35selFP33'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP33'35z(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP33'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP33#z")(x)++++c_balanceR'46_'35selFP34'35y :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> t131+c_balanceR'46_'35selFP34'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP34'35y_case_107(x5)(st)+c_balanceR'46_'35selFP34'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP34'35y(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP34'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP34#y")(x)++++c_balanceR'46_'35selFP35'35b :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP35'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP35'35b_case_105(x5)(st)+c_balanceR'46_'35selFP35'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP35'35b(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP35'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP35#b")(x)++++c_balanceR'46_'35selFP36'35c :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP36'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP36'35c_case_103(x5)(st)+c_balanceR'46_'35selFP36'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP36'35c(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP36'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP36#c")(x)++++c_balanceR'46_'35selFP37'35d :: (Curry t131) => (Curry.Module.RedBlackTree.C_Tree t131) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t131+c_balanceR'46_'35selFP37'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP37'35d_case_101(x5)(st)+c_balanceR'46_'35selFP37'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP37'35d(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP37'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP37#d")(x)++++c_delBalanceL :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_delBalanceL x1 st = Curry.Module.RedBlackTree.c_delBalanceL_case_99(x1)(Curry.Module.RedBlackTree.c_isDoublyBlack(Curry.Module.RedBlackTree.c_left(x1)(st))(st))(st)++++c_reviseLeft :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_reviseLeft x1 st = let {x2 = Curry.Module.RedBlackTree.c_right(x1)(st)} in let {x3 = Curry.Module.RedBlackTree.c_isBlack(x2)(st)} in Curry.Module.RedBlackTree.c_reviseLeft_case_98(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.RedBlackTree.C_Empty)(st))(st)++++c_reviseLeft'46_'35selFP39'35col :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Color+c_reviseLeft'46_'35selFP39'35col x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP39'35col_case_92(x2)(x5)(st)+c_reviseLeft'46_'35selFP39'35col (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP39'35col(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP39'35col x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP39#col")(x)++++c_reviseLeft'46_'35selFP40'35x :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP40'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP40'35x_case_90(x3)(x5)(st)+c_reviseLeft'46_'35selFP40'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP40'35x(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP40'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP40#x")(x)++++c_reviseLeft'46_'35selFP41'35a :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP41'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP41'35a_case_88(x4)(x5)(st)+c_reviseLeft'46_'35selFP41'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP41'35a(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP41'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP41#a")(x)++++c_reviseLeft'46_'35selFP42'35z :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP42'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP42'35z_case_86(x5)(st)+c_reviseLeft'46_'35selFP42'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP42'35z(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP42'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP42#z")(x)++++c_reviseLeft'46_'35selFP43'35y :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP43'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP43'35y_case_84(x5)(st)+c_reviseLeft'46_'35selFP43'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP43'35y(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP43'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP43#y")(x)++++c_reviseLeft'46_'35selFP44'35b :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP44'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP44'35b_case_82(x5)(st)+c_reviseLeft'46_'35selFP44'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP44'35b(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP44'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP44#b")(x)++++c_reviseLeft'46_'35selFP45'35c :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP45'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP45'35c_case_80(x5)(st)+c_reviseLeft'46_'35selFP45'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP45'35c(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP45'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP45#c")(x)++++c_reviseLeft'46_'35selFP46'35d :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP46'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP46'35d_case_78(x5)(st)+c_reviseLeft'46_'35selFP46'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP46'35d(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP46'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP46#d")(x)++++c_reviseLeft'46_'35selFP48'35col :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Color+c_reviseLeft'46_'35selFP48'35col x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP48'35col_case_76(x2)(x5)(st)+c_reviseLeft'46_'35selFP48'35col (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP48'35col(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP48'35col x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP48#col")(x)++++c_reviseLeft'46_'35selFP49'35x :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP49'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP49'35x_case_74(x3)(x5)(st)+c_reviseLeft'46_'35selFP49'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP49'35x(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP49'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP49#x")(x)++++c_reviseLeft'46_'35selFP50'35a :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP50'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP50'35a_case_72(x4)(x5)(st)+c_reviseLeft'46_'35selFP50'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP50'35a(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP50'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP50#a")(x)++++c_reviseLeft'46_'35selFP51'35y :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP51'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP51'35y_case_70(x5)(st)+c_reviseLeft'46_'35selFP51'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP51'35y(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP51'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP51#y")(x)++++c_reviseLeft'46_'35selFP52'35b :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP52'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP52'35b_case_68(x5)(st)+c_reviseLeft'46_'35selFP52'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP52'35b(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP52'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP52#b")(x)++++c_reviseLeft'46_'35selFP53'35z :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP53'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP53'35z_case_66(x5)(st)+c_reviseLeft'46_'35selFP53'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP53'35z(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP53'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP53#z")(x)++++c_reviseLeft'46_'35selFP54'35c :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP54'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP54'35c_case_64(x5)(st)+c_reviseLeft'46_'35selFP54'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP54'35c(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP54'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP54#c")(x)++++c_reviseLeft'46_'35selFP55'35d :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP55'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP55'35d_case_62(x5)(st)+c_reviseLeft'46_'35selFP55'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP55'35d(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP55'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP55#d")(x)++++c_reviseLeft'46_'35selFP57'35col :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Color+c_reviseLeft'46_'35selFP57'35col x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP57'35col_case_60(x2)(x5)(st)+c_reviseLeft'46_'35selFP57'35col (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP57'35col(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP57'35col x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP57#col")(x)++++c_reviseLeft'46_'35selFP58'35x :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP58'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP58'35x_case_59(x3)(x5)(st)+c_reviseLeft'46_'35selFP58'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP58'35x(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP58'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP58#x")(x)++++c_reviseLeft'46_'35selFP59'35a :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP59'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP59'35a_case_58(x4)(x5)(st)+c_reviseLeft'46_'35selFP59'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP59'35a(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP59'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP59#a")(x)++++c_reviseLeft'46_'35selFP60'35y :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP60'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP60'35y_case_57(x5)(st)+c_reviseLeft'46_'35selFP60'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP60'35y(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP60'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP60#y")(x)++++c_reviseLeft'46_'35selFP61'35b :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP61'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP61'35b_case_56(x5)(st)+c_reviseLeft'46_'35selFP61'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP61'35b(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP61'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP61#b")(x)++++c_reviseLeft'46_'35selFP62'35c :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP62'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP62'35c_case_55(x5)(st)+c_reviseLeft'46_'35selFP62'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP62'35c(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP62'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP62#c")(x)++++c_reviseLeft'46_'35selFP64'35x :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP64'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP64'35x_case_54(x3)(x5)(st)+c_reviseLeft'46_'35selFP64'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP64'35x(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP64'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP64#x")(x)++++c_reviseLeft'46_'35selFP65'35a :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP65'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP65'35a_case_53(x4)(x5)(st)+c_reviseLeft'46_'35selFP65'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP65'35a(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP65'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP65#a")(x)++++c_reviseLeft'46_'35selFP66'35y :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> t249+c_reviseLeft'46_'35selFP66'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP66'35y_case_52(x5)(st)+c_reviseLeft'46_'35selFP66'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP66'35y(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP66'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP66#y")(x)++++c_reviseLeft'46_'35selFP67'35b :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP67'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP67'35b_case_51(x5)(st)+c_reviseLeft'46_'35selFP67'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP67'35b(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP67'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP67#b")(x)++++c_reviseLeft'46_'35selFP68'35c :: (Curry t249) => (Curry.Module.RedBlackTree.C_Tree t249) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t249+c_reviseLeft'46_'35selFP68'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP68'35c_case_50(x5)(st)+c_reviseLeft'46_'35selFP68'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP68'35c(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP68'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP68#c")(x)++++c_delBalanceR :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_delBalanceR x1 st = Curry.Module.RedBlackTree.c_delBalanceR_case_49(x1)(Curry.Module.RedBlackTree.c_isDoublyBlack(Curry.Module.RedBlackTree.c_right(x1)(st))(st))(st)++++c_reviseRight :: (Curry t0) => (Curry.Module.RedBlackTree.C_Tree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t0+c_reviseRight x1 st = let {x2 = Curry.Module.RedBlackTree.c_left(x1)(st)} in let {x3 = Curry.Module.RedBlackTree.c_isBlack(x2)(st)} in Curry.Module.RedBlackTree.c_reviseRight_case_48(x1)(x2)(x3)(Curry.Module.Prelude.op_61_61(x2)(Curry.Module.RedBlackTree.C_Empty)(st))(st)++++c_reviseRight'46_'35selFP70'35col :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Color+c_reviseRight'46_'35selFP70'35col x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP70'35col_case_42(x2)(x4)(st)+c_reviseRight'46_'35selFP70'35col (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP70'35col(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP70'35col x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP70#col")(x)++++c_reviseRight'46_'35selFP71'35x :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP71'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP71'35x_case_40(x3)(x4)(st)+c_reviseRight'46_'35selFP71'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP71'35x(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP71'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP71#x")(x)++++c_reviseRight'46_'35selFP72'35y :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP72'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP72'35y_case_38(x4)(st)+c_reviseRight'46_'35selFP72'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP72'35y(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP72'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP72#y")(x)++++c_reviseRight'46_'35selFP73'35z :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP73'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP73'35z_case_36(x4)(st)+c_reviseRight'46_'35selFP73'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP73'35z(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP73'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP73#z")(x)++++c_reviseRight'46_'35selFP74'35d :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP74'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP74'35d_case_34(x4)(st)+c_reviseRight'46_'35selFP74'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP74'35d(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP74'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP74#d")(x)++++c_reviseRight'46_'35selFP75'35c :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP75'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP75'35c_case_32(x4)(st)+c_reviseRight'46_'35selFP75'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP75'35c(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP75'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP75#c")(x)++++c_reviseRight'46_'35selFP76'35b :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP76'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP76'35b_case_30(x4)(st)+c_reviseRight'46_'35selFP76'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP76'35b(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP76'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP76#b")(x)++++c_reviseRight'46_'35selFP77'35a :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP77'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP77'35a_case_28(x5)(x4)(st)+c_reviseRight'46_'35selFP77'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP77'35a(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP77'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP77#a")(x)++++c_reviseRight'46_'35selFP79'35col :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Color+c_reviseRight'46_'35selFP79'35col x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP79'35col_case_26(x2)(x4)(st)+c_reviseRight'46_'35selFP79'35col (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP79'35col(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP79'35col x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP79#col")(x)++++c_reviseRight'46_'35selFP80'35x :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP80'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP80'35x_case_24(x3)(x4)(st)+c_reviseRight'46_'35selFP80'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP80'35x(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP80'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP80#x")(x)++++c_reviseRight'46_'35selFP81'35z :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP81'35z x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP81'35z_case_22(x4)(st)+c_reviseRight'46_'35selFP81'35z (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP81'35z(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP81'35z x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP81#z")(x)++++c_reviseRight'46_'35selFP82'35d :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP82'35d x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP82'35d_case_20(x4)(st)+c_reviseRight'46_'35selFP82'35d (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP82'35d(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP82'35d x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP82#d")(x)++++c_reviseRight'46_'35selFP83'35y :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP83'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP83'35y_case_18(x4)(st)+c_reviseRight'46_'35selFP83'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP83'35y(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP83'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP83#y")(x)++++c_reviseRight'46_'35selFP84'35c :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP84'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP84'35c_case_16(x4)(st)+c_reviseRight'46_'35selFP84'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP84'35c(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP84'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP84#c")(x)++++c_reviseRight'46_'35selFP85'35b :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP85'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP85'35b_case_14(x4)(st)+c_reviseRight'46_'35selFP85'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP85'35b(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP85'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP85#b")(x)++++c_reviseRight'46_'35selFP86'35a :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP86'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP86'35a_case_12(x5)(x4)(st)+c_reviseRight'46_'35selFP86'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP86'35a(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP86'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP86#a")(x)++++c_reviseRight'46_'35selFP88'35col :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Color+c_reviseRight'46_'35selFP88'35col x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP88'35col_case_10(x2)(x4)(st)+c_reviseRight'46_'35selFP88'35col (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP88'35col(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP88'35col x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP88#col")(x)++++c_reviseRight'46_'35selFP89'35x :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP89'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP89'35x_case_9(x3)(x4)(st)+c_reviseRight'46_'35selFP89'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP89'35x(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP89'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP89#x")(x)++++c_reviseRight'46_'35selFP90'35y :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP90'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP90'35y_case_8(x4)(st)+c_reviseRight'46_'35selFP90'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP90'35y(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP90'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP90#y")(x)++++c_reviseRight'46_'35selFP91'35c :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP91'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP91'35c_case_7(x4)(st)+c_reviseRight'46_'35selFP91'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP91'35c(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP91'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP91#c")(x)++++c_reviseRight'46_'35selFP92'35b :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP92'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP92'35b_case_6(x4)(st)+c_reviseRight'46_'35selFP92'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP92'35b(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP92'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP92#b")(x)++++c_reviseRight'46_'35selFP93'35a :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP93'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP93'35a_case_5(x5)(x4)(st)+c_reviseRight'46_'35selFP93'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP93'35a(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP93'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP93#a")(x)++++c_reviseRight'46_'35selFP95'35x :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP95'35x x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP95'35x_case_4(x3)(x4)(st)+c_reviseRight'46_'35selFP95'35x (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP95'35x(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP95'35x x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP95#x")(x)++++c_reviseRight'46_'35selFP96'35y :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> t327+c_reviseRight'46_'35selFP96'35y x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP96'35y_case_3(x4)(st)+c_reviseRight'46_'35selFP96'35y (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP96'35y(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP96'35y x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP96#y")(x)++++c_reviseRight'46_'35selFP97'35c :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP97'35c x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP97'35c_case_2(x4)(st)+c_reviseRight'46_'35selFP97'35c (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP97'35c(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP97'35c x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP97#c")(x)++++c_reviseRight'46_'35selFP98'35b :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP98'35b x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP98'35b_case_1(x4)(st)+c_reviseRight'46_'35selFP98'35b (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP98'35b(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP98'35b x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP98#b")(x)++++c_reviseRight'46_'35selFP99'35a :: (Curry t327) => (Curry.Module.RedBlackTree.C_Tree t327) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_Tree t327+c_reviseRight'46_'35selFP99'35a x1@(Curry.Module.RedBlackTree.C_Tree x2 x3 x4 x5) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP99'35a_case_0(x5)(x4)(st)+c_reviseRight'46_'35selFP99'35a (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP99'35a(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP99'35a x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP99#a")(x)++++c_reviseRight'46_'35selFP99'35a_case_0 x5 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x5+c_reviseRight'46_'35selFP99'35a_case_0 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP99'35a_case_0(x5)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP99'35a_case_0 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP99#a_case_0")(x)++++c_reviseRight'46_'35selFP98'35b_case_1 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x9+c_reviseRight'46_'35selFP98'35b_case_1 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP98'35b_case_1(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP98'35b_case_1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP98#b_case_1")(x)++++c_reviseRight'46_'35selFP97'35c_case_2 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x8+c_reviseRight'46_'35selFP97'35c_case_2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP97'35c_case_2(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP97'35c_case_2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP97#c_case_2")(x)++++c_reviseRight'46_'35selFP96'35y_case_3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x7+c_reviseRight'46_'35selFP96'35y_case_3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP96'35y_case_3(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP96'35y_case_3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP96#y_case_3")(x)++++c_reviseRight'46_'35selFP95'35x_case_4 x3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x3+c_reviseRight'46_'35selFP95'35x_case_4 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP95'35x_case_4(x3)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP95'35x_case_4 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP95#x_case_4")(x)++++c_reviseRight'46_'35selFP93'35a_case_5 x5 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x5+c_reviseRight'46_'35selFP93'35a_case_5 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP93'35a_case_5(x5)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP93'35a_case_5 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP93#a_case_5")(x)++++c_reviseRight'46_'35selFP92'35b_case_6 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x9+c_reviseRight'46_'35selFP92'35b_case_6 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP92'35b_case_6(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP92'35b_case_6 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP92#b_case_6")(x)++++c_reviseRight'46_'35selFP91'35c_case_7 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x8+c_reviseRight'46_'35selFP91'35c_case_7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP91'35c_case_7(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP91'35c_case_7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP91#c_case_7")(x)++++c_reviseRight'46_'35selFP90'35y_case_8 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x7+c_reviseRight'46_'35selFP90'35y_case_8 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP90'35y_case_8(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP90'35y_case_8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP90#y_case_8")(x)++++c_reviseRight'46_'35selFP89'35x_case_9 x3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x3+c_reviseRight'46_'35selFP89'35x_case_9 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP89'35x_case_9(x3)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP89'35x_case_9 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP89#x_case_9")(x)++++c_reviseRight'46_'35selFP88'35col_case_10 x2 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x2+c_reviseRight'46_'35selFP88'35col_case_10 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP88'35col_case_10(x2)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP88'35col_case_10 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP88#col_case_10")(x)++++c_reviseRight'46_'35selFP86'35a_case_12 x5 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP86'35a_case_11(x5)(x9)(st)+c_reviseRight'46_'35selFP86'35a_case_12 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP86'35a_case_12(x5)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP86'35a_case_12 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP86#a_case_12")(x)++++c_reviseRight'46_'35selFP86'35a_case_11 x5 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x5+c_reviseRight'46_'35selFP86'35a_case_11 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP86'35a_case_11(x5)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP86'35a_case_11 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP86#a_case_11")(x)++++c_reviseRight'46_'35selFP85'35b_case_14 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP85'35b_case_13(x9)(st)+c_reviseRight'46_'35selFP85'35b_case_14 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP85'35b_case_14(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP85'35b_case_14 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP85#b_case_14")(x)++++c_reviseRight'46_'35selFP85'35b_case_13 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_reviseRight'46_'35selFP85'35b_case_13 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP85'35b_case_13(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP85'35b_case_13 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP85#b_case_13")(x)++++c_reviseRight'46_'35selFP84'35c_case_16 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP84'35c_case_15(x9)(st)+c_reviseRight'46_'35selFP84'35c_case_16 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP84'35c_case_16(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP84'35c_case_16 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP84#c_case_16")(x)++++c_reviseRight'46_'35selFP84'35c_case_15 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_reviseRight'46_'35selFP84'35c_case_15 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP84'35c_case_15(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP84'35c_case_15 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP84#c_case_15")(x)++++c_reviseRight'46_'35selFP83'35y_case_18 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP83'35y_case_17(x9)(st)+c_reviseRight'46_'35selFP83'35y_case_18 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP83'35y_case_18(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP83'35y_case_18 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP83#y_case_18")(x)++++c_reviseRight'46_'35selFP83'35y_case_17 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_reviseRight'46_'35selFP83'35y_case_17 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP83'35y_case_17(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP83'35y_case_17 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP83#y_case_17")(x)++++c_reviseRight'46_'35selFP82'35d_case_20 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP82'35d_case_19(x8)(x9)(st)+c_reviseRight'46_'35selFP82'35d_case_20 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP82'35d_case_20(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP82'35d_case_20 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP82#d_case_20")(x)++++c_reviseRight'46_'35selFP82'35d_case_19 x8 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x8+c_reviseRight'46_'35selFP82'35d_case_19 x8 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP82'35d_case_19(x8)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP82'35d_case_19 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP82#d_case_19")(x)++++c_reviseRight'46_'35selFP81'35z_case_22 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP81'35z_case_21(x7)(x9)(st)+c_reviseRight'46_'35selFP81'35z_case_22 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP81'35z_case_22(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP81'35z_case_22 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP81#z_case_22")(x)++++c_reviseRight'46_'35selFP81'35z_case_21 x7 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_reviseRight'46_'35selFP81'35z_case_21 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP81'35z_case_21(x7)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP81'35z_case_21 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP81#z_case_21")(x)++++c_reviseRight'46_'35selFP80'35x_case_24 x3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP80'35x_case_23(x3)(x9)(st)+c_reviseRight'46_'35selFP80'35x_case_24 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP80'35x_case_24(x3)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP80'35x_case_24 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP80#x_case_24")(x)++++c_reviseRight'46_'35selFP80'35x_case_23 x3 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_reviseRight'46_'35selFP80'35x_case_23 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP80'35x_case_23(x3)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP80'35x_case_23 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP80#x_case_23")(x)++++c_reviseRight'46_'35selFP79'35col_case_26 x2 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP79'35col_case_25(x2)(x9)(st)+c_reviseRight'46_'35selFP79'35col_case_26 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP79'35col_case_26(x2)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP79'35col_case_26 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP79#col_case_26")(x)++++c_reviseRight'46_'35selFP79'35col_case_25 x2 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x2+c_reviseRight'46_'35selFP79'35col_case_25 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP79'35col_case_25(x2)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP79'35col_case_25 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP79#col_case_25")(x)++++c_reviseRight'46_'35selFP77'35a_case_28 x5 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP77'35a_case_27(x5)(x8)(st)+c_reviseRight'46_'35selFP77'35a_case_28 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP77'35a_case_28(x5)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP77'35a_case_28 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP77#a_case_28")(x)++++c_reviseRight'46_'35selFP77'35a_case_27 x5 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x5+c_reviseRight'46_'35selFP77'35a_case_27 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP77'35a_case_27(x5)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP77'35a_case_27 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP77#a_case_27")(x)++++c_reviseRight'46_'35selFP76'35b_case_30 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP76'35b_case_29(x9)(x8)(st)+c_reviseRight'46_'35selFP76'35b_case_30 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP76'35b_case_30(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP76'35b_case_30 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP76#b_case_30")(x)++++c_reviseRight'46_'35selFP76'35b_case_29 x9 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x9+c_reviseRight'46_'35selFP76'35b_case_29 x9 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP76'35b_case_29(x9)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP76'35b_case_29 x9 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP76#b_case_29")(x)++++c_reviseRight'46_'35selFP75'35c_case_32 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP75'35c_case_31(x8)(st)+c_reviseRight'46_'35selFP75'35c_case_32 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP75'35c_case_32(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP75'35c_case_32 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP75#c_case_32")(x)++++c_reviseRight'46_'35selFP75'35c_case_31 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_reviseRight'46_'35selFP75'35c_case_31 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP75'35c_case_31(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP75'35c_case_31 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP75#c_case_31")(x)++++c_reviseRight'46_'35selFP74'35d_case_34 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP74'35d_case_33(x8)(st)+c_reviseRight'46_'35selFP74'35d_case_34 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP74'35d_case_34(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP74'35d_case_34 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP74#d_case_34")(x)++++c_reviseRight'46_'35selFP74'35d_case_33 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_reviseRight'46_'35selFP74'35d_case_33 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP74'35d_case_33(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP74'35d_case_33 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP74#d_case_33")(x)++++c_reviseRight'46_'35selFP73'35z_case_36 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP73'35z_case_35(x8)(st)+c_reviseRight'46_'35selFP73'35z_case_36 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP73'35z_case_36(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP73'35z_case_36 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP73#z_case_36")(x)++++c_reviseRight'46_'35selFP73'35z_case_35 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_reviseRight'46_'35selFP73'35z_case_35 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP73'35z_case_35(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP73'35z_case_35 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP73#z_case_35")(x)++++c_reviseRight'46_'35selFP72'35y_case_38 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP72'35y_case_37(x7)(x8)(st)+c_reviseRight'46_'35selFP72'35y_case_38 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP72'35y_case_38(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP72'35y_case_38 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP72#y_case_38")(x)++++c_reviseRight'46_'35selFP72'35y_case_37 x7 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_reviseRight'46_'35selFP72'35y_case_37 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP72'35y_case_37(x7)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP72'35y_case_37 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP72#y_case_37")(x)++++c_reviseRight'46_'35selFP71'35x_case_40 x3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP71'35x_case_39(x3)(x8)(st)+c_reviseRight'46_'35selFP71'35x_case_40 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP71'35x_case_40(x3)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP71'35x_case_40 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP71#x_case_40")(x)++++c_reviseRight'46_'35selFP71'35x_case_39 x3 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_reviseRight'46_'35selFP71'35x_case_39 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP71'35x_case_39(x3)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP71'35x_case_39 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP71#x_case_39")(x)++++c_reviseRight'46_'35selFP70'35col_case_42 x2 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP70'35col_case_41(x2)(x8)(st)+c_reviseRight'46_'35selFP70'35col_case_42 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP70'35col_case_42(x2)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP70'35col_case_42 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP70#col_case_42")(x)++++c_reviseRight'46_'35selFP70'35col_case_41 x2 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x2+c_reviseRight'46_'35selFP70'35col_case_41 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP70'35col_case_41(x2)(x)(st))(i)(xs)(st)+c_reviseRight'46_'35selFP70'35col_case_41 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight._#selFP70#col_case_41")(x)++++c_reviseRight_case_48 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x1+c_reviseRight_case_48 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseRight_case_47(x1)(x2)(x3)(Curry.Module.Prelude.op_38_38(x3)(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_left(x2)(st))(st))(st))(st)+c_reviseRight_case_48 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight_case_48(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_reviseRight_case_48 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight_case_48")(x)++++c_reviseRight_case_47 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP70'35col(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP72'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP73'35z(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP74'35d(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP75'35c(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP71'35x(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP76'35b(x1)(st))(Curry.Module.RedBlackTree.c_singleBlack(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP77'35a(x1)(st))(st)))+c_reviseRight_case_47 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseRight_case_46(x1)(x2)(x3)(Curry.Module.Prelude.op_38_38(x3)(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_right(x2)(st))(st))(st))(st)+c_reviseRight_case_47 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight_case_47(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_reviseRight_case_47 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight_case_47")(x)++++c_reviseRight_case_46 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP79'35col(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP83'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP81'35z(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP82'35d(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP84'35c(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP80'35x(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP85'35b(x1)(st))(Curry.Module.RedBlackTree.c_singleBlack(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP86'35a(x1)(st))(st)))+c_reviseRight_case_46 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseRight_case_45(x1)(x3)(st)+c_reviseRight_case_46 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight_case_46(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_reviseRight_case_46 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight_case_46")(x)++++c_reviseRight_case_45 x1 x3@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.c_reviseRight_case_44(x1)(Curry.Module.Prelude.op_61_61(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP88'35col(x1)(st))(Curry.Module.RedBlackTree.C_Red)(st))(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP89'35x(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP90'35y(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP91'35c(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP92'35b(x1)(st)))(Curry.Module.RedBlackTree.c_singleBlack(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP93'35a(x1)(st))(st))+c_reviseRight_case_45 x1 x3@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseRight_case_43(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_reviseRight_case_45 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight_case_45(x1)(x)(st))(i)(xs)(st)+c_reviseRight_case_45 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight_case_45")(x)++++c_reviseRight_case_43 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP96'35y(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP97'35c(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP95'35x(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP98'35b(x1)(st))(Curry.Module.RedBlackTree.c_reviseRight'46_'35selFP99'35a(x1)(st)))(st))+c_reviseRight_case_43 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight_case_43(x1)(x)(st))(i)(xs)(st)+c_reviseRight_case_43 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight_case_43")(x)++++c_reviseRight_case_44 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Black+c_reviseRight_case_44 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.C_DoublyBlack+c_reviseRight_case_44 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseRight_case_44(x1)(x)(st))(i)(xs)(st)+c_reviseRight_case_44 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseRight_case_44")(x)++++c_delBalanceR_case_49 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_reviseRight(x1)(st)+c_delBalanceR_case_49 x1 x2@Curry.Module.Prelude.C_False st = x1+c_delBalanceR_case_49 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_delBalanceR_case_49(x1)(x)(st))(i)(xs)(st)+c_delBalanceR_case_49 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.delBalanceR_case_49")(x)++++c_reviseLeft'46_'35selFP68'35c_case_50 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x9+c_reviseLeft'46_'35selFP68'35c_case_50 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP68'35c_case_50(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP68'35c_case_50 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP68#c_case_50")(x)++++c_reviseLeft'46_'35selFP67'35b_case_51 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x8+c_reviseLeft'46_'35selFP67'35b_case_51 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP67'35b_case_51(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP67'35b_case_51 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP67#b_case_51")(x)++++c_reviseLeft'46_'35selFP66'35y_case_52 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x7+c_reviseLeft'46_'35selFP66'35y_case_52 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP66'35y_case_52(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP66'35y_case_52 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP66#y_case_52")(x)++++c_reviseLeft'46_'35selFP65'35a_case_53 x4 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x4+c_reviseLeft'46_'35selFP65'35a_case_53 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP65'35a_case_53(x4)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP65'35a_case_53 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP65#a_case_53")(x)++++c_reviseLeft'46_'35selFP64'35x_case_54 x3 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x3+c_reviseLeft'46_'35selFP64'35x_case_54 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP64'35x_case_54(x3)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP64'35x_case_54 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP64#x_case_54")(x)++++c_reviseLeft'46_'35selFP62'35c_case_55 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x9+c_reviseLeft'46_'35selFP62'35c_case_55 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP62'35c_case_55(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP62'35c_case_55 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP62#c_case_55")(x)++++c_reviseLeft'46_'35selFP61'35b_case_56 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x8+c_reviseLeft'46_'35selFP61'35b_case_56 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP61'35b_case_56(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP61'35b_case_56 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP61#b_case_56")(x)++++c_reviseLeft'46_'35selFP60'35y_case_57 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x7+c_reviseLeft'46_'35selFP60'35y_case_57 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP60'35y_case_57(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP60'35y_case_57 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP60#y_case_57")(x)++++c_reviseLeft'46_'35selFP59'35a_case_58 x4 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x4+c_reviseLeft'46_'35selFP59'35a_case_58 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP59'35a_case_58(x4)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP59'35a_case_58 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP59#a_case_58")(x)++++c_reviseLeft'46_'35selFP58'35x_case_59 x3 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x3+c_reviseLeft'46_'35selFP58'35x_case_59 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP58'35x_case_59(x3)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP58'35x_case_59 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP58#x_case_59")(x)++++c_reviseLeft'46_'35selFP57'35col_case_60 x2 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = x2+c_reviseLeft'46_'35selFP57'35col_case_60 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP57'35col_case_60(x2)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP57'35col_case_60 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP57#col_case_60")(x)++++c_reviseLeft'46_'35selFP55'35d_case_62 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP55'35d_case_61(x9)(st)+c_reviseLeft'46_'35selFP55'35d_case_62 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP55'35d_case_62(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP55'35d_case_62 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP55#d_case_62")(x)++++c_reviseLeft'46_'35selFP55'35d_case_61 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_reviseLeft'46_'35selFP55'35d_case_61 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP55'35d_case_61(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP55'35d_case_61 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP55#d_case_61")(x)++++c_reviseLeft'46_'35selFP54'35c_case_64 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP54'35c_case_63(x9)(st)+c_reviseLeft'46_'35selFP54'35c_case_64 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP54'35c_case_64(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP54'35c_case_64 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP54#c_case_64")(x)++++c_reviseLeft'46_'35selFP54'35c_case_63 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_reviseLeft'46_'35selFP54'35c_case_63 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP54'35c_case_63(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP54'35c_case_63 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP54#c_case_63")(x)++++c_reviseLeft'46_'35selFP53'35z_case_66 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP53'35z_case_65(x9)(st)+c_reviseLeft'46_'35selFP53'35z_case_66 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP53'35z_case_66(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP53'35z_case_66 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP53#z_case_66")(x)++++c_reviseLeft'46_'35selFP53'35z_case_65 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_reviseLeft'46_'35selFP53'35z_case_65 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP53'35z_case_65(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP53'35z_case_65 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP53#z_case_65")(x)++++c_reviseLeft'46_'35selFP52'35b_case_68 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP52'35b_case_67(x8)(x9)(st)+c_reviseLeft'46_'35selFP52'35b_case_68 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP52'35b_case_68(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP52'35b_case_68 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP52#b_case_68")(x)++++c_reviseLeft'46_'35selFP52'35b_case_67 x8 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x8+c_reviseLeft'46_'35selFP52'35b_case_67 x8 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP52'35b_case_67(x8)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP52'35b_case_67 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP52#b_case_67")(x)++++c_reviseLeft'46_'35selFP51'35y_case_70 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP51'35y_case_69(x7)(x9)(st)+c_reviseLeft'46_'35selFP51'35y_case_70 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP51'35y_case_70(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP51'35y_case_70 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP51#y_case_70")(x)++++c_reviseLeft'46_'35selFP51'35y_case_69 x7 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_reviseLeft'46_'35selFP51'35y_case_69 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP51'35y_case_69(x7)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP51'35y_case_69 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP51#y_case_69")(x)++++c_reviseLeft'46_'35selFP50'35a_case_72 x4 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP50'35a_case_71(x4)(x9)(st)+c_reviseLeft'46_'35selFP50'35a_case_72 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP50'35a_case_72(x4)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP50'35a_case_72 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP50#a_case_72")(x)++++c_reviseLeft'46_'35selFP50'35a_case_71 x4 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x4+c_reviseLeft'46_'35selFP50'35a_case_71 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP50'35a_case_71(x4)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP50'35a_case_71 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP50#a_case_71")(x)++++c_reviseLeft'46_'35selFP49'35x_case_74 x3 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP49'35x_case_73(x3)(x9)(st)+c_reviseLeft'46_'35selFP49'35x_case_74 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP49'35x_case_74(x3)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP49'35x_case_74 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP49#x_case_74")(x)++++c_reviseLeft'46_'35selFP49'35x_case_73 x3 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_reviseLeft'46_'35selFP49'35x_case_73 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP49'35x_case_73(x3)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP49'35x_case_73 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP49#x_case_73")(x)++++c_reviseLeft'46_'35selFP48'35col_case_76 x2 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP48'35col_case_75(x2)(x9)(st)+c_reviseLeft'46_'35selFP48'35col_case_76 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP48'35col_case_76(x2)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP48'35col_case_76 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP48#col_case_76")(x)++++c_reviseLeft'46_'35selFP48'35col_case_75 x2 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x2+c_reviseLeft'46_'35selFP48'35col_case_75 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP48'35col_case_75(x2)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP48'35col_case_75 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP48#col_case_75")(x)++++c_reviseLeft'46_'35selFP46'35d_case_78 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP46'35d_case_77(x9)(x8)(st)+c_reviseLeft'46_'35selFP46'35d_case_78 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP46'35d_case_78(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP46'35d_case_78 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP46#d_case_78")(x)++++c_reviseLeft'46_'35selFP46'35d_case_77 x9 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x9+c_reviseLeft'46_'35selFP46'35d_case_77 x9 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP46'35d_case_77(x9)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP46'35d_case_77 x9 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP46#d_case_77")(x)++++c_reviseLeft'46_'35selFP45'35c_case_80 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP45'35c_case_79(x8)(st)+c_reviseLeft'46_'35selFP45'35c_case_80 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP45'35c_case_80(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP45'35c_case_80 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP45#c_case_80")(x)++++c_reviseLeft'46_'35selFP45'35c_case_79 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_reviseLeft'46_'35selFP45'35c_case_79 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP45'35c_case_79(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP45'35c_case_79 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP45#c_case_79")(x)++++c_reviseLeft'46_'35selFP44'35b_case_82 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP44'35b_case_81(x8)(st)+c_reviseLeft'46_'35selFP44'35b_case_82 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP44'35b_case_82(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP44'35b_case_82 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP44#b_case_82")(x)++++c_reviseLeft'46_'35selFP44'35b_case_81 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_reviseLeft'46_'35selFP44'35b_case_81 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP44'35b_case_81(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP44'35b_case_81 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP44#b_case_81")(x)++++c_reviseLeft'46_'35selFP43'35y_case_84 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP43'35y_case_83(x8)(st)+c_reviseLeft'46_'35selFP43'35y_case_84 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP43'35y_case_84(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP43'35y_case_84 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP43#y_case_84")(x)++++c_reviseLeft'46_'35selFP43'35y_case_83 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_reviseLeft'46_'35selFP43'35y_case_83 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP43'35y_case_83(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP43'35y_case_83 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP43#y_case_83")(x)++++c_reviseLeft'46_'35selFP42'35z_case_86 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP42'35z_case_85(x7)(x8)(st)+c_reviseLeft'46_'35selFP42'35z_case_86 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP42'35z_case_86(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP42'35z_case_86 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP42#z_case_86")(x)++++c_reviseLeft'46_'35selFP42'35z_case_85 x7 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_reviseLeft'46_'35selFP42'35z_case_85 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP42'35z_case_85(x7)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP42'35z_case_85 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP42#z_case_85")(x)++++c_reviseLeft'46_'35selFP41'35a_case_88 x4 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP41'35a_case_87(x4)(x8)(st)+c_reviseLeft'46_'35selFP41'35a_case_88 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP41'35a_case_88(x4)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP41'35a_case_88 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP41#a_case_88")(x)++++c_reviseLeft'46_'35selFP41'35a_case_87 x4 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x4+c_reviseLeft'46_'35selFP41'35a_case_87 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP41'35a_case_87(x4)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP41'35a_case_87 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP41#a_case_87")(x)++++c_reviseLeft'46_'35selFP40'35x_case_90 x3 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP40'35x_case_89(x3)(x8)(st)+c_reviseLeft'46_'35selFP40'35x_case_90 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP40'35x_case_90(x3)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP40'35x_case_90 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP40#x_case_90")(x)++++c_reviseLeft'46_'35selFP40'35x_case_89 x3 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_reviseLeft'46_'35selFP40'35x_case_89 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP40'35x_case_89(x3)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP40'35x_case_89 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP40#x_case_89")(x)++++c_reviseLeft'46_'35selFP39'35col_case_92 x2 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP39'35col_case_91(x2)(x8)(st)+c_reviseLeft'46_'35selFP39'35col_case_92 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP39'35col_case_92(x2)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP39'35col_case_92 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP39#col_case_92")(x)++++c_reviseLeft'46_'35selFP39'35col_case_91 x2 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x2+c_reviseLeft'46_'35selFP39'35col_case_91 x2 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP39'35col_case_91(x2)(x)(st))(i)(xs)(st)+c_reviseLeft'46_'35selFP39'35col_case_91 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft._#selFP39#col_case_91")(x)++++c_reviseLeft_case_98 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = x1+c_reviseLeft_case_98 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseLeft_case_97(x1)(x2)(x3)(Curry.Module.Prelude.op_38_38(x3)(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_left(x2)(st))(st))(st))(st)+c_reviseLeft_case_98 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft_case_98(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_reviseLeft_case_98 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft_case_98")(x)++++c_reviseLeft_case_97 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP39'35col(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP43'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP40'35x(x1)(st))(Curry.Module.RedBlackTree.c_singleBlack(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP41'35a(x1)(st))(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP44'35b(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP42'35z(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP45'35c(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP46'35d(x1)(st)))+c_reviseLeft_case_97 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseLeft_case_96(x1)(x2)(x3)(Curry.Module.Prelude.op_38_38(x3)(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_right(x2)(st))(st))(st))(st)+c_reviseLeft_case_97 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft_case_97(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_reviseLeft_case_97 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft_case_97")(x)++++c_reviseLeft_case_96 x1 x2 x3 x4@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP48'35col(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP51'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP49'35x(x1)(st))(Curry.Module.RedBlackTree.c_singleBlack(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP50'35a(x1)(st))(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP52'35b(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP53'35z(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP54'35c(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP55'35d(x1)(st)))+c_reviseLeft_case_96 x1 x2 x3 x4@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseLeft_case_95(x1)(x3)(st)+c_reviseLeft_case_96 x1 x2 x3 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft_case_96(x1)(x2)(x3)(x)(st))(i)(xs)(st)+c_reviseLeft_case_96 x1 x2 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft_case_96")(x)++++c_reviseLeft_case_95 x1 x3@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.c_reviseLeft_case_94(x1)(Curry.Module.Prelude.op_61_61(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP57'35col(x1)(st))(Curry.Module.RedBlackTree.C_Red)(st))(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP58'35x(x1)(st))(Curry.Module.RedBlackTree.c_singleBlack(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP59'35a(x1)(st))(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP60'35y(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP61'35b(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP62'35c(x1)(st)))+c_reviseLeft_case_95 x1 x3@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_reviseLeft_case_93(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_reviseLeft_case_95 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft_case_95(x1)(x)(st))(i)(xs)(st)+c_reviseLeft_case_95 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft_case_95")(x)++++c_reviseLeft_case_93 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP66'35y(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP64'35x(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP65'35a(x1)(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP67'35b(x1)(st)))(st))(Curry.Module.RedBlackTree.c_reviseLeft'46_'35selFP68'35c(x1)(st))+c_reviseLeft_case_93 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft_case_93(x1)(x)(st))(i)(xs)(st)+c_reviseLeft_case_93 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft_case_93")(x)++++c_reviseLeft_case_94 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Black+c_reviseLeft_case_94 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.C_DoublyBlack+c_reviseLeft_case_94 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_reviseLeft_case_94(x1)(x)(st))(i)(xs)(st)+c_reviseLeft_case_94 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.reviseLeft_case_94")(x)++++c_delBalanceL_case_99 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_reviseLeft(x1)(st)+c_delBalanceL_case_99 x1 x2@Curry.Module.Prelude.C_False st = x1+c_delBalanceL_case_99 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_delBalanceL_case_99(x1)(x)(st))(i)(xs)(st)+c_delBalanceL_case_99 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.delBalanceL_case_99")(x)++++c_balanceR'46_'35selFP37'35d_case_101 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP37'35d_case_100(x9)(x8)(st)+c_balanceR'46_'35selFP37'35d_case_101 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP37'35d_case_101(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP37'35d_case_101 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP37#d_case_101")(x)++++c_balanceR'46_'35selFP37'35d_case_100 x9 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x9+c_balanceR'46_'35selFP37'35d_case_100 x9 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP37'35d_case_100(x9)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP37'35d_case_100 x9 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP37#d_case_100")(x)++++c_balanceR'46_'35selFP36'35c_case_103 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP36'35c_case_102(x8)(st)+c_balanceR'46_'35selFP36'35c_case_103 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP36'35c_case_103(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP36'35c_case_103 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP36#c_case_103")(x)++++c_balanceR'46_'35selFP36'35c_case_102 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_balanceR'46_'35selFP36'35c_case_102 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP36'35c_case_102(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP36'35c_case_102 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP36#c_case_102")(x)++++c_balanceR'46_'35selFP35'35b_case_105 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP35'35b_case_104(x8)(st)+c_balanceR'46_'35selFP35'35b_case_105 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP35'35b_case_105(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP35'35b_case_105 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP35#b_case_105")(x)++++c_balanceR'46_'35selFP35'35b_case_104 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_balanceR'46_'35selFP35'35b_case_104 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP35'35b_case_104(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP35'35b_case_104 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP35#b_case_104")(x)++++c_balanceR'46_'35selFP34'35y_case_107 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP34'35y_case_106(x8)(st)+c_balanceR'46_'35selFP34'35y_case_107 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP34'35y_case_107(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP34'35y_case_107 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP34#y_case_107")(x)++++c_balanceR'46_'35selFP34'35y_case_106 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_balanceR'46_'35selFP34'35y_case_106 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP34'35y_case_106(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP34'35y_case_106 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP34#y_case_106")(x)++++c_balanceR'46_'35selFP33'35z_case_109 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP33'35z_case_108(x7)(x8)(st)+c_balanceR'46_'35selFP33'35z_case_109 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP33'35z_case_109(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP33'35z_case_109 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP33#z_case_109")(x)++++c_balanceR'46_'35selFP33'35z_case_108 x7 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_balanceR'46_'35selFP33'35z_case_108 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP33'35z_case_108(x7)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP33'35z_case_108 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP33#z_case_108")(x)++++c_balanceR'46_'35selFP32'35a_case_111 x4 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP32'35a_case_110(x4)(x8)(st)+c_balanceR'46_'35selFP32'35a_case_111 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP32'35a_case_111(x4)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP32'35a_case_111 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP32#a_case_111")(x)++++c_balanceR'46_'35selFP32'35a_case_110 x4 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x4+c_balanceR'46_'35selFP32'35a_case_110 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP32'35a_case_110(x4)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP32'35a_case_110 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP32#a_case_110")(x)++++c_balanceR'46_'35selFP31'35x_case_113 x3 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP31'35x_case_112(x3)(x8)(st)+c_balanceR'46_'35selFP31'35x_case_113 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP31'35x_case_113(x3)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP31'35x_case_113 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP31#x_case_113")(x)++++c_balanceR'46_'35selFP31'35x_case_112 x3 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_balanceR'46_'35selFP31'35x_case_112 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP31'35x_case_112(x3)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP31'35x_case_112 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP31#x_case_112")(x)++++c_balanceR'46_'35selFP29'35d_case_115 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP29'35d_case_114(x9)(st)+c_balanceR'46_'35selFP29'35d_case_115 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP29'35d_case_115(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP29'35d_case_115 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP29#d_case_115")(x)++++c_balanceR'46_'35selFP29'35d_case_114 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_balanceR'46_'35selFP29'35d_case_114 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP29'35d_case_114(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP29'35d_case_114 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP29#d_case_114")(x)++++c_balanceR'46_'35selFP28'35c_case_117 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP28'35c_case_116(x9)(st)+c_balanceR'46_'35selFP28'35c_case_117 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP28'35c_case_117(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP28'35c_case_117 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP28#c_case_117")(x)++++c_balanceR'46_'35selFP28'35c_case_116 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_balanceR'46_'35selFP28'35c_case_116 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP28'35c_case_116(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP28'35c_case_116 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP28#c_case_116")(x)++++c_balanceR'46_'35selFP27'35z_case_119 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP27'35z_case_118(x9)(st)+c_balanceR'46_'35selFP27'35z_case_119 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP27'35z_case_119(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP27'35z_case_119 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP27#z_case_119")(x)++++c_balanceR'46_'35selFP27'35z_case_118 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_balanceR'46_'35selFP27'35z_case_118 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP27'35z_case_118(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP27'35z_case_118 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP27#z_case_118")(x)++++c_balanceR'46_'35selFP26'35b_case_121 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP26'35b_case_120(x8)(x9)(st)+c_balanceR'46_'35selFP26'35b_case_121 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP26'35b_case_121(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP26'35b_case_121 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP26#b_case_121")(x)++++c_balanceR'46_'35selFP26'35b_case_120 x8 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x8+c_balanceR'46_'35selFP26'35b_case_120 x8 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP26'35b_case_120(x8)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP26'35b_case_120 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP26#b_case_120")(x)++++c_balanceR'46_'35selFP25'35y_case_123 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP25'35y_case_122(x7)(x9)(st)+c_balanceR'46_'35selFP25'35y_case_123 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP25'35y_case_123(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP25'35y_case_123 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP25#y_case_123")(x)++++c_balanceR'46_'35selFP25'35y_case_122 x7 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_balanceR'46_'35selFP25'35y_case_122 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP25'35y_case_122(x7)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP25'35y_case_122 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP25#y_case_122")(x)++++c_balanceR'46_'35selFP24'35a_case_125 x4 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP24'35a_case_124(x4)(x9)(st)+c_balanceR'46_'35selFP24'35a_case_125 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP24'35a_case_125(x4)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP24'35a_case_125 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP24#a_case_125")(x)++++c_balanceR'46_'35selFP24'35a_case_124 x4 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x4+c_balanceR'46_'35selFP24'35a_case_124 x4 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP24'35a_case_124(x4)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP24'35a_case_124 x4 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP24#a_case_124")(x)++++c_balanceR'46_'35selFP23'35x_case_127 x3 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceR'46_'35selFP23'35x_case_126(x3)(x9)(st)+c_balanceR'46_'35selFP23'35x_case_127 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP23'35x_case_127(x3)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP23'35x_case_127 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP23#x_case_127")(x)++++c_balanceR'46_'35selFP23'35x_case_126 x3 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_balanceR'46_'35selFP23'35x_case_126 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR'46_'35selFP23'35x_case_126(x3)(x)(st))(i)(xs)(st)+c_balanceR'46_'35selFP23'35x_case_126 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR._#selFP23#x_case_126")(x)++++c_balanceR_case_130 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP25'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP23'35x(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP24'35a(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP26'35b(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP27'35z(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP28'35c(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP29'35d(x1)(st)))+c_balanceR_case_130 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_balanceR_case_129(x1)(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.RedBlackTree.c_isRed(x2)(st))(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_left(x2)(st))(st))(st))(st)+c_balanceR_case_130 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR_case_130(x1)(x2)(x)(st))(i)(xs)(st)+c_balanceR_case_130 x1 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR_case_130")(x)++++c_balanceR_case_129 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP34'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP31'35x(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP32'35a(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP35'35b(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP33'35z(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP36'35c(x1)(st))(Curry.Module.RedBlackTree.c_balanceR'46_'35selFP37'35d(x1)(st)))+c_balanceR_case_129 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_balanceR_case_128(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_balanceR_case_129 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR_case_129(x1)(x2)(x)(st))(i)(xs)(st)+c_balanceR_case_129 x1 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR_case_129")(x)++++c_balanceR_case_128 x1 x2@Curry.Module.Prelude.C_True st = x1+c_balanceR_case_128 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceR_case_128(x1)(x)(st))(i)(xs)(st)+c_balanceR_case_128 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceR_case_128")(x)++++c_balanceL'46_'35selFP21'35d_case_132 x5 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP21'35d_case_131(x5)(x9)(st)+c_balanceL'46_'35selFP21'35d_case_132 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP21'35d_case_132(x5)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP21'35d_case_132 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP21#d_case_132")(x)++++c_balanceL'46_'35selFP21'35d_case_131 x5 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x5+c_balanceL'46_'35selFP21'35d_case_131 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP21'35d_case_131(x5)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP21'35d_case_131 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP21#d_case_131")(x)++++c_balanceL'46_'35selFP20'35c_case_134 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP20'35c_case_133(x9)(st)+c_balanceL'46_'35selFP20'35c_case_134 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP20'35c_case_134(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP20'35c_case_134 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP20#c_case_134")(x)++++c_balanceL'46_'35selFP20'35c_case_133 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_balanceL'46_'35selFP20'35c_case_133 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP20'35c_case_133(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP20'35c_case_133 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP20#c_case_133")(x)++++c_balanceL'46_'35selFP19'35b_case_136 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP19'35b_case_135(x9)(st)+c_balanceL'46_'35selFP19'35b_case_136 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP19'35b_case_136(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP19'35b_case_136 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP19#b_case_136")(x)++++c_balanceL'46_'35selFP19'35b_case_135 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_balanceL'46_'35selFP19'35b_case_135 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP19'35b_case_135(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP19'35b_case_135 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP19#b_case_135")(x)++++c_balanceL'46_'35selFP18'35y_case_138 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP18'35y_case_137(x9)(st)+c_balanceL'46_'35selFP18'35y_case_138 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP18'35y_case_138(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP18'35y_case_138 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP18#y_case_138")(x)++++c_balanceL'46_'35selFP18'35y_case_137 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_balanceL'46_'35selFP18'35y_case_137 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP18'35y_case_137(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP18'35y_case_137 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP18#y_case_137")(x)++++c_balanceL'46_'35selFP17'35a_case_140 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP17'35a_case_139(x8)(x9)(st)+c_balanceL'46_'35selFP17'35a_case_140 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP17'35a_case_140(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP17'35a_case_140 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP17#a_case_140")(x)++++c_balanceL'46_'35selFP17'35a_case_139 x8 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x8+c_balanceL'46_'35selFP17'35a_case_139 x8 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP17'35a_case_139(x8)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP17'35a_case_139 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP17#a_case_139")(x)++++c_balanceL'46_'35selFP16'35x_case_142 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP16'35x_case_141(x7)(x9)(st)+c_balanceL'46_'35selFP16'35x_case_142 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP16'35x_case_142(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP16'35x_case_142 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP16#x_case_142")(x)++++c_balanceL'46_'35selFP16'35x_case_141 x7 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_balanceL'46_'35selFP16'35x_case_141 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP16'35x_case_141(x7)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP16'35x_case_141 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP16#x_case_141")(x)++++c_balanceL'46_'35selFP15'35z_case_144 x3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP15'35z_case_143(x3)(x9)(st)+c_balanceL'46_'35selFP15'35z_case_144 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP15'35z_case_144(x3)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP15'35z_case_144 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP15#z_case_144")(x)++++c_balanceL'46_'35selFP15'35z_case_143 x3 x9@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_balanceL'46_'35selFP15'35z_case_143 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP15'35z_case_143(x3)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP15'35z_case_143 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP15#z_case_143")(x)++++c_balanceL'46_'35selFP13'35d_case_146 x5 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP13'35d_case_145(x5)(x8)(st)+c_balanceL'46_'35selFP13'35d_case_146 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP13'35d_case_146(x5)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP13'35d_case_146 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP13#d_case_146")(x)++++c_balanceL'46_'35selFP13'35d_case_145 x5 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x5+c_balanceL'46_'35selFP13'35d_case_145 x5 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP13'35d_case_145(x5)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP13'35d_case_145 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP13#d_case_145")(x)++++c_balanceL'46_'35selFP12'35c_case_148 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP12'35c_case_147(x9)(x8)(st)+c_balanceL'46_'35selFP12'35c_case_148 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP12'35c_case_148(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP12'35c_case_148 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP12#c_case_148")(x)++++c_balanceL'46_'35selFP12'35c_case_147 x9 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x9+c_balanceL'46_'35selFP12'35c_case_147 x9 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP12'35c_case_147(x9)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP12'35c_case_147 x9 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP12#c_case_147")(x)++++c_balanceL'46_'35selFP11'35b_case_150 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP11'35b_case_149(x8)(st)+c_balanceL'46_'35selFP11'35b_case_150 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP11'35b_case_150(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP11'35b_case_150 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP11#b_case_150")(x)++++c_balanceL'46_'35selFP11'35b_case_149 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x13+c_balanceL'46_'35selFP11'35b_case_149 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP11'35b_case_149(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP11'35b_case_149 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP11#b_case_149")(x)++++c_balanceL'46_'35selFP10'35a_case_152 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP10'35a_case_151(x8)(st)+c_balanceL'46_'35selFP10'35a_case_152 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP10'35a_case_152(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP10'35a_case_152 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP10#a_case_152")(x)++++c_balanceL'46_'35selFP10'35a_case_151 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x12+c_balanceL'46_'35selFP10'35a_case_151 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP10'35a_case_151(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP10'35a_case_151 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP10#a_case_151")(x)++++c_balanceL'46_'35selFP9'35x_case_154 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP9'35x_case_153(x8)(st)+c_balanceL'46_'35selFP9'35x_case_154 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP9'35x_case_154(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP9'35x_case_154 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP9#x_case_154")(x)++++c_balanceL'46_'35selFP9'35x_case_153 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x11+c_balanceL'46_'35selFP9'35x_case_153 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP9'35x_case_153(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP9'35x_case_153 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP9#x_case_153")(x)++++c_balanceL'46_'35selFP8'35y_case_156 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP8'35y_case_155(x7)(x8)(st)+c_balanceL'46_'35selFP8'35y_case_156 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP8'35y_case_156(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP8'35y_case_156 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP8#y_case_156")(x)++++c_balanceL'46_'35selFP8'35y_case_155 x7 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x7+c_balanceL'46_'35selFP8'35y_case_155 x7 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP8'35y_case_155(x7)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP8'35y_case_155 x7 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP8#y_case_155")(x)++++c_balanceL'46_'35selFP7'35z_case_158 x3 x4@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.RedBlackTree.c_balanceL'46_'35selFP7'35z_case_157(x3)(x8)(st)+c_balanceL'46_'35selFP7'35z_case_158 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP7'35z_case_158(x3)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP7'35z_case_158 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP7#z_case_158")(x)++++c_balanceL'46_'35selFP7'35z_case_157 x3 x8@(Curry.Module.RedBlackTree.C_Tree x10 x11 x12 x13) st = x3+c_balanceL'46_'35selFP7'35z_case_157 x3 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL'46_'35selFP7'35z_case_157(x3)(x)(st))(i)(xs)(st)+c_balanceL'46_'35selFP7'35z_case_157 x3 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL._#selFP7#z_case_157")(x)++++c_balanceL_case_161 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP8'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP9'35x(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP10'35a(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP11'35b(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP7'35z(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP12'35c(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP13'35d(x1)(st)))+c_balanceL_case_161 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_balanceL_case_160(x1)(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.RedBlackTree.c_isRed(x2)(st))(Curry.Module.RedBlackTree.c_isRed(Curry.Module.RedBlackTree.c_right(x2)(st))(st))(st))(st)+c_balanceL_case_161 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL_case_161(x1)(x2)(x)(st))(i)(xs)(st)+c_balanceL_case_161 x1 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL_case_161")(x)++++c_balanceL_case_160 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Red)(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP18'35y(x1)(st))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP16'35x(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP17'35a(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP19'35b(x1)(st)))(Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP15'35z(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP20'35c(x1)(st))(Curry.Module.RedBlackTree.c_balanceL'46_'35selFP21'35d(x1)(st)))+c_balanceL_case_160 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_balanceL_case_159(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_balanceL_case_160 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL_case_160(x1)(x2)(x)(st))(i)(xs)(st)+c_balanceL_case_160 x1 x2 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL_case_160")(x)++++c_balanceL_case_159 x1 x2@Curry.Module.Prelude.C_True st = x1+c_balanceL_case_159 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_balanceL_case_159(x1)(x)(st))(i)(xs)(st)+c_balanceL_case_159 x1 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.balanceL_case_159")(x)++++c_singleBlack_case_162 x3 x4 x5 x2@Curry.Module.RedBlackTree.C_DoublyBlack st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(x3)(x4)(x5)+c_singleBlack_case_162 x3 x4 x5 (Curry.Module.RedBlackTree.C_ColorOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_singleBlack_case_162(x3)(x4)(x5)(x)(st))(i)(xs)(st)+c_singleBlack_case_162 x3 x4 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.singleBlack_case_162")(x)++++c_deleteTree'46rightMost'4656_case_163 x3 x5 x6@Curry.Module.Prelude.C_True st = x3+c_deleteTree'46rightMost'4656_case_163 x3 x5 x6@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_deleteTree'46rightMost'4656(x5)(st)+c_deleteTree'46rightMost'4656_case_163 x3 x5 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree'46rightMost'4656_case_163(x3)(x5)(x)(st))(i)(xs)(st)+c_deleteTree'46rightMost'4656_case_163 x3 x5 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree.rightMost.56_case_163")(x)++++c_deleteTree'46addColor'4656_case_165 x2@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.RedBlackTree.C_Empty+c_deleteTree'46addColor'4656_case_165 x2@(Curry.Module.RedBlackTree.C_Tree x3 x4 x5 x6) st = Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656_case_164(x4)(x5)(x6)(x3)(st)+c_deleteTree'46addColor'4656_case_165 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656_case_165(x)(st))(i)(xs)(st)+c_deleteTree'46addColor'4656_case_165 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree.addColor.56_case_165")(x)++++c_deleteTree'46addColor'4656_case_164 x4 x5 x6 x3@Curry.Module.RedBlackTree.C_Red st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_Black)(x4)(x5)(x6)+c_deleteTree'46addColor'4656_case_164 x4 x5 x6 x3@Curry.Module.RedBlackTree.C_Black st = Curry.Module.RedBlackTree.C_Tree(Curry.Module.RedBlackTree.C_DoublyBlack)(x4)(x5)(x6)+c_deleteTree'46addColor'4656_case_164 x4 x5 x6 (Curry.Module.RedBlackTree.C_ColorOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656_case_164(x4)(x5)(x6)(x)(st))(i)(xs)(st)+c_deleteTree'46addColor'4656_case_164 x4 x5 x6 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree.addColor.56_case_164")(x)++++c_deleteTree_case_170 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_deleteTree_case_169(x1)(x2)(x5)(x7)(x8)(Curry.Module.Prelude.op_61_61(x7)(Curry.Module.RedBlackTree.C_Empty)(st))(st)+c_deleteTree_case_170 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_deleteTree_case_167(x1)(x2)(x3)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x3)(st))(x6)(st))(st)+c_deleteTree_case_170 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree_case_170(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_deleteTree_case_170 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree_case_170")(x)++++c_deleteTree_case_167 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_delBalanceL(Curry.Module.RedBlackTree.C_Tree(x5)(x6)(Curry.Module.RedBlackTree.c_deleteTree(x1)(x2)(x3)(x7)(st))(x8))(st)+c_deleteTree_case_167 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_deleteTree_case_166(x1)(x2)(x3)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_deleteTree_case_167 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree_case_167(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_deleteTree_case_167 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree_case_167")(x)++++c_deleteTree_case_166 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_delBalanceR(Curry.Module.RedBlackTree.C_Tree(x5)(x6)(x7)(Curry.Module.RedBlackTree.c_deleteTree(x1)(x2)(x3)(x8)(st)))(st)+c_deleteTree_case_166 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree_case_166(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_deleteTree_case_166 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree_case_166")(x)++++c_deleteTree_case_169 x1 x2 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656(x5)(x8)(st)+c_deleteTree_case_169 x1 x2 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_deleteTree_case_168(x1)(x2)(x5)(x7)(x8)(Curry.Module.Prelude.op_61_61(x8)(Curry.Module.RedBlackTree.C_Empty)(st))(st)+c_deleteTree_case_169 x1 x2 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree_case_169(x1)(x2)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_deleteTree_case_169 x1 x2 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree_case_169")(x)++++c_deleteTree_case_168 x1 x2 x5 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_deleteTree'46addColor'4656(x5)(x7)(st)+c_deleteTree_case_168 x1 x2 x5 x7 x8 x9@Curry.Module.Prelude.C_False st = let {x9 = Curry.Module.RedBlackTree.c_deleteTree'46rightMost'4656(x7)(st)} in Curry.Module.RedBlackTree.c_delBalanceL(Curry.Module.RedBlackTree.C_Tree(x5)(x9)(Curry.Module.RedBlackTree.c_deleteTree(x1)(x2)(x9)(x7)(st))(x8))(st)+c_deleteTree_case_168 x1 x2 x5 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_deleteTree_case_168(x1)(x2)(x5)(x7)(x8)(x)(st))(i)(xs)(st)+c_deleteTree_case_168 x1 x2 x5 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.deleteTree_case_168")(x)++++c_updateTree'46upd'4635_case_173 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.C_Tree(x5)(x1)(x7)(x8)+c_updateTree'46upd'4635_case_173 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_updateTree'46upd'4635_case_172(x1)(x2)(x3)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(x1)(st))(x6)(st))(st)+c_updateTree'46upd'4635_case_173 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46upd'4635_case_173(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_updateTree'46upd'4635_case_173 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree.upd.35_case_173")(x)++++c_updateTree'46upd'4635_case_172 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_balanceL(Curry.Module.RedBlackTree.C_Tree(x5)(x6)(Curry.Module.RedBlackTree.c_updateTree'46upd'4635(x1)(x2)(x3)(x7)(st))(x8))(st)+c_updateTree'46upd'4635_case_172 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_updateTree'46upd'4635_case_171(x1)(x2)(x3)(x5)(x6)(x7)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_updateTree'46upd'4635_case_172 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46upd'4635_case_172(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_updateTree'46upd'4635_case_172 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree.upd.35_case_172")(x)++++c_updateTree'46upd'4635_case_171 x1 x2 x3 x5 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_balanceR(Curry.Module.RedBlackTree.C_Tree(x5)(x6)(x7)(Curry.Module.RedBlackTree.c_updateTree'46upd'4635(x1)(x2)(x3)(x8)(st)))(st)+c_updateTree'46upd'4635_case_171 x1 x2 x3 x5 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_updateTree'46upd'4635_case_171(x1)(x2)(x3)(x5)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_updateTree'46upd'4635_case_171 x1 x2 x3 x5 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.updateTree.upd.35_case_171")(x)++++c_lookupTree_case_176 x1 x2 x3 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Just(x6)+c_lookupTree_case_176 x1 x2 x3 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_lookupTree_case_175(x1)(x2)(x3)(x6)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x2)(x3)(st))(x6)(st))(st)+c_lookupTree_case_176 x1 x2 x3 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_lookupTree_case_176(x1)(x2)(x3)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_lookupTree_case_176 x1 x2 x3 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.lookupTree_case_176")(x)++++c_lookupTree_case_175 x1 x2 x3 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_lookupTree(x1)(x2)(x3)(x7)(st)+c_lookupTree_case_175 x1 x2 x3 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.RedBlackTree.c_lookupTree_case_174(x1)(x2)(x3)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_lookupTree_case_175 x1 x2 x3 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_lookupTree_case_175(x1)(x2)(x3)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_lookupTree_case_175 x1 x2 x3 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.lookupTree_case_175")(x)++++c_lookupTree_case_174 x1 x2 x3 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.RedBlackTree.c_lookupTree(x1)(x2)(x3)(x8)(st)+c_lookupTree_case_174 x1 x2 x3 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_lookupTree_case_174(x1)(x2)(x3)(x8)(x)(st))(i)(xs)(st)+c_lookupTree_case_174 x1 x2 x3 x8 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.lookupTree_case_174")(x)++++c_isEmpty_case_177 x5@Curry.Module.RedBlackTree.C_Empty st = Curry.Module.Prelude.C_True+c_isEmpty_case_177 x5@(Curry.Module.RedBlackTree.C_Tree x6 x7 x8 x9) st = Curry.Module.Prelude.C_False+c_isEmpty_case_177 (Curry.Module.RedBlackTree.C_TreeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.RedBlackTree.c_isEmpty_case_177(x)(st))(i)(xs)(st)+c_isEmpty_case_177 x st = Curry.RunTimeSystem.patternFail("RedBlackTree.isEmpty_case_177")(x)++
+ dist/build/Curry/Module/SetRBT.hs view
@@ -0,0 +1,75 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.SetRBT (module Curry.Module.SetRBT) where++import Curry.RunTimeSystem+import Curry.Module.Maybe+import Curry.Module.Prelude+import Curry.Module.RedBlackTree++++-- begin included++++-- end included++type C_SetRBT t0 = Curry.Module.RedBlackTree.C_RedBlackTree t0++c_emptySetRBT :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0)+c_emptySetRBT st = Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_empty(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61)))++++c_elemRBT :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_elemRBT x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Maybe.c_isJust))(Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_lookup(x1)))(st)++++c_insertRBT :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0))+c_insertRBT st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.RedBlackTree.c_update)++++c_insertMultiRBT :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0)+c_insertMultiRBT x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_setInsertEquivalence(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_61_61))))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_update(x1)))(Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_setInsertEquivalence(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.SetRBT.c_insertMultiRBT'46_'35lambda2))))(st))(st)++++c_insertMultiRBT'46_'35lambda2 :: (Curry t27) => t27 -> t27 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_insertMultiRBT'46_'35lambda2 x1 x2 st = Curry.Module.Prelude.C_False++++c_deleteRBT :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0))+c_deleteRBT st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.RedBlackTree.c_delete)++++c_setRBT2list :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0)+c_setRBT2list st = Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_tree2list)++++c_unionRBT :: (Curry t0) => (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_unionRBT x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.SetRBT.c_insertRBT(st))(x2)(Curry.Module.Prelude.c_apply(Curry.Module.SetRBT.c_setRBT2list(st))(x1)(st))(st)++++c_intersectRBT :: (Curry t0) => (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> (Curry.Module.RedBlackTree.C_RedBlackTree t0) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree t0+c_intersectRBT x1 x2 st = Curry.Module.Prelude.c_foldr(Curry.Module.SetRBT.c_insertRBT(st))(Curry.Module.RedBlackTree.c_newTreeLike(x1)(st))(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.pf(Curry.Module.SetRBT.c_intersectRBT'46_'35lambda3(x2)))(Curry.Module.Prelude.c_apply(Curry.Module.SetRBT.c_setRBT2list(st))(x1)(st))(st))(st)++++c_intersectRBT'46_'35lambda3 :: (Curry t46) => (Curry.Module.RedBlackTree.C_RedBlackTree t46) -> t46 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_intersectRBT'46_'35lambda3 x1 x2 st = Curry.Module.Prelude.c_apply(Curry.Module.SetRBT.c_elemRBT(x2)(st))(x1)(st)++++c_sortRBT :: (Curry t0) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0))+c_sortRBT st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.RedBlackTree.c_sort)++
+ dist/build/Curry/Module/Socket.hs view
@@ -0,0 +1,128 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Socket (module Curry.Module.Socket) where++import Curry.RunTimeSystem+import Curry.Module.IO+import Curry.Module.Prelude+import Curry.Module.System++++-- begin included++++import Network+import Network.Socket +import Control.Concurrent+import System.IO (Handle)++type C_Socket = Prim Socket++instance Read Socket where++instance Generate Socket where+  genFree  = error "no random sockets"+  maxArity = error "no narrowing on sockets"++instance ConvertCH C_Int PortID where+  toCurry (PortNumber i) = toCurry (toInteger i)+  fromCurry i = PortNumber (fromInteger (fromCurry i))++prim_listenOn :: C_Int -> Result (C_IO C_Socket)+prim_listenOn  = Curry.Module.Prelude.ioFunc1 listenOn ++listenOnFresh :: Result (C_IO (T2 C_Int C_Socket))+listenOnFresh  = Curry.Module.Prelude.ioFunc0 listenOnFreshPort++listenOnFreshPort :: IO (PortID,Socket)+listenOnFreshPort = do+  s <- listenOn (PortNumber aNY_PORT)+  p <- Network.socketPort s+  Prelude.return (p,s)+++prim_socketListen :: C_Socket -> C_Int -> Result (C_IO T0)+prim_socketListen  = Curry.Module.Prelude.ioFunc2 listen++prim_socketAccept :: C_Socket -> Result (C_IO (T2 (List C_Char) C_Handle))+prim_socketAccept  = +  ioFunc1 (\ s -> do {(h,s,_) <- Network.accept s; Prelude.return (s,One h)})++prim_waitForSocketAccept :: C_Socket -> C_Int -> Result (C_IO (C_Maybe (T2 (List C_Char) C_Handle)))+prim_waitForSocketAccept  = Curry.Module.Prelude.ioFunc2 wait++wait :: Socket -> Int -> IO (Maybe (String,IOHandle))+wait s t = do+  mv <- newEmptyMVar+  tacc <- forkIO (do {(h,s,_) <- Network.accept s; putMVar mv (Just (s,One h))})+  ttim <- forkIO (do {threadDelay (t*1000); putMVar mv Nothing})+  res <- takeMVar mv+  maybe (killThread tacc) (\_ -> killThread ttim) res+  Prelude.return res++prim_connectToSocket :: List C_Char -> C_Int -> Result (C_IO C_Handle)+prim_connectToSocket  = +  ioFunc2 (\ s i -> do {ct <- connectTo s i; Prelude.return (One ct)})++++-- end included++c_listenOn :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Socket.C_Socket+c_listenOn x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Socket.c_prim_listenOn))(x1)(st)++++c_socketListen :: Curry.Module.Socket.C_Socket -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_socketListen x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Socket.c_prim_socketListen))(x1)(st))(x2)(st)++++c_socketAccept :: Curry.Module.Socket.C_Socket -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.IO.C_Handle)+c_socketAccept x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Socket.c_prim_socketAccept))(x1)(st)++++c_waitForSocketAccept :: Curry.Module.Socket.C_Socket -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.IO.C_Handle))+c_waitForSocketAccept x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Socket.c_prim_waitForSocketAccept))(x1)(st))(x2)(st)++++c_connectToSocket :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.IO.C_Handle+c_connectToSocket x1 x2 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Socket.c_prim_connectToSocket))(x1)(st))(x2)(st)++++c_prim_listenOn :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Socket.C_Socket+c_prim_listenOn x1 st = Curry.Module.Socket.prim_listenOn(x1)(st)++++c_listenOnFresh :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 Curry.Module.Prelude.C_Int Curry.Module.Socket.C_Socket)+c_listenOnFresh st = Curry.Module.Socket.listenOnFresh(st)++++c_prim_socketListen :: Curry.Module.Socket.C_Socket -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_socketListen x1 x2 st = Curry.Module.Socket.prim_socketListen(x1)(x2)(st)++++c_prim_socketAccept :: Curry.Module.Socket.C_Socket -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.IO.C_Handle)+c_prim_socketAccept x1 st = Curry.Module.Socket.prim_socketAccept(x1)(st)++++c_prim_waitForSocketAccept :: Curry.Module.Socket.C_Socket -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) Curry.Module.IO.C_Handle))+c_prim_waitForSocketAccept x1 x2 st = Curry.Module.Socket.prim_waitForSocketAccept(x1)(x2)(st)++++c_prim_connectToSocket :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.IO.C_Handle+c_prim_connectToSocket x1 x2 st = Curry.Module.Socket.prim_connectToSocket(x1)(x2)(st)++
+ dist/build/Curry/Module/Sort.hs view
@@ -0,0 +1,367 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Sort (module Curry.Module.Sort) where++import Curry.RunTimeSystem+import Curry.Module.Char+import Curry.Module.Prelude++++-- begin included++++-- end included++c_quickSort :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_quickSort x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_quickSort x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = let {x5 = Curry.Module.Sort.c_quickSort'46split'466(x1)(x3)(x4)(st)} in Curry.Module.Prelude.op_43_43(Curry.Module.Sort.c_quickSort(x1)(Curry.Module.Sort.c_quickSort'46_'35selFP6'35l(x5)(st))(st))((Curry.Module.Prelude.:<)(x3)(Curry.Module.Sort.c_quickSort(x1)(Curry.Module.Sort.c_quickSort'46_'35selFP7'35r(x5)(st))(st)))(st)+c_quickSort x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort(x1)(x)(st))(i)(xs)(st)+c_quickSort x1 x st = Curry.RunTimeSystem.patternFail("Sort.quickSort")(x)++++c_quickSort'46split'466 :: (Curry t8) => (Curry.Module.Prelude.Prim (t8 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t8 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> t8 -> (Curry.Module.Prelude.List t8) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t8) (Curry.Module.Prelude.List t8)+c_quickSort'46split'466 x1 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.List)+c_quickSort'46split'466 x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = let {x6 = Curry.Module.Sort.c_quickSort'46split'466(x1)(x2)(x5)(st)} in let {x7 = Curry.Module.Sort.c_quickSort'46split'466'46_'35selFP3'35l(x6)(st)} in let {x8 = Curry.Module.Sort.c_quickSort'46split'466'46_'35selFP4'35r(x6)(st)} in Curry.Module.Sort.c_quickSort'46split'466_case_30(x1)(x2)(x4)(x7)(x8)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x2)(st))(st)+c_quickSort'46split'466 x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46split'466(x1)(x2)(x)(st))(i)(xs)(st)+c_quickSort'46split'466 x1 x2 x st = Curry.RunTimeSystem.patternFail("Sort.quickSort.split.6")(x)++++c_quickSort'46split'466'46_'35selFP3'35l :: (Curry t8) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t8) (Curry.Module.Prelude.List t8)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t8+c_quickSort'46split'466'46_'35selFP3'35l x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_quickSort'46split'466'46_'35selFP3'35l (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46split'466'46_'35selFP3'35l(x)(st))(i)(xs)(st)+c_quickSort'46split'466'46_'35selFP3'35l x st = Curry.RunTimeSystem.patternFail("Sort.quickSort.split.6._#selFP3#l")(x)++++c_quickSort'46split'466'46_'35selFP4'35r :: (Curry t8) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t8) (Curry.Module.Prelude.List t8)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t8+c_quickSort'46split'466'46_'35selFP4'35r x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_quickSort'46split'466'46_'35selFP4'35r (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46split'466'46_'35selFP4'35r(x)(st))(i)(xs)(st)+c_quickSort'46split'466'46_'35selFP4'35r x st = Curry.RunTimeSystem.patternFail("Sort.quickSort.split.6._#selFP4#r")(x)++++c_quickSort'46_'35selFP6'35l :: (Curry t8) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t8) (Curry.Module.Prelude.List t8)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t8+c_quickSort'46_'35selFP6'35l x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_quickSort'46_'35selFP6'35l (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46_'35selFP6'35l(x)(st))(i)(xs)(st)+c_quickSort'46_'35selFP6'35l x st = Curry.RunTimeSystem.patternFail("Sort.quickSort._#selFP6#l")(x)++++c_quickSort'46_'35selFP7'35r :: (Curry t8) => (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t8) (Curry.Module.Prelude.List t8)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t8+c_quickSort'46_'35selFP7'35r x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_quickSort'46_'35selFP7'35r (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46_'35selFP7'35r(x)(st))(i)(xs)(st)+c_quickSort'46_'35selFP7'35r x st = Curry.RunTimeSystem.patternFail("Sort.quickSort._#selFP7#r")(x)++++c_mergeSort :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_mergeSort x1 x2 st = Curry.Module.Sort.c_mergeSort'46mergeLists'4616(x1)(Curry.Module.Sort.c_mergeSort'46genRuns'4616(x1)(x2)(st))(st)++++c_mergeSort'46genRuns'4616 :: (Curry t79) => (Curry.Module.Prelude.Prim (t79 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t79 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t79) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t79)+c_mergeSort'46genRuns'4616 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_mergeSort'46genRuns'4616 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Sort.c_mergeSort'46genRuns'4616_case_28(x1)(x3)(x4)(st)+c_mergeSort'46genRuns'4616 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46genRuns'4616(x1)(x)(st))(i)(xs)(st)+c_mergeSort'46genRuns'4616 x1 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.genRuns.16")(x)++++c_mergeSort'46mergePairs'4616 :: (Curry t79) => (Curry.Module.Prelude.Prim (t79 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t79 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List t79)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.List t79)+c_mergeSort'46mergePairs'4616 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_mergeSort'46mergePairs'4616 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Sort.c_mergeSort'46mergePairs'4616_case_25(x1)(x3)(x4)(st)+c_mergeSort'46mergePairs'4616 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46mergePairs'4616(x1)(x)(st))(i)(xs)(st)+c_mergeSort'46mergePairs'4616 x1 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.mergePairs.16")(x)++++c_mergeSort'46mergeLists'4616 :: (Curry t79) => (Curry.Module.Prelude.Prim (t79 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t79 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.List t79)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t79+c_mergeSort'46mergeLists'4616 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.List+c_mergeSort'46mergeLists'4616 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Sort.c_mergeSort'46mergeLists'4616_case_24(x1)(x3)(x4)(st)+c_mergeSort'46mergeLists'4616 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46mergeLists'4616(x1)(x)(st))(i)(xs)(st)+c_mergeSort'46mergeLists'4616 x1 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.mergeLists.16")(x)++++c_merge :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_merge x1 x2@Curry.Module.Prelude.List x3 st = x3+c_merge x1 x2@((Curry.Module.Prelude.:<) x4 x5) x3 st = Curry.Module.Sort.c_merge_case_23(x1)(x4)(x5)(x3)(st)+c_merge x1 (Curry.Module.Prelude.ListOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_merge(x1)(x)(x3)(st))(i)(xs)(st)+c_merge x1 x x3 st = Curry.RunTimeSystem.patternFail("Sort.merge")(x)++++c_leqList :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_leqList x1 x2@Curry.Module.Prelude.List x3 st = Curry.Module.Prelude.C_True+c_leqList x1 x2@((Curry.Module.Prelude.:<) x4 x5) x3 st = Curry.Module.Sort.c_leqList_case_20(x1)(x4)(x5)(x3)(st)+c_leqList x1 (Curry.Module.Prelude.ListOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqList(x1)(x)(x3)(st))(i)(xs)(st)+c_leqList x1 x x3 st = Curry.RunTimeSystem.patternFail("Sort.leqList")(x)++++c_cmpList :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering))) -> (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_cmpList x1 x2@Curry.Module.Prelude.List x3 st = Curry.Module.Sort.c_cmpList_case_17(x3)(st)+c_cmpList x1 x2@((Curry.Module.Prelude.:<) x6 x7) x3 st = Curry.Module.Sort.c_cmpList_case_16(x1)(x6)(x7)(x3)(st)+c_cmpList x1 (Curry.Module.Prelude.ListOr i xs) x3 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpList(x1)(x)(x3)(st))(i)(xs)(st)+c_cmpList x1 x x3 st = Curry.RunTimeSystem.patternFail("Sort.cmpList")(x)++++c_leqChar :: Curry.Module.Prelude.C_Char -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_leqChar x1 x2 st = Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(x2)(st))(st)++++c_cmpChar :: Curry.Module.Prelude.C_Char -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_cmpChar x1 x2 st = Curry.Module.Sort.c_cmpChar_case_13(x1)(x2)(Curry.Module.Prelude.op_61_61(x1)(x2)(st))(st)++++c_leqCharIgnoreCase :: Curry.Module.Prelude.C_Char -> Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_leqCharIgnoreCase x1 x2 st = Curry.Module.Prelude.op_60_61(Curry.Module.Prelude.c_ord(Curry.Module.Char.c_toUpper(x1)(st))(st))(Curry.Module.Prelude.c_ord(Curry.Module.Char.c_toUpper(x2)(st))(st))(st)++++c_leqString :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))+c_leqString st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_leqList(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_leqChar)))++++c_cmpString :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering))+c_cmpString st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_cmpList(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_cmpChar)))++++c_leqStringIgnoreCase :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))+c_leqStringIgnoreCase st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_leqList(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Sort.c_leqCharIgnoreCase)))++++c_leqLexGerman :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_leqLexGerman x1@Curry.Module.Prelude.List x2 st = Curry.Module.Prelude.C_True+c_leqLexGerman x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.Sort.c_leqLexGerman_case_11(x3)(x4)(x2)(st)+c_leqLexGerman (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman(x)(x2)(st))(i)(xs)(st)+c_leqLexGerman x x2 st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman")(x)++++c_leqLexGerman'46glex'4689 :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_leqLexGerman'46glex'4689 x1 st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_8(x1)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62_61(x1)(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(Curry.Module.Prelude.op_60_61(x1)(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('Z'))(st))(st))(st))(st)++++c_leqLexGerman'46glex'4689_case_8 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_43(x1)(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st))(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('A'))(st))(st))(st)+c_leqLexGerman'46glex'4689_case_8 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_7(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_8 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_8(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_8 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_8")(x)++++c_leqLexGerman'46glex'4689_case_7 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st)+c_leqLexGerman'46glex'4689_case_7 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_6(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_7 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_7(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_7 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_7")(x)++++c_leqLexGerman'46glex'4689_case_6 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('o'))(st)+c_leqLexGerman'46glex'4689_case_6 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_5(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_6 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_6(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_6 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_6")(x)++++c_leqLexGerman'46glex'4689_case_5 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('u'))(st)+c_leqLexGerman'46glex'4689_case_5 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_4(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_5 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_5(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_5 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_5")(x)++++c_leqLexGerman'46glex'4689_case_4 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('a'))(st)+c_leqLexGerman'46glex'4689_case_4 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_3(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_4 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_4(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_4 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_4")(x)++++c_leqLexGerman'46glex'4689_case_3 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('o'))(st)+c_leqLexGerman'46glex'4689_case_3 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_2(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_3 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_3(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_3 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_3")(x)++++c_leqLexGerman'46glex'4689_case_2 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('u'))(st)+c_leqLexGerman'46glex'4689_case_2 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_1(x1)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))(st))(st)+c_leqLexGerman'46glex'4689_case_2 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_2(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_2 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_2")(x)++++c_leqLexGerman'46glex'4689_case_1 x1 x2@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('s'))(st)+c_leqLexGerman'46glex'4689_case_1 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_0(x1)(Curry.Module.Prelude.c_otherwise(st))(st)+c_leqLexGerman'46glex'4689_case_1 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_1(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_1 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_1")(x)++++c_leqLexGerman'46glex'4689_case_0 x1 x2@Curry.Module.Prelude.C_True st = x1+c_leqLexGerman'46glex'4689_case_0 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman'46glex'4689_case_0(x1)(x)(st))(i)(xs)(st)+c_leqLexGerman'46glex'4689_case_0 x1 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman.glex.89_case_0")(x)++++c_leqLexGerman_case_11 x3 x4 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_False+c_leqLexGerman_case_11 x3 x4 x2@((Curry.Module.Prelude.:<) x5 x6) st = let {x7 = Curry.Module.Sort.c_leqLexGerman'46glex'4689(Curry.Module.Prelude.c_ord(x3)(st))(st)} in let {x8 = Curry.Module.Sort.c_leqLexGerman'46glex'4689(Curry.Module.Prelude.c_ord(x5)(st))(st)} in Curry.Module.Sort.c_leqLexGerman_case_10(x4)(x6)(x7)(x8)(Curry.Module.Prelude.op_61_61(x7)(x8)(st))(st)+c_leqLexGerman_case_11 x3 x4 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman_case_11(x3)(x4)(x)(st))(i)(xs)(st)+c_leqLexGerman_case_11 x3 x4 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman_case_11")(x)++++c_leqLexGerman_case_10 x4 x6 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Sort.c_leqLexGerman(x4)(x6)(st)+c_leqLexGerman_case_10 x4 x6 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqLexGerman_case_9(x7)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_leqLexGerman_case_10 x4 x6 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman_case_10(x4)(x6)(x7)(x8)(x)(st))(i)(xs)(st)+c_leqLexGerman_case_10 x4 x6 x7 x8 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman_case_10")(x)++++c_leqLexGerman_case_9 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_60(x7)(x8)(st)+c_leqLexGerman_case_9 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqLexGerman_case_9(x7)(x8)(x)(st))(i)(xs)(st)+c_leqLexGerman_case_9 x7 x8 x st = Curry.RunTimeSystem.patternFail("Sort.leqLexGerman_case_9")(x)++++c_cmpChar_case_13 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_EQ+c_cmpChar_case_13 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_cmpChar_case_12(x1)(x2)(Curry.Module.Prelude.op_60(Curry.Module.Prelude.c_ord(x1)(st))(Curry.Module.Prelude.c_ord(x2)(st))(st))(st)+c_cmpChar_case_13 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpChar_case_13(x1)(x2)(x)(st))(i)(xs)(st)+c_cmpChar_case_13 x1 x2 x st = Curry.RunTimeSystem.patternFail("Sort.cmpChar_case_13")(x)++++c_cmpChar_case_12 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_LT+c_cmpChar_case_12 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_GT+c_cmpChar_case_12 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpChar_case_12(x1)(x2)(x)(st))(i)(xs)(st)+c_cmpChar_case_12 x1 x2 x st = Curry.RunTimeSystem.patternFail("Sort.cmpChar_case_12")(x)++++c_cmpList_case_16 x1 x6 x7 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_GT+c_cmpList_case_16 x1 x6 x7 x3@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Sort.c_cmpList_case_15(x1)(x6)(x7)(x8)(x9)(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x6)(st))(x8)(st))(Curry.Module.Prelude.C_EQ)(st))(st)+c_cmpList_case_16 x1 x6 x7 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpList_case_16(x1)(x6)(x7)(x)(st))(i)(xs)(st)+c_cmpList_case_16 x1 x6 x7 x st = Curry.RunTimeSystem.patternFail("Sort.cmpList_case_16")(x)++++c_cmpList_case_15 x1 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_True st = Curry.Module.Sort.c_cmpList(x1)(x7)(x9)(st)+c_cmpList_case_15 x1 x6 x7 x8 x9 x10@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_cmpList_case_14(x1)(x6)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_cmpList_case_15 x1 x6 x7 x8 x9 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpList_case_15(x1)(x6)(x7)(x8)(x9)(x)(st))(i)(xs)(st)+c_cmpList_case_15 x1 x6 x7 x8 x9 x st = Curry.RunTimeSystem.patternFail("Sort.cmpList_case_15")(x)++++c_cmpList_case_14 x1 x6 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x6)(st))(x8)(st)+c_cmpList_case_14 x1 x6 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpList_case_14(x1)(x6)(x8)(x)(st))(i)(xs)(st)+c_cmpList_case_14 x1 x6 x8 x st = Curry.RunTimeSystem.patternFail("Sort.cmpList_case_14")(x)++++c_cmpList_case_17 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_EQ+c_cmpList_case_17 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Prelude.C_LT+c_cmpList_case_17 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_cmpList_case_17(x)(st))(i)(xs)(st)+c_cmpList_case_17 x st = Curry.RunTimeSystem.patternFail("Sort.cmpList_case_17")(x)++++c_leqList_case_20 x1 x4 x5 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.C_False+c_leqList_case_20 x1 x4 x5 x3@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Sort.c_leqList_case_19(x1)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.op_61_61(x4)(x6)(st))(st)+c_leqList_case_20 x1 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqList_case_20(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_leqList_case_20 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("Sort.leqList_case_20")(x)++++c_leqList_case_19 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = Curry.Module.Sort.c_leqList(x1)(x5)(x7)(st)+c_leqList_case_19 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_leqList_case_18(x1)(x4)(x6)(Curry.Module.Prelude.c_otherwise(st))(st)+c_leqList_case_19 x1 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqList_case_19(x1)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_leqList_case_19 x1 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Sort.leqList_case_19")(x)++++c_leqList_case_18 x1 x4 x6 x7@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x6)(st)+c_leqList_case_18 x1 x4 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_leqList_case_18(x1)(x4)(x6)(x)(st))(i)(xs)(st)+c_leqList_case_18 x1 x4 x6 x st = Curry.RunTimeSystem.patternFail("Sort.leqList_case_18")(x)++++c_merge_case_23 x1 x4 x5 x3@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(x4)(x5)+c_merge_case_23 x1 x4 x5 x3@((Curry.Module.Prelude.:<) x6 x7) st = Curry.Module.Sort.c_merge_case_22(x1)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x4)(st))(x6)(st))(st)+c_merge_case_23 x1 x4 x5 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_merge_case_23(x1)(x4)(x5)(x)(st))(i)(xs)(st)+c_merge_case_23 x1 x4 x5 x st = Curry.RunTimeSystem.patternFail("Sort.merge_case_23")(x)++++c_merge_case_22 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x4)(Curry.Module.Sort.c_merge(x1)(x5)((Curry.Module.Prelude.:<)(x6)(x7))(st))+c_merge_case_22 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_merge_case_21(x1)(x4)(x5)(x6)(x7)(Curry.Module.Prelude.c_otherwise(st))(st)+c_merge_case_22 x1 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_merge_case_22(x1)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_merge_case_22 x1 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Sort.merge_case_22")(x)++++c_merge_case_21 x1 x4 x5 x6 x7 x8@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(x6)(Curry.Module.Sort.c_merge(x1)((Curry.Module.Prelude.:<)(x4)(x5))(x7)(st))+c_merge_case_21 x1 x4 x5 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_merge_case_21(x1)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_merge_case_21 x1 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Sort.merge_case_21")(x)++++c_mergeSort'46mergeLists'4616_case_24 x1 x3 x4@Curry.Module.Prelude.List st = x3+c_mergeSort'46mergeLists'4616_case_24 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Sort.c_mergeSort'46mergeLists'4616(x1)((Curry.Module.Prelude.:<)(Curry.Module.Sort.c_merge(x1)(x3)(x5)(st))(Curry.Module.Sort.c_mergeSort'46mergePairs'4616(x1)(x6)(st)))(st)+c_mergeSort'46mergeLists'4616_case_24 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46mergeLists'4616_case_24(x1)(x3)(x)(st))(i)(xs)(st)+c_mergeSort'46mergeLists'4616_case_24 x1 x3 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.mergeLists.16_case_24")(x)++++c_mergeSort'46mergePairs'4616_case_25 x1 x3 x4@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List)+c_mergeSort'46mergePairs'4616_case_25 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = (Curry.Module.Prelude.:<)(Curry.Module.Sort.c_merge(x1)(x3)(x5)(st))(Curry.Module.Sort.c_mergeSort'46mergePairs'4616(x1)(x6)(st))+c_mergeSort'46mergePairs'4616_case_25 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46mergePairs'4616_case_25(x1)(x3)(x)(st))(i)(xs)(st)+c_mergeSort'46mergePairs'4616_case_25 x1 x3 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.mergePairs.16_case_25")(x)++++c_mergeSort'46genRuns'4616_case_28 x1 x3 x4@Curry.Module.Prelude.List st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List))(Curry.Module.Prelude.List)+c_mergeSort'46genRuns'4616_case_28 x1 x3 x4@((Curry.Module.Prelude.:<) x5 x6) st = Curry.Module.Sort.c_mergeSort'46genRuns'4616_case_27(x1)(x3)(x5)(x6)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(x3)(st))(x5)(st))(st)+c_mergeSort'46genRuns'4616_case_28 x1 x3 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46genRuns'4616_case_28(x1)(x3)(x)(st))(i)(xs)(st)+c_mergeSort'46genRuns'4616_case_28 x1 x3 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.genRuns.16_case_28")(x)++++c_mergeSort'46genRuns'4616_case_27 x1 x3 x5 x6 x7@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x3)((Curry.Module.Prelude.:<)(x5)(Curry.Module.Prelude.List)))(Curry.Module.Sort.c_mergeSort'46genRuns'4616(x1)(x6)(st))+c_mergeSort'46genRuns'4616_case_27 x1 x3 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_mergeSort'46genRuns'4616_case_26(x1)(x3)(x5)(x6)(Curry.Module.Prelude.c_otherwise(st))(st)+c_mergeSort'46genRuns'4616_case_27 x1 x3 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46genRuns'4616_case_27(x1)(x3)(x5)(x6)(x)(st))(i)(xs)(st)+c_mergeSort'46genRuns'4616_case_27 x1 x3 x5 x6 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.genRuns.16_case_27")(x)++++c_mergeSort'46genRuns'4616_case_26 x1 x3 x5 x6 x7@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(x5)((Curry.Module.Prelude.:<)(x3)(Curry.Module.Prelude.List)))(Curry.Module.Sort.c_mergeSort'46genRuns'4616(x1)(x6)(st))+c_mergeSort'46genRuns'4616_case_26 x1 x3 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_mergeSort'46genRuns'4616_case_26(x1)(x3)(x5)(x6)(x)(st))(i)(xs)(st)+c_mergeSort'46genRuns'4616_case_26 x1 x3 x5 x6 x st = Curry.RunTimeSystem.patternFail("Sort.mergeSort.genRuns.16_case_26")(x)++++c_quickSort'46split'466_case_30 x1 x2 x4 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2((Curry.Module.Prelude.:<)(x4)(x7))(x8)+c_quickSort'46split'466_case_30 x1 x2 x4 x7 x8 x9@Curry.Module.Prelude.C_False st = Curry.Module.Sort.c_quickSort'46split'466_case_29(x4)(x7)(x8)(Curry.Module.Prelude.c_otherwise(st))(st)+c_quickSort'46split'466_case_30 x1 x2 x4 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46split'466_case_30(x1)(x2)(x4)(x7)(x8)(x)(st))(i)(xs)(st)+c_quickSort'46split'466_case_30 x1 x2 x4 x7 x8 x st = Curry.RunTimeSystem.patternFail("Sort.quickSort.split.6_case_30")(x)++++c_quickSort'46split'466_case_29 x4 x7 x8 x9@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.T2(x7)((Curry.Module.Prelude.:<)(x4)(x8))+c_quickSort'46split'466_case_29 x4 x7 x8 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Sort.c_quickSort'46split'466_case_29(x4)(x7)(x8)(x)(st))(i)(xs)(st)+c_quickSort'46split'466_case_29 x4 x7 x8 x st = Curry.RunTimeSystem.patternFail("Sort.quickSort.split.6_case_29")(x)++
+ dist/build/Curry/Module/StyledText.hs view
@@ -0,0 +1,501 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.StyledText (module Curry.Module.StyledText) where++import Curry.RunTimeSystem+import Curry.Module.AnsiCodes+import Curry.Module.Prelude+import Curry.Module.Pretty+import Curry.Module.Char++++-- begin included++++-- end included++type C_ShowS = (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char++c_boldChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_boldChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(st)++++c_underlineChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_underlineChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(st)++++c_endChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_endChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(st)++++c_blackChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_blackChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_blueChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_blueChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_cyanChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_cyanChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_greenChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_greenChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_magentaChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_magentaChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_redChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_redChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_whiteChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_whiteChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_yellowChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_yellowChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgBlackChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgBlackChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgBlueChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgBlueChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgCyanChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgCyanChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgGreenChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgGreenChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgMagentaChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgMagentaChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgRedChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgRedChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgWhiteChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgWhiteChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bgYellowChar :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Char+c_bgYellowChar st = Curry.Module.Prelude.c_chr(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st)++++c_bold :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bold st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_boldChar(st)))++++c_underline :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_underline st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_underlineChar(st)))++++c_black :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_black st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_blackChar(st)))++++c_blue :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_blue st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_blueChar(st)))++++c_cyan :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_cyan st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_cyanChar(st)))++++c_green :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_green st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_greenChar(st)))++++c_magenta :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_magenta st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_magentaChar(st)))++++c_red :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_red st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_redChar(st)))++++c_white :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_white st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_whiteChar(st)))++++c_yellow :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_yellow st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_yellowChar(st)))++++c_bgBlack :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgBlack st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgBlackChar(st)))++++c_bgBlue :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgBlue st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgBlueChar(st)))++++c_bgCyan :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgCyan st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgCyanChar(st)))++++c_bgGreen :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgGreen st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgGreenChar(st)))++++c_bgMagenta :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgMagenta st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgMagentaChar(st)))++++c_bgRed :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgRed st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgRedChar(st)))++++c_bgWhite :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgWhite st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgWhiteChar(st)))++++c_bgYellow :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_bgYellow st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_encl(Curry.Module.StyledText.c_bgYellowChar(st)))++++c_encl :: Curry.Module.Prelude.C_Char -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_encl x1 x2 st = (Curry.Module.Prelude.:<)(x1)(Curry.Module.Prelude.op_43_43(x2)((Curry.Module.Prelude.:<)(Curry.Module.StyledText.c_endChar(st))(Curry.Module.Prelude.List))(st))++++c_boldS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_boldS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_boldChar(st)))++++c_underlineS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_underlineS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_underlineChar(st)))++++c_blackS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_blackS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_blackChar(st)))++++c_blueS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_blueS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_blueChar(st)))++++c_cyanS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_cyanS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_cyanChar(st)))++++c_greenS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_greenS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_greenChar(st)))++++c_magentaS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_magentaS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_magentaChar(st)))++++c_redS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_redS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_redChar(st)))++++c_whiteS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_whiteS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_whiteChar(st)))++++c_yellowS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_yellowS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_yellowChar(st)))++++c_bgBlackS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgBlackS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgBlackChar(st)))++++c_bgBlueS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgBlueS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgBlueChar(st)))++++c_bgCyanS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgCyanS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgCyanChar(st)))++++c_bgGreenS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgGreenS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgGreenChar(st)))++++c_bgMagentaS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgMagentaS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgMagentaChar(st)))++++c_bgRedS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgRedS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgRedChar(st)))++++c_bgWhiteS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgWhiteS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgWhiteChar(st)))++++c_bgYellowS :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_bgYellowS st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_enclS(Curry.Module.StyledText.c_bgYellowChar(st)))++++c_enclS :: Curry.Module.Prelude.C_Char -> (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_enclS x1 x2 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc((Curry.Module.Prelude.:<)(x1)))(Curry.Module.Prelude.op_46(x2)(Curry.Module.Prelude.pc((Curry.Module.Prelude.:<)(Curry.Module.StyledText.c_endChar(st))))(st))(st)++++c_boldDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_boldDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_boldChar(st))(st)++++c_underlineDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_underlineDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_underlineChar(st))(st)++++c_blackDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_blackDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_blackChar(st))(st)++++c_blueDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_blueDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_blueChar(st))(st)++++c_cyanDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_cyanDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_cyanChar(st))(st)++++c_greenDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_greenDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_greenChar(st))(st)++++c_magentaDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_magentaDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_magentaChar(st))(st)++++c_redDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_redDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_redChar(st))(st)++++c_whiteDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_whiteDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_whiteChar(st))(st)++++c_yellowDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_yellowDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_yellowChar(st))(st)++++c_bgBlackDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgBlackDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgBlackChar(st))(st)++++c_bgBlueDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgBlueDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgBlueChar(st))(st)++++c_bgCyanDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgCyanDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgCyanChar(st))(st)++++c_bgGreenDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgGreenDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgGreenChar(st))(st)++++c_bgMagentaDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgMagentaDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgMagentaChar(st))(st)++++c_bgRedDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgRedDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgRedChar(st))(st)++++c_bgWhiteDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgWhiteDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgWhiteChar(st))(st)++++c_bgYellowDoc :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_bgYellowDoc st = Curry.Module.StyledText.c_enclDoc(Curry.Module.StyledText.c_bgYellowChar(st))(st)++++c_enclDoc :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Pretty.C_Doc -> Curry.RunTimeSystem.State -> Curry.Module.Pretty.C_Doc)+c_enclDoc x1 st = Curry.Module.Prelude.pf(Curry.Module.Pretty.c_enclose(Curry.Module.Pretty.c_char(x1)(st))(Curry.Module.Pretty.c_char(Curry.Module.StyledText.c_endChar(st))(st)))++++c_plainText :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_plainText st = Curry.Module.Prelude.pf(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_not))(Curry.Module.Prelude.pf(Curry.Module.StyledText.c_special))(st)))++++c_special :: Curry.Module.Prelude.C_Char -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_special x1 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_elem(Curry.Module.Prelude.c_ord(x1)(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(Curry.Module.Prelude.List))))(Curry.Module.Prelude.c_enumFromTo(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st))(st))(st)++++c_interpret :: (Curry t0,Curry t1) => (Curry.Module.Prelude.List t0) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t1))) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T3 t0 t0 t0)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t1+c_interpret x1@((Curry.Module.Prelude.:<) x7 x8) x2 x3 x4 x5 x6 st = Curry.Module.StyledText.c_interpret_case_8(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x8)(st)+c_interpret (Curry.Module.Prelude.ListOr i xs) x2 x3 x4 x5 x6 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret(x)(x2)(x3)(x4)(x5)(x6)(st))(i)(xs)(st)+c_interpret x x2 x3 x4 x5 x6 st = Curry.RunTimeSystem.patternFail("StyledText.interpret")(x)++++c_interpret'46_'35selFP3'35xs :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_interpret'46_'35selFP3'35xs x1@(Curry.Module.Prelude.T2 x2 x3) st = x2+c_interpret'46_'35selFP3'35xs (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret'46_'35selFP3'35xs(x)(st))(i)(xs)(st)+c_interpret'46_'35selFP3'35xs x st = Curry.RunTimeSystem.patternFail("StyledText.interpret._#selFP3#xs")(x)++++c_interpret'46_'35selFP4'35ys :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_interpret'46_'35selFP4'35ys x1@(Curry.Module.Prelude.T2 x2 x3) st = x3+c_interpret'46_'35selFP4'35ys (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret'46_'35selFP4'35ys(x)(st))(i)(xs)(st)+c_interpret'46_'35selFP4'35ys x st = Curry.RunTimeSystem.patternFail("StyledText.interpret._#selFP4#ys")(x)++++c_printStyledText :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0)+c_printStyledText st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_putStrLn))(Curry.Module.StyledText.c_toAnsiString(st))(st)++++c_toAnsiString :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_toAnsiString st = Curry.Module.Prelude.pf(Curry.Module.StyledText.c_interpret((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bold(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_underline(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_black(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_blue(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_cyan(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_green(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_magenta(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_red(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_white(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_yellow(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgBlack(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgBlue(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgCyan(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgGreen(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgMagenta(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgRed(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgWhite(st))((Curry.Module.Prelude.:<)(Curry.Module.AnsiCodes.c_bgYellow(st))(Curry.Module.Prelude.List)))))))))))))))))))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_43_43))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_46))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T3(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_id)))(Curry.Module.Prelude.List)))++++c_interpret_case_8 x1 x2 x3 x4 x5 x6 x7 x8@((Curry.Module.Prelude.:<) x9 x10) st = Curry.Module.StyledText.c_interpret_case_7(x1)(x2)(x3)(x4)(x6)(x7)(x9)(x10)(x5)(st)+c_interpret_case_8 x1 x2 x3 x4 x5 x6 x7 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_8(x1)(x2)(x3)(x4)(x5)(x6)(x7)(x)(st))(i)(xs)(st)+c_interpret_case_8 x1 x2 x3 x4 x5 x6 x7 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_8")(x)++++c_interpret_case_7 x1 x2 x3 x4 x6 x7 x9 x10 x5@((Curry.Module.Prelude.:<) x11 x12) st = Curry.Module.StyledText.c_interpret_case_6(x1)(x2)(x3)(x4)(x6)(x7)(x9)(x10)(x12)(x11)(st)+c_interpret_case_7 x1 x2 x3 x4 x6 x7 x9 x10 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_7(x1)(x2)(x3)(x4)(x6)(x7)(x9)(x10)(x)(st))(i)(xs)(st)+c_interpret_case_7 x1 x2 x3 x4 x6 x7 x9 x10 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_7")(x)++++c_interpret_case_6 x1 x2 x3 x4 x6 x7 x9 x10 x12 x11@(Curry.Module.Prelude.T3 x13 x14 x15) st = let {x16 = Curry.Module.Prelude.op_36(x4)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(x13)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(x14)(st))(x15)(st))(st))(st)} in let {x17 = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_break(Curry.Module.Prelude.pf(Curry.Module.StyledText.c_special))(st))(x6)(st)} in let {x18 = Curry.Module.StyledText.c_interpret'46_'35selFP3'35xs(x17)(st)} in let {x19 = Curry.Module.StyledText.c_interpret'46_'35selFP4'35ys(x17)(st)} in let {x20 = Curry.Module.Prelude.c_ord(Curry.Module.Prelude.c_head(x19)(st))(st)} in let {x21 = Curry.Module.Prelude.op_33_33(x10)(Curry.Module.Prelude.op_45(x20)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))(st))(st)} in Curry.Module.StyledText.c_interpret_case_5(x1)(x2)(x3)(x4)(x7)(x9)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(Curry.Module.Prelude.c_null(x19)(st))(st)+c_interpret_case_6 x1 x2 x3 x4 x6 x7 x9 x10 x12 (Curry.Module.Prelude.T3Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_6(x1)(x2)(x3)(x4)(x6)(x7)(x9)(x10)(x12)(x)(st))(i)(xs)(st)+c_interpret_case_6 x1 x2 x3 x4 x6 x7 x9 x10 x12 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_6")(x)++++c_interpret_case_5 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.c_apply(x16)(x18)(st)+c_interpret_case_5 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_False st = Curry.Module.StyledText.c_interpret_case_4(x1)(x2)(x3)(x4)(x7)(x9)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(Curry.Module.Prelude.op_61_61(x20)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(st))(st)+c_interpret_case_5 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_5(x1)(x2)(x3)(x4)(x7)(x9)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(x)(st))(i)(xs)(st)+c_interpret_case_5 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_5")(x)++++c_interpret_case_4 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.c_apply(x16)(x18)(st))(st))(Curry.Module.StyledText.c_interpret(x1)(x2)(x3)(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T3(x7)(x14)(x15))((Curry.Module.Prelude.:<)(x11)(x12)))(Curry.Module.Prelude.c_tail(x19)(st))(st))(st)+c_interpret_case_4 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_False st = Curry.Module.StyledText.c_interpret_case_3(x1)(x2)(x3)(x4)(x9)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(Curry.Module.Prelude.op_61_61(x20)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(st))(st)+c_interpret_case_4 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_4(x1)(x2)(x3)(x4)(x7)(x9)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(x)(st))(i)(xs)(st)+c_interpret_case_4 x1 x2 x3 x4 x7 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_4")(x)++++c_interpret_case_3 x1 x2 x3 x4 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.c_apply(x16)(x18)(st))(st))(Curry.Module.StyledText.c_interpret(x1)(x2)(x3)(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T3(x9)(x14)(x15))((Curry.Module.Prelude.:<)(x11)(x12)))(Curry.Module.Prelude.c_tail(x19)(st))(st))(st)+c_interpret_case_3 x1 x2 x3 x4 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_False st = Curry.Module.StyledText.c_interpret_case_2(x1)(x2)(x3)(x4)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(Curry.Module.Prelude.op_61_61(x20)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))(st))(st)+c_interpret_case_3 x1 x2 x3 x4 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_3(x1)(x2)(x3)(x4)(x9)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(x)(st))(i)(xs)(st)+c_interpret_case_3 x1 x2 x3 x4 x9 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_3")(x)++++c_interpret_case_2 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.c_apply(x16)(x18)(st))(st))(Curry.Module.StyledText.c_interpret(x1)(x2)(x3)(x4)(x12)(Curry.Module.Prelude.c_tail(x19)(st))(st))(st)+c_interpret_case_2 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_False st = Curry.Module.StyledText.c_interpret_case_1(x1)(x2)(x3)(x4)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(Curry.Module.Prelude.op_60(x20)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(st))(st)+c_interpret_case_2 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_2(x1)(x2)(x3)(x4)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(x)(st))(i)(xs)(st)+c_interpret_case_2 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_2")(x)++++c_interpret_case_1 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.c_apply(x16)(x18)(st))(st))(Curry.Module.StyledText.c_interpret(x1)(x2)(x3)(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T3(x13)(x21)(x15))((Curry.Module.Prelude.:<)(x11)(x12)))(Curry.Module.Prelude.c_tail(x19)(st))(st))(st)+c_interpret_case_1 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x22@Curry.Module.Prelude.C_False st = Curry.Module.StyledText.c_interpret_case_0(x1)(x2)(x3)(x4)(x11)(x12)(x13)(x14)(x16)(x18)(x19)(x21)(Curry.Module.Prelude.c_otherwise(st))(st)+c_interpret_case_1 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_1(x1)(x2)(x3)(x4)(x11)(x12)(x13)(x14)(x15)(x16)(x18)(x19)(x20)(x21)(x)(st))(i)(xs)(st)+c_interpret_case_1 x1 x2 x3 x4 x11 x12 x13 x14 x15 x16 x18 x19 x20 x21 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_1")(x)++++c_interpret_case_0 x1 x2 x3 x4 x11 x12 x13 x14 x16 x18 x19 x21 x22@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_36(Curry.Module.Prelude.c_apply(x2)(Curry.Module.Prelude.c_apply(x16)(x18)(st))(st))(Curry.Module.StyledText.c_interpret(x1)(x2)(x3)(x4)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T3(x13)(x14)(x21))((Curry.Module.Prelude.:<)(x11)(x12)))(Curry.Module.Prelude.c_tail(x19)(st))(st))(st)+c_interpret_case_0 x1 x2 x3 x4 x11 x12 x13 x14 x16 x18 x19 x21 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.StyledText.c_interpret_case_0(x1)(x2)(x3)(x4)(x11)(x12)(x13)(x14)(x16)(x18)(x19)(x21)(x)(st))(i)(xs)(st)+c_interpret_case_0 x1 x2 x3 x4 x11 x12 x13 x14 x16 x18 x19 x21 x st = Curry.RunTimeSystem.patternFail("StyledText.interpret_case_0")(x)++
+ dist/build/Curry/Module/System.hs view
@@ -0,0 +1,187 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.System (module Curry.Module.System) where++import Curry.RunTimeSystem+import Curry.Module.Global+import Curry.Module.Prelude++++-- begin included++++import qualified System.Environment as SE+import qualified System.CPUTime as SC+import System.Cmd+import System.Exit+import qualified Network.BSD as NB+import System.Posix.Process++instance ConvertCH C_Int ExitCode where+   toCurry ExitSuccess = toCurry (0::Integer)+   toCurry (ExitFailure i) = toCurry i++   fromCurry i = if hi Prelude.== 0 then ExitSuccess else ExitFailure hi+     where hi = fromCurry i++getCPUTime :: Result (C_IO C_Int)+getCPUTime = ioFunc0 (SC.getCPUTime Prelude.>>= Prelude.return . (`div` 1000000000))++getElapsedTime :: Result (C_IO C_Int)+getElapsedTime = error "getElapsedTime not provided"++getArgs :: Result (C_IO (List (List C_Char)))+getArgs = ioFunc0 SE.getArgs++prim_getEnviron :: (List C_Char) -> Result (C_IO (List C_Char))+prim_getEnviron = +  ioFunc1 (\s -> do+             env <- SE.getEnvironment+             case Prelude.lookup s env of+              Nothing -> Prelude.return ""+              Just v  -> Prelude.return v)++getHostname :: Result (C_IO (List C_Char))+getHostname = ioFunc0 NB.getHostName++getPID :: Result (C_IO C_Int)+getPID = ioFunc0 (do+                    pid <- getProcessID +                    Prelude.return (toInteger pid))++getProgName :: Result (C_IO (List C_Char))+getProgName = ioFunc0 (Curry.RunTimeSystem.getProgName)+  -- conform with haskell would be: SE.getProgName++prim_system :: (List C_Char) -> Result (C_IO C_Int)+prim_system = ioFunc1 system++prim_sleep :: C_Int -> Result (C_IO T0)+prim_sleep = ioFunc1 (\ t -> do+                          system ("sleep "++Prelude.show (t::Integer)) +                          Prelude.return ())++prim_exitWith :: Curry a => C_Int -> Result (C_IO a)+prim_exitWith e _ = C_IO (\ _ -> do+  ex <- exitWith (fromCurry e) +  Prelude.return (IOVal ex))++++-- end included++c_environ :: Curry.RunTimeSystem.State -> Curry.Module.Global.C_Global (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)))+c_environ  = let {st = Prelude.Nothing} in Curry.Module.Global.c_global(Curry.Module.Prelude.List)(Curry.Module.Global.C_Temporary)++++c_getEnviron :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getEnviron x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Global.c_readGlobal(Curry.Module.System.c_environ(st))(st))(Curry.Module.Prelude.pf(Curry.Module.System.c_getEnviron'46_'35lambda2(x1)))(st)++++c_getEnviron'46_'35lambda2 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getEnviron'46_'35lambda2 x1 x2 st = Curry.Module.Prelude.c_maybe(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.System.c_prim_getEnviron))(x1)(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.c_lookup(x1)(x2)(st))(st)++++c_setEnviron :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_setEnviron x1 x2 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Global.c_readGlobal(Curry.Module.System.c_environ(st))(st))(Curry.Module.Prelude.pf(Curry.Module.System.c_setEnviron'46_'35lambda3(x1)(x2)))(st)++++c_setEnviron'46_'35lambda3 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_setEnviron'46_'35lambda3 x1 x2 x3 st = Curry.Module.Global.c_writeGlobal(Curry.Module.System.c_environ(st))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.T2(x1)(x2))(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))(st))(x3)(st)))(st)++++c_unsetEnviron :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_unsetEnviron x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Global.c_readGlobal(Curry.Module.System.c_environ(st))(st))(Curry.Module.Prelude.pf(Curry.Module.System.c_unsetEnviron'46_'35lambda4(x1)))(st)++++c_unsetEnviron'46_'35lambda4 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_unsetEnviron'46_'35lambda4 x1 x2 st = Curry.Module.Global.c_writeGlobal(Curry.Module.System.c_environ(st))(Curry.Module.Prelude.c_filter(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_flip(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Prelude.op_47_61))(x1)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))(st))(x2)(st))(st)++++c_system :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_system x1 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Global.c_readGlobal(Curry.Module.System.c_environ(st))(st))(Curry.Module.Prelude.pf(Curry.Module.System.c_system'46_'35lambda5(x1)))(st)++++c_system'46set'4614 :: (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_system'46set'4614 x1@(Curry.Module.Prelude.T2 x2 x3) st = Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))))))))(Curry.Module.Prelude.op_43_43(x2)(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('='))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(x3)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(';'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))(st))(st))(st))(st)+c_system'46set'4614 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.System.c_system'46set'4614(x)(st))(i)(xs)(st)+c_system'46set'4614 x st = Curry.RunTimeSystem.patternFail("System.system.set.14")(x)++++c_system'46_'35lambda5 :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> (Curry.Module.Prelude.List (Curry.Module.Prelude.T2 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_system'46_'35lambda5 x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.System.c_prim_system))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_concatMap(Curry.Module.Prelude.pf(Curry.Module.System.c_system'46set'4614))(st))(x2)(st))(x1)(st))(st)++++c_exitWith :: (Curry t0) => Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_exitWith x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.System.c_prim_exitWith))(x1)(st)++++c_sleep :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_sleep x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.System.c_prim_sleep))(x1)(st)++++c_getCPUTime :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getCPUTime st = Curry.Module.System.getCPUTime(st)++++c_getElapsedTime :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getElapsedTime st = Curry.Module.System.getElapsedTime(st)++++c_getArgs :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_getArgs st = Curry.Module.System.getArgs(st)++++c_prim_getEnviron :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_prim_getEnviron x1 st = Curry.Module.System.prim_getEnviron(x1)(st)++++c_getHostname :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getHostname st = Curry.Module.System.getHostname(st)++++c_getPID :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_getPID st = Curry.Module.System.getPID(st)++++c_getProgName :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)+c_getProgName st = Curry.Module.System.getProgName(st)++++c_prim_system :: (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_prim_system x1 st = Curry.Module.System.prim_system(x1)(st)++++c_prim_exitWith :: (Curry t0) => Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_prim_exitWith x1 st = Curry.Module.System.prim_exitWith(x1)(st)++++c_prim_sleep :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.T0+c_prim_sleep x1 st = Curry.Module.System.prim_sleep(x1)(st)++
+ dist/build/Curry/Module/TableRBT.hs view
@@ -0,0 +1,64 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.TableRBT (module Curry.Module.TableRBT) where++import Curry.RunTimeSystem+import Curry.Module.Prelude+import Curry.Module.RedBlackTree++++-- begin included++++-- end included++type C_TableRBT t0 t1 = Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)++c_emptyTableRBT :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)+c_emptyTableRBT x1 st = Curry.Module.RedBlackTree.c_empty(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.TableRBT.c_emptyTableRBT'46_'35lambda2))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.TableRBT.c_emptyTableRBT'46_'35lambda3))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.TableRBT.c_emptyTableRBT'46_'35lambda4(x1)))(st)++++c_emptyTableRBT'46_'35lambda2 :: (Curry t22,Curry t23) => (Curry.Module.Prelude.T2 t22 t23) -> (Curry.Module.Prelude.T2 t22 t23) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_emptyTableRBT'46_'35lambda2 x1 x2 st = Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_fst(x1)(st))(Curry.Module.Prelude.c_fst(x2)(st))(st)++++c_emptyTableRBT'46_'35lambda3 :: (Curry t22,Curry t23) => (Curry.Module.Prelude.T2 t22 t23) -> (Curry.Module.Prelude.T2 t22 t23) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_emptyTableRBT'46_'35lambda3 x1 x2 st = Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_fst(x1)(st))(Curry.Module.Prelude.c_fst(x2)(st))(st)++++c_emptyTableRBT'46_'35lambda4 :: (Curry t22,Curry t23) => (Curry.Module.Prelude.Prim (t22 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t22 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool))) -> (Curry.Module.Prelude.T2 t22 t23) -> (Curry.Module.Prelude.T2 t22 t23) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_emptyTableRBT'46_'35lambda4 x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x1)(Curry.Module.Prelude.c_fst(x2)(st))(st))(Curry.Module.Prelude.c_fst(x3)(st))(st)++++c_isEmptyTable :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool)+c_isEmptyTable st = Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_isEmpty)++++c_lookupRBT :: (Curry t0,Curry t1) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1)+c_lookupRBT x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_maybe(Curry.Module.Prelude.C_Nothing)(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pc(Curry.Module.Prelude.C_Just))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(st))))(Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_lookup(Curry.Module.Prelude.T2(x1)(Curry.Module.Prelude.c_failed(st)))))(st)++++c_updateRBT :: (Curry t0,Curry t1) => t0 -> t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1))+c_updateRBT x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_update(Curry.Module.Prelude.T2(x1)(x2)))++++c_tableRBT2list :: (Curry t0,Curry t1) => Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 t1))+c_tableRBT2list st = Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_tree2list)++++c_deleteRBT :: (Curry t0,Curry t1) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1)) -> Curry.RunTimeSystem.State -> Curry.Module.RedBlackTree.C_RedBlackTree (Curry.Module.Prelude.T2 t0 t1))+c_deleteRBT x1 st = Curry.Module.Prelude.pf(Curry.Module.RedBlackTree.c_delete(Curry.Module.Prelude.T2(x1)(Curry.Module.Prelude.c_failed(st))))++
+ dist/build/Curry/Module/Time.hs view
@@ -0,0 +1,557 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Time (module Curry.Module.Time) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++import System.Time hiding (getClockTime)+import qualified System.Time (getClockTime) +import Ix++instance ConvertCH C_ClockTime ClockTime where+  fromCurry (C_CTime i) = TOD (fromCurry i) 0+  toCurry (TOD i _) = C_CTime (toCurry i)++instance ConvertCH C_CalendarTime CalendarTime where+  fromCurry (C_CalendarTime y m d h min s tz ) = +             CalendarTime (fromCurry y) +                          (toEnum (fromCurry m-1))+                          (fromCurry d)+                          (fromCurry h)+                          (fromCurry min)+                          (fromCurry s)+                          0 undefined undefined undefined+                          (fromCurry tz)+                          undefined+           +  toCurry (CalendarTime y m d h min s _ _ _ _ tz _) = +          C_CalendarTime (toCurry y) +                         (toCurry (fromEnum m)+1) +                         (toCurry d)+                         (toCurry h)+                         (toCurry min)+                         (toCurry s)+                         (toCurry tz)+++getClockTime :: Result (C_IO C_ClockTime)+getClockTime = ioFunc0 (System.Time.getClockTime)++prim_toCalendarTime :: C_ClockTime -> Result (C_IO C_CalendarTime)+prim_toCalendarTime = ioFunc1 toCalendarTime++prim_toUTCTime :: C_ClockTime -> Result C_CalendarTime+prim_toUTCTime = extFunc1 toUTCTime++prim_toClockTime :: C_CalendarTime -> Result C_ClockTime+prim_toClockTime x _ = toCurry (toClockTime (fromCurry x))++-- end included++data C_ClockTime = C_CTime Curry.Module.Prelude.C_Int+  | C_ClockTimeFail Curry.RunTimeSystem.C_Exceptions+  | C_ClockTimeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Time.C_ClockTime)++data C_CalendarTime = C_CalendarTime Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int Curry.Module.Prelude.C_Int+  | C_CalendarTimeFail Curry.RunTimeSystem.C_Exceptions+  | C_CalendarTimeOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches Curry.Module.Time.C_CalendarTime)++instance BaseCurry Curry.Module.Time.C_ClockTime where+  nf f (Curry.Module.Time.C_CTime x1) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> f(Curry.Module.Time.C_CTime(v1))(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Time.C_CTime x1) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> f(Curry.Module.Time.C_CTime(v1))(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Time.C_ClockTimeOr(Curry.RunTimeSystem.mkRef(r)(1)(i))([Curry.Module.Time.C_CTime(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(1)++  failed  = Curry.Module.Time.C_ClockTimeFail++  branching  = Curry.Module.Time.C_ClockTimeOr++  consKind (Curry.Module.Time.C_ClockTimeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Time.C_ClockTimeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Time.C_ClockTimeFail x) = x++  orRef (Curry.Module.Time.C_ClockTimeOr x _) = x++  branches (Curry.Module.Time.C_ClockTimeOr _ x) = x++++++instance BaseCurry Curry.Module.Time.C_CalendarTime where+  nf f (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> Curry.RunTimeSystem.nfCTC(\ v5 state5 -> Curry.RunTimeSystem.nfCTC(\ v6 state6 -> Curry.RunTimeSystem.nfCTC(\ v7 state7 -> f(Curry.Module.Time.C_CalendarTime(v1)(v2)(v3)(v4)(v5)(v6)(v7))(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> Curry.RunTimeSystem.gnfCTC(\ v5 state5 -> Curry.RunTimeSystem.gnfCTC(\ v6 state6 -> Curry.RunTimeSystem.gnfCTC(\ v7 state7 -> f(Curry.Module.Time.C_CalendarTime(v1)(v2)(v3)(v4)(v5)(v6)(v7))(state7))(x7)(state6))(x6)(state5))(x5)(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = Curry.RunTimeSystem.withRef(\ r -> Curry.Module.Time.C_CalendarTimeOr(Curry.RunTimeSystem.mkRef(r)(7)(i))([Curry.Module.Time.C_CalendarTime(Curry.RunTimeSystem.generator((Prelude.+)(r)((6::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((5::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((4::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((3::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((2::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((1::Int))))(Curry.RunTimeSystem.generator((Prelude.+)(r)((0::Int))))]))(7)++  failed  = Curry.Module.Time.C_CalendarTimeFail++  branching  = Curry.Module.Time.C_CalendarTimeOr++  consKind (Curry.Module.Time.C_CalendarTimeOr _ _) = Curry.RunTimeSystem.Branching+  consKind (Curry.Module.Time.C_CalendarTimeFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (Curry.Module.Time.C_CalendarTimeFail x) = x++  orRef (Curry.Module.Time.C_CalendarTimeOr x _) = x++  branches (Curry.Module.Time.C_CalendarTimeOr _ x) = x++++++instance Curry Curry.Module.Time.C_ClockTime where+  strEq (Curry.Module.Time.C_CTime x1) (Curry.Module.Time.C_CTime y1) st = Curry.Module.Prelude.genStrEq(x1)(y1)(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Time.C_CTime x1) (Curry.Module.Time.C_CTime y1) st = Curry.Module.Prelude.genEq(x1)(y1)(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Time.C_CTime x1) st = Curry.Module.Time.C_CTime(f((0::Int))(x1)(st))++  foldCurry f c (Curry.Module.Time.C_CTime x1) st = f(x1)(c)(st)++  typeName _ = "ClockTime"++  showQ d (Curry.Module.Time.C_CTime x1) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Time.CTime "))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))+++  showQ _ (Curry.Module.Time.C_ClockTimeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Curry Curry.Module.Time.C_CalendarTime where+  strEq (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) (Curry.Module.Time.C_CalendarTime y1 y2 y3 y4 y5 y6 y7) st = Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x1)(y1)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x2)(y2)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x3)(y3)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x4)(y4)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x5)(y5)(st))(Curry.Module.Prelude.concAnd(Curry.Module.Prelude.genStrEq(x6)(y6)(st))(Curry.Module.Prelude.genStrEq(x7)(y7)(st))(st))(st))(st))(st))(st))(st)+  strEq _ x0 _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) (Curry.Module.Time.C_CalendarTime y1 y2 y3 y4 y5 y6 y7) st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x1)(y1)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x2)(y2)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x3)(y3)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x4)(y4)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x5)(y5)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.genEq(x6)(y6)(st))(Curry.Module.Prelude.genEq(x7)(y7)(st))(st))(st))(st))(st))(st))(st)+  eq _ _ _ = Curry.Module.Prelude.C_False++  propagate f (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) st = Curry.Module.Time.C_CalendarTime(f((0::Int))(x1)(st))(f((1::Int))(x2)(st))(f((2::Int))(x3)(st))(f((3::Int))(x4)(st))(f((4::Int))(x5)(st))(f((5::Int))(x6)(st))(f((6::Int))(x7)(st))++  foldCurry f c (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) st = f(x1)(f(x2)(f(x3)(f(x4)(f(x5)(f(x6)(f(x7)(c)(st))(st))(st))(st))(st))(st))(st)++  typeName _ = "CalendarTime"++  showQ d (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) = Prelude.showParen(Prelude.True)(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("Time.CalendarTime "))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x4))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x5))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x6))((Prelude..)(Prelude.showChar(' '))(Curry.Module.Prelude.showQ(Curry.RunTimeSystem.eleven)(x7))))))))))))))+++  showQ _ (Curry.Module.Time.C_CalendarTimeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Time.C_ClockTime where+  showsPrec d (Curry.Module.Time.C_CTime x1) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("CTime "))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))+++  showsPrec _ (Curry.Module.Time.C_ClockTimeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Show Curry.Module.Time.C_CalendarTime where+  showsPrec d (Curry.Module.Time.C_CalendarTime x1 x2 x3 x4 x5 x6 x7) = Prelude.showParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(showStr)+   where+    showStr  = (Prelude..)(Prelude.showString("CalendarTime "))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x1))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x2))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x3))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x4))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x5))((Prelude..)(Prelude.showChar(' '))((Prelude..)(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x6))((Prelude..)(Prelude.showChar(' '))(Prelude.showsPrec(Curry.RunTimeSystem.eleven)(x7))))))))))))))+++  showsPrec _ (Curry.Module.Time.C_CalendarTimeOr r _) = Prelude.showString((:)('_')(Prelude.show(Curry.RunTimeSystem.deref(r))))++++++instance Read Curry.Module.Time.C_ClockTime where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Time.C_CTime(x1))(r1) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Time")("CTime")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0)])(r)++++++instance Read Curry.Module.Time.C_CalendarTime where+  readsPrec d r = Prelude.readParen((Prelude.>)(d)(Curry.RunTimeSystem.ten))(\ r -> [(,)(Curry.Module.Time.C_CalendarTime(x1)(x2)(x3)(x4)(x5)(x6)(x7))(r7) | ((,) _ r0) <- Curry.RunTimeSystem.readQualified("Time")("CalendarTime")(r), ((,) x1 r1) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r0), ((,) x2 r2) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r1), ((,) x3 r3) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r2), ((,) x4 r4) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r3), ((,) x5 r5) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r4), ((,) x6 r6) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r5), ((,) x7 r7) <- Prelude.readsPrec(Curry.RunTimeSystem.eleven)(r6)])(r)++++++c_ctYear :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctYear x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x2+c_ctYear (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctYear(x)(st))(i)(xs)(st)+c_ctYear x st = Curry.RunTimeSystem.patternFail("Time.ctYear")(x)++++c_ctMonth :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctMonth x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x3+c_ctMonth (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctMonth(x)(st))(i)(xs)(st)+c_ctMonth x st = Curry.RunTimeSystem.patternFail("Time.ctMonth")(x)++++c_ctDay :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctDay x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x4+c_ctDay (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctDay(x)(st))(i)(xs)(st)+c_ctDay x st = Curry.RunTimeSystem.patternFail("Time.ctDay")(x)++++c_ctHour :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctHour x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x5+c_ctHour (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctHour(x)(st))(i)(xs)(st)+c_ctHour x st = Curry.RunTimeSystem.patternFail("Time.ctHour")(x)++++c_ctMin :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctMin x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x6+c_ctMin (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctMin(x)(st))(i)(xs)(st)+c_ctMin x st = Curry.RunTimeSystem.patternFail("Time.ctMin")(x)++++c_ctSec :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctSec x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x7+c_ctSec (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctSec(x)(st))(i)(xs)(st)+c_ctSec x st = Curry.RunTimeSystem.patternFail("Time.ctSec")(x)++++c_ctTZ :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_ctTZ x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x8+c_ctTZ (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_ctTZ(x)(st))(i)(xs)(st)+c_ctTZ x st = Curry.RunTimeSystem.patternFail("Time.ctTZ")(x)++++c_getLocalTime :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_CalendarTime+c_getLocalTime st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Time.c_getClockTime(st))(Curry.Module.Prelude.pf(Curry.Module.Time.c_getLocalTime'46_'35lambda2))(st)++++c_getLocalTime'46_'35lambda2 :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_CalendarTime+c_getLocalTime'46_'35lambda2 x1 st = Curry.Module.Time.c_toCalendarTime(x1)(st)++++c_clockTimeToInt :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_clockTimeToInt x1@(Curry.Module.Time.C_CTime x2) st = x2+c_clockTimeToInt (Curry.Module.Time.C_ClockTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_clockTimeToInt(x)(st))(i)(xs)(st)+c_clockTimeToInt x st = Curry.RunTimeSystem.patternFail("Time.clockTimeToInt")(x)++++c_toCalendarTime :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_CalendarTime+c_toCalendarTime x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Time.c_prim_toCalendarTime))(x1)(st)++++c_toUTCTime :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_CalendarTime+c_toUTCTime x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Time.c_prim_toUTCTime))(x1)(st)++++c_toClockTime :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_toClockTime x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Time.c_prim_toClockTime))(x1)(st)++++c_calendarTimeToString :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_calendarTimeToString x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.op_33_33((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('D'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))(Curry.Module.Prelude.List))))(Curry.Module.Prelude.List)))))))))))))(Curry.Module.Prelude.op_45(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x4)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Time.c_toTimeString(x1)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(Curry.Module.Prelude.c_show(x2)(st))(st))(st))(st))(st))(st))(st)+c_calendarTimeToString (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_calendarTimeToString(x)(st))(i)(xs)(st)+c_calendarTimeToString x st = Curry.RunTimeSystem.patternFail("Time.calendarTimeToString")(x)++++c_toDayString :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_toDayString x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.op_33_33((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List))))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('F'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List)))))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))(Curry.Module.Prelude.List))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))(Curry.Module.Prelude.List))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('M'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('J'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List)))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))(Curry.Module.Prelude.List)))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List))))))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('O'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List))))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('N'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('v'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List)))))))))((Curry.Module.Prelude.:<)((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('D'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))(Curry.Module.Prelude.List)))))))))(Curry.Module.Prelude.List)))))))))))))(Curry.Module.Prelude.op_45(x3)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Prelude.c_show(x4)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))(Curry.Module.Prelude.c_show(x2)(st))(st))(st))(st))(st)+c_toDayString (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_toDayString(x)(st))(i)(xs)(st)+c_toDayString x st = Curry.RunTimeSystem.patternFail("Time.toDayString")(x)++++c_toTimeString :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_toTimeString x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = Curry.Module.Prelude.op_43_43(Curry.Module.Time.c_toTimeString'46digit2'4690(x5)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List))(Curry.Module.Prelude.op_43_43(Curry.Module.Time.c_toTimeString'46digit2'4690(x6)(st))(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))(Curry.Module.Prelude.List))(Curry.Module.Time.c_toTimeString'46digit2'4690(x7)(st))(st))(st))(st))(st)+c_toTimeString (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_toTimeString(x)(st))(i)(xs)(st)+c_toTimeString x st = Curry.RunTimeSystem.patternFail("Time.toTimeString")(x)++++c_toTimeString'46digit2'4690 :: Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_toTimeString'46digit2'4690 x1 st = Curry.Module.Time.c_toTimeString'46digit2'4690_case_8(x1)(Curry.Module.Prelude.op_60(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))))(st))(st)++++c_addSeconds :: Curry.Module.Prelude.C_Int -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_addSeconds x1 x2@(Curry.Module.Time.C_CTime x3) st = Curry.Module.Time.C_CTime(Curry.Module.Prelude.op_43(x3)(x1)(st))+c_addSeconds x1 (Curry.Module.Time.C_ClockTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addSeconds(x1)(x)(st))(i)(xs)(st)+c_addSeconds x1 x st = Curry.RunTimeSystem.patternFail("Time.addSeconds")(x)++++c_addMinutes :: Curry.Module.Prelude.C_Int -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_addMinutes x1 x2@(Curry.Module.Time.C_CTime x3) st = Curry.Module.Time.C_CTime(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.op_42(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))(st))(st))+c_addMinutes x1 (Curry.Module.Time.C_ClockTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMinutes(x1)(x)(st))(i)(xs)(st)+c_addMinutes x1 x st = Curry.RunTimeSystem.patternFail("Time.addMinutes")(x)++++c_addHours :: Curry.Module.Prelude.C_Int -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_addHours x1 x2@(Curry.Module.Time.C_CTime x3) st = Curry.Module.Time.C_CTime(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.op_42(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))))))))))(st))(st))+c_addHours x1 (Curry.Module.Time.C_ClockTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addHours(x1)(x)(st))(i)(xs)(st)+c_addHours x1 x st = Curry.RunTimeSystem.patternFail("Time.addHours")(x)++++c_addDays :: Curry.Module.Prelude.C_Int -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_addDays x1 x2@(Curry.Module.Time.C_CTime x3) st = Curry.Module.Time.C_CTime(Curry.Module.Prelude.op_43(x3)(Curry.Module.Prelude.op_42(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))))))))))))))))(st))(st))+c_addDays x1 (Curry.Module.Time.C_ClockTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addDays(x1)(x)(st))(i)(xs)(st)+c_addDays x1 x st = Curry.RunTimeSystem.patternFail("Time.addDays")(x)++++c_addMonths :: Curry.Module.Prelude.C_Int -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_addMonths x1 x2 st = let {x3 = Curry.Module.Time.c_toUTCTime(x2)(st)} in let {x4 = Curry.Module.Time.c_addMonths'46_'35selFP3'35y(x3)(st)} in let {x5 = Curry.Module.Time.c_addMonths'46_'35selFP4'35mo(x3)(st)} in let {x6 = Curry.Module.Time.c_addMonths'46_'35selFP5'35d(x3)(st)} in let {x7 = Curry.Module.Time.c_addMonths'46_'35selFP6'35h(x3)(st)} in let {x8 = Curry.Module.Time.c_addMonths'46_'35selFP7'35mi(x3)(st)} in let {x9 = Curry.Module.Time.c_addMonths'46_'35selFP8'35s(x3)(st)} in let {x10 = Curry.Module.Time.c_addMonths'46_'35selFP9'35tz(x3)(st)} in let {x11 = Curry.Module.Prelude.op_43(Curry.Module.Prelude.c_mod(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(x5)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st)} in Curry.Module.Time.c_addMonths_case_7(x1)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11)(Curry.Module.Prelude.op_62(x11)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_addMonths'46_'35selFP3'35y :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP3'35y x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x2+c_addMonths'46_'35selFP3'35y (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP3'35y(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP3'35y x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP3#y")(x)++++c_addMonths'46_'35selFP4'35mo :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP4'35mo x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x3+c_addMonths'46_'35selFP4'35mo (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP4'35mo(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP4'35mo x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP4#mo")(x)++++c_addMonths'46_'35selFP5'35d :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP5'35d x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x4+c_addMonths'46_'35selFP5'35d (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP5'35d(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP5'35d x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP5#d")(x)++++c_addMonths'46_'35selFP6'35h :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP6'35h x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x5+c_addMonths'46_'35selFP6'35h (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP6'35h(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP6'35h x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP6#h")(x)++++c_addMonths'46_'35selFP7'35mi :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP7'35mi x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x6+c_addMonths'46_'35selFP7'35mi (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP7'35mi(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP7'35mi x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP7#mi")(x)++++c_addMonths'46_'35selFP8'35s :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP8'35s x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x7+c_addMonths'46_'35selFP8'35s (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP8'35s(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP8'35s x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP8#s")(x)++++c_addMonths'46_'35selFP9'35tz :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addMonths'46_'35selFP9'35tz x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x8+c_addMonths'46_'35selFP9'35tz (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths'46_'35selFP9'35tz(x)(st))(i)(xs)(st)+c_addMonths'46_'35selFP9'35tz x st = Curry.RunTimeSystem.patternFail("Time.addMonths._#selFP9#tz")(x)++++c_addYears :: Curry.Module.Prelude.C_Int -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_addYears x1 x2 st = Curry.Module.Time.c_addYears_case_6(x1)(x2)(Curry.Module.Prelude.op_61_61(x1)(Curry.Module.Prelude.C_Zero)(st))(st)++++c_addYears'46_'35selFP11'35y :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP11'35y x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x2+c_addYears'46_'35selFP11'35y (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP11'35y(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP11'35y x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP11#y")(x)++++c_addYears'46_'35selFP12'35mo :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP12'35mo x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x3+c_addYears'46_'35selFP12'35mo (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP12'35mo(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP12'35mo x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP12#mo")(x)++++c_addYears'46_'35selFP13'35d :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP13'35d x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x4+c_addYears'46_'35selFP13'35d (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP13'35d(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP13'35d x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP13#d")(x)++++c_addYears'46_'35selFP14'35h :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP14'35h x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x5+c_addYears'46_'35selFP14'35h (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP14'35h(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP14'35h x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP14#h")(x)++++c_addYears'46_'35selFP15'35mi :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP15'35mi x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x6+c_addYears'46_'35selFP15'35mi (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP15'35mi(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP15'35mi x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP15#mi")(x)++++c_addYears'46_'35selFP16'35s :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP16'35s x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x7+c_addYears'46_'35selFP16'35s (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP16'35s(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP16'35s x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP16#s")(x)++++c_addYears'46_'35selFP17'35tz :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_addYears'46_'35selFP17'35tz x1@(Curry.Module.Time.C_CalendarTime x2 x3 x4 x5 x6 x7 x8) st = x8+c_addYears'46_'35selFP17'35tz (Curry.Module.Time.C_CalendarTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears'46_'35selFP17'35tz(x)(st))(i)(xs)(st)+c_addYears'46_'35selFP17'35tz x st = Curry.RunTimeSystem.patternFail("Time.addYears._#selFP17#tz")(x)++++c_daysOfMonth :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Int+c_daysOfMonth x1 x2 st = Curry.Module.Time.c_daysOfMonth_case_5(x1)(x2)(Curry.Module.Prelude.op_47_61(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi)))(st))(st)++++c_validDate :: Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.Module.Prelude.C_Int -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_validDate x1 x2 x3 st = Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62(x2)(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_60(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_62(x3)(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_60_61(x3)(Curry.Module.Time.c_daysOfMonth(x2)(x1)(st))(st))(st))(st))(st)++++c_compareDate :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering))+c_compareDate st = Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Time.c_compareCalendarTime)++++c_compareCalendarTime :: Curry.Module.Time.C_CalendarTime -> Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_compareCalendarTime x1 x2 st = Curry.Module.Time.c_compareClockTime(Curry.Module.Time.c_toClockTime(x1)(st))(Curry.Module.Time.c_toClockTime(x2)(st))(st)++++c_compareClockTime :: Curry.Module.Time.C_ClockTime -> Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Ordering+c_compareClockTime x1@(Curry.Module.Time.C_CTime x3) x2 st = Curry.Module.Time.c_compareClockTime_case_3(x3)(x2)(st)+c_compareClockTime (Curry.Module.Time.C_ClockTimeOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_compareClockTime(x)(x2)(st))(i)(xs)(st)+c_compareClockTime x x2 st = Curry.RunTimeSystem.patternFail("Time.compareClockTime")(x)++++c_compareClockTime_case_3 x3 x2@(Curry.Module.Time.C_CTime x4) st = Curry.Module.Time.c_compareClockTime_case_2(x3)(x4)(Curry.Module.Prelude.op_60(x3)(x4)(st))(st)+c_compareClockTime_case_3 x3 (Curry.Module.Time.C_ClockTimeOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_compareClockTime_case_3(x3)(x)(st))(i)(xs)(st)+c_compareClockTime_case_3 x3 x st = Curry.RunTimeSystem.patternFail("Time.compareClockTime_case_3")(x)++++c_compareClockTime_case_2 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_LT+c_compareClockTime_case_2 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Time.c_compareClockTime_case_1(x3)(x4)(Curry.Module.Prelude.op_62(x3)(x4)(st))(st)+c_compareClockTime_case_2 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_compareClockTime_case_2(x3)(x4)(x)(st))(i)(xs)(st)+c_compareClockTime_case_2 x3 x4 x st = Curry.RunTimeSystem.patternFail("Time.compareClockTime_case_2")(x)++++c_compareClockTime_case_1 x3 x4 x5@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_GT+c_compareClockTime_case_1 x3 x4 x5@Curry.Module.Prelude.C_False st = Curry.Module.Time.c_compareClockTime_case_0(Curry.Module.Prelude.c_otherwise(st))(st)+c_compareClockTime_case_1 x3 x4 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_compareClockTime_case_1(x3)(x4)(x)(st))(i)(xs)(st)+c_compareClockTime_case_1 x3 x4 x st = Curry.RunTimeSystem.patternFail("Time.compareClockTime_case_1")(x)++++c_compareClockTime_case_0 x1@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_EQ+c_compareClockTime_case_0 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_compareClockTime_case_0(x)(st))(i)(xs)(st)+c_compareClockTime_case_0 x st = Curry.RunTimeSystem.patternFail("Time.compareClockTime_case_0")(x)++++c_daysOfMonth_case_5 x1 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.op_33_33((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))(Curry.Module.Prelude.List)))))))))))))(Curry.Module.Prelude.op_45(x1)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(st)+c_daysOfMonth_case_5 x1 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Time.c_daysOfMonth_case_4(x2)(Curry.Module.Prelude.op_38_38(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_IHi))))(st))(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_124_124(Curry.Module.Prelude.op_47_61(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))))(st))(Curry.Module.Prelude.C_Zero)(st))(Curry.Module.Prelude.op_61_61(Curry.Module.Prelude.c_mod(x2)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi))))))))))(st))(Curry.Module.Prelude.C_Zero)(st))(st))(st))(st)+c_daysOfMonth_case_5 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_daysOfMonth_case_5(x1)(x2)(x)(st))(i)(xs)(st)+c_daysOfMonth_case_5 x1 x2 x st = Curry.RunTimeSystem.patternFail("Time.daysOfMonth_case_5")(x)++++c_daysOfMonth_case_4 x2 x3@Curry.Module.Prelude.C_True st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))+c_daysOfMonth_case_4 x2 x3@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))+c_daysOfMonth_case_4 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_daysOfMonth_case_4(x2)(x)(st))(i)(xs)(st)+c_daysOfMonth_case_4 x2 x st = Curry.RunTimeSystem.patternFail("Time.daysOfMonth_case_4")(x)++++c_addYears_case_6 x1 x2 x3@Curry.Module.Prelude.C_True st = x2+c_addYears_case_6 x1 x2 x3@Curry.Module.Prelude.C_False st = let {x3 = Curry.Module.Time.c_toUTCTime(x2)(st)} in Curry.Module.Time.c_toClockTime(Curry.Module.Time.C_CalendarTime(Curry.Module.Prelude.op_43(Curry.Module.Time.c_addYears'46_'35selFP11'35y(x3)(st))(x1)(st))(Curry.Module.Time.c_addYears'46_'35selFP12'35mo(x3)(st))(Curry.Module.Time.c_addYears'46_'35selFP13'35d(x3)(st))(Curry.Module.Time.c_addYears'46_'35selFP14'35h(x3)(st))(Curry.Module.Time.c_addYears'46_'35selFP15'35mi(x3)(st))(Curry.Module.Time.c_addYears'46_'35selFP16'35s(x3)(st))(Curry.Module.Time.c_addYears'46_'35selFP17'35tz(x3)(st)))(st)+c_addYears_case_6 x1 x2 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addYears_case_6(x1)(x2)(x)(st))(i)(xs)(st)+c_addYears_case_6 x1 x2 x st = Curry.RunTimeSystem.patternFail("Time.addYears_case_6")(x)++++c_addMonths_case_7 x1 x4 x5 x6 x7 x8 x9 x10 x11 x12@Curry.Module.Prelude.C_True st = Curry.Module.Time.c_addYears(Curry.Module.Prelude.c_div(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(x5)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(Curry.Module.Time.c_toClockTime(Curry.Module.Time.C_CalendarTime(x4)(x11)(x6)(x7)(x8)(x9)(x10))(st))(st)+c_addMonths_case_7 x1 x4 x5 x6 x7 x8 x9 x10 x11 x12@Curry.Module.Prelude.C_False st = Curry.Module.Time.c_addYears(Curry.Module.Prelude.op_45(Curry.Module.Prelude.c_div(Curry.Module.Prelude.op_43(Curry.Module.Prelude.op_45(x5)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(x1)(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_IHi))(st))(Curry.Module.Time.c_toClockTime(Curry.Module.Time.C_CalendarTime(x4)(Curry.Module.Prelude.op_43(x11)(Curry.Module.Prelude.C_Pos(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_O(Curry.Module.Prelude.C_I(Curry.Module.Prelude.C_IHi)))))(st))(x6)(x7)(x8)(x9)(x10))(st))(st)+c_addMonths_case_7 x1 x4 x5 x6 x7 x8 x9 x10 x11 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_addMonths_case_7(x1)(x4)(x5)(x6)(x7)(x8)(x9)(x10)(x11)(x)(st))(i)(xs)(st)+c_addMonths_case_7 x1 x4 x5 x6 x7 x8 x9 x10 x11 x st = Curry.RunTimeSystem.patternFail("Time.addMonths_case_7")(x)++++c_toTimeString'46digit2'4690_case_8 x1 x2@Curry.Module.Prelude.C_True st = (Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('0'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.c_chr(Curry.Module.Prelude.op_43(Curry.Module.Prelude.c_ord(Curry.Module.Prelude.C_Char('0'))(st))(x1)(st))(st))(Curry.Module.Prelude.List))+c_toTimeString'46digit2'4690_case_8 x1 x2@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_show(x1)(st)+c_toTimeString'46digit2'4690_case_8 x1 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Time.c_toTimeString'46digit2'4690_case_8(x1)(x)(st))(i)(xs)(st)+c_toTimeString'46digit2'4690_case_8 x1 x st = Curry.RunTimeSystem.patternFail("Time.toTimeString.digit2.90_case_8")(x)++++c_getClockTime :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_ClockTime+c_getClockTime st = Curry.Module.Time.getClockTime(st)++++c_prim_toCalendarTime :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Time.C_CalendarTime+c_prim_toCalendarTime x1 st = Curry.Module.Time.prim_toCalendarTime(x1)(st)++++c_prim_toUTCTime :: Curry.Module.Time.C_ClockTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_CalendarTime+c_prim_toUTCTime x1 st = Curry.Module.Time.prim_toUTCTime(x1)(st)++++c_prim_toClockTime :: Curry.Module.Time.C_CalendarTime -> Curry.RunTimeSystem.State -> Curry.Module.Time.C_ClockTime+c_prim_toClockTime x1 st = Curry.Module.Time.prim_toClockTime(x1)(st)++
+ dist/build/Curry/Module/Traversal.hs view
@@ -0,0 +1,143 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Traversal (module Curry.Module.Traversal) where++import Curry.RunTimeSystem+import Curry.Module.Prelude++++-- begin included++++-- end included++type C_Traversable t0 t1 = t0 -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0))++type C_FunList t0 = (Curry.Module.Prelude.List t0) -> Curry.Module.Prelude.List t0++c_noChildren :: (Curry t0,Curry t1) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0))+c_noChildren x1 st = Curry.Module.Prelude.T2(Curry.Module.Prelude.List)(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(x1)))++++c_children :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1)+c_children x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_fst))(x1)(st)++++c_replaceChildren :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0))+c_replaceChildren x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_snd))(x1)(st)++++c_mapChildren :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1)) -> t0 -> Curry.RunTimeSystem.State -> t0+c_mapChildren x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_replaceChildren(x1)(st))(x3)(st))(Curry.Module.Prelude.c_map(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_children(x1)(st))(x3)(st))(st))(st)++++c_family :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_family x1 x2 st = Curry.Module.Traversal.c_familyFL(x1)(x2)(Curry.Module.Prelude.List)(st)++++c_childFamilies :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1+c_childFamilies x1 x2 x3 st = Curry.Module.Traversal.c_childFamiliesFL(x1)(x2)(x3)(Curry.Module.Prelude.List)(st)++++c_mapFamily :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)+c_mapFamily x1 x2 st = Curry.Module.Prelude.op_46(x2)(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_mapChildFamilies(x1)(x1)(st))(x2)(st))(st)++++c_mapChildFamilies :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))+c_mapChildFamilies x1 x2 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_mapChildren(x1)))(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_mapFamily(x2)))(st)++++c_evalFamily :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t0)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0)+c_evalFamily x1 x2 st = Curry.Module.Traversal.c_mapFamily(x1)(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_evalFamily'46g'4619(x2)(x1)))(st)++++c_evalFamily'46g'4619 :: (Curry t100) => (Curry.Module.Prelude.Prim (t100 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t100)) -> (Curry.Module.Prelude.Prim (t100 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t100) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t100) -> Curry.RunTimeSystem.State -> t100)))) -> t100 -> Curry.RunTimeSystem.State -> t100+c_evalFamily'46g'4619 x1 x2 x3 st = Curry.Module.Prelude.c_maybe(x3)(Curry.Module.Traversal.c_mapFamily(x2)(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_evalFamily'46g'4619(x1)(x2)))(st))(Curry.Module.Prelude.c_apply(x1)(x3)(st))(st)++++c_evalChildFamilies :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Maybe t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t0))+c_evalChildFamilies x1 x2 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_mapChildren(x1)))(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_evalFamily(x2)))(st)++++c_fold :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)+c_fold x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.Traversal.c_foldChildren(x1)(x1)(x2)(x2))++++c_foldChildren :: (Curry t0,Curry t1,Curry t2,Curry t3) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> t3))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t2) -> Curry.RunTimeSystem.State -> t2))) -> t0 -> Curry.RunTimeSystem.State -> t3+c_foldChildren x1 x2 x3 x4 x5 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(x3)(x5)(st))(Curry.Module.Prelude.c_map(Curry.Module.Traversal.c_fold(x2)(x4)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_children(x1)(st))(x5)(st))(st))(st)++++c_replaceChildrenIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.C_IO (Curry.Module.Prelude.List t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0))+c_replaceChildrenIO x1 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_liftIO))(Curry.Module.Traversal.c_replaceChildren(x1)(st))(st)++++c_mapChildrenIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1)) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_mapChildrenIO x1 x2 x3 st = Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_replaceChildrenIO(x1)(st))(x3)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_mapIO(x2)(st))(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_children(x1)(st))(x3)(st))(st))(st)++++c_mapFamilyIO :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0)) -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0+c_mapFamilyIO x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_mapChildFamiliesIO(x1)(x1)(st))(x2)(st))(x3)(st))(x2)(st)++++c_mapChildFamiliesIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1)) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0))+c_mapChildFamiliesIO x1 x2 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_mapChildrenIO(x1)))(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_mapFamilyIO(x2)))(st)++++c_evalFamilyIO :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe t0))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0)+c_evalFamilyIO x1 x2 st = Curry.Module.Prelude.pf(Curry.Module.Traversal.c_mapFamilyIO(x1)(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_evalFamilyIO'46g'4637(x2)(x1))))++++c_evalFamilyIO'46g'4637 :: (Curry t202) => (Curry.Module.Prelude.Prim (t202 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe t202))) -> (Curry.Module.Prelude.Prim (t202 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t202) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t202) -> Curry.RunTimeSystem.State -> t202)))) -> t202 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t202+c_evalFamilyIO'46g'4637 x1 x2 x3 st = Curry.Module.Prelude.op_62_62_61(Curry.Module.Prelude.c_apply(x1)(x3)(st))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_maybe(Curry.Module.Prelude.c_return(x3)(st))(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_mapFamilyIO(x2)(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_evalFamilyIO'46g'4637(x1)(x2)))))))(st)++++c_evalChildFamiliesIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim ((Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO (Curry.Module.Prelude.C_Maybe t1))) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t0))+c_evalChildFamiliesIO x1 x2 st = Curry.Module.Prelude.op_46(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_mapChildrenIO(x1)))(Curry.Module.Prelude.pf(Curry.Module.Traversal.c_evalFamilyIO(x2)))(st)++++c_concatFL :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0))) -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_concatFL x1@Curry.Module.Prelude.List x2 st = x2+c_concatFL x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.Prelude.c_apply(x3)(Curry.Module.Traversal.c_concatFL(x4)(x2)(st))(st)+c_concatFL (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Traversal.c_concatFL(x)(x2)(st))(i)(xs)(st)+c_concatFL x x2 st = Curry.RunTimeSystem.patternFail("Traversal.concatFL")(x)++++c_familyFL :: (Curry t0) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t0) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0)))) -> t0 -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t0+c_familyFL x1 x2 x3 st = (Curry.Module.Prelude.:<)(x2)(Curry.Module.Traversal.c_childFamiliesFL(x1)(x1)(x2)(x3)(st))++++c_childFamiliesFL :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t0)))) -> (Curry.Module.Prelude.Prim (t1 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.T2 (Curry.Module.Prelude.List t1) (Curry.Module.Prelude.Prim ((Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> t1)))) -> t0 -> (Curry.Module.Prelude.List t1) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List t1+c_childFamiliesFL x1 x2 x3 x4 st = Curry.Module.Traversal.c_concatFL(Curry.Module.Prelude.c_map(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Traversal.c_familyFL(x2)))(Curry.Module.Prelude.c_apply(Curry.Module.Traversal.c_children(x1)(st))(x3)(st))(st))(x4)(st)++++c_liftIO :: (Curry t0,Curry t1) => (Curry.Module.Prelude.Prim (t0 -> Curry.RunTimeSystem.State -> t1)) -> (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO t1+c_liftIO x1 x2 st = Curry.Module.Prelude.op_62_62_61(x2)(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(x1)(st))(st)++
+ dist/build/Curry/Module/Unsafe.hs view
@@ -0,0 +1,308 @@+{-# OPTIONS -cpp  #-}++{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances, TypeSynonymInstances #-}++module Curry.Module.Unsafe (module Curry.Module.Unsafe) where++import Curry.RunTimeSystem+import Curry.Module.Char+import Curry.Module.Meta+import Curry.Module.Prelude++++-- begin included++++import System.IO.Unsafe +import Data.IORef++prim_isVar :: Curry a => a -> Result C_Bool+prim_isVar x _ = case consKind x of+  Branching -> toCurry (isGenerator (orRef x))+  _         -> C_False++prim_unsafePerformIO :: Curry a => C_IO a -> Result a+prim_unsafePerformIO (C_IO action) st = unsafe (unsafePerformIO (action st)) st+ ++unsafe :: Curry a => IOVal a -> Result a+unsafe (IOVal v)        _  = v+unsafe (IOValFail e)    _  = Curry.RunTimeSystem.failed e+unsafe (IOValOr r bs)   st = mapOr (\ x -> unsafe (unsafePerformIO x)) r bs st+{-+-- the main point about unsafe:  the value of suspensions has to be stored.+unsafe (IOValSusp _ susp) = let sRef = nextSuspRef () in+  suspend False  (saveSuspValue sRef (const (tra sRef "cont" unsafe)) +                                (\st -> tra sRef "" (unsafePerformIO (susp (Just st)))))++-- Sometimes we have to make sure that suspensions are not evaluated twice.+-- Most notably this is true for suspended unsafely performed io actions .+-- This function saves its result in the store and retrieves it whenever +-- called. Only when there has been no value stored yet, the given suspension +-- is called with the store.+-- Saving suspensions values this way is a bit complicated.+-- First, look if suspension already lifted from somewhere else. +--   if so, the result has already been stored+--   if not, test if suspension can be lifted with given store+--             if so, call cont and save result in store (shared!)+--             if not, test if suspension did at least something (test sref)+--                        if so, recursive call with new suspension+--                        if not, suspend with given sRef "done Nothing"+saveSuspValue :: (Curry a,Curry b) => +             FreeVarRef -> (State -> a -> b) -> (Store -> a) -> Store -> b+saveSuspValue sRef cont susp store = +  trace "saveSuspValue " $+  case fromStore store sRef of+     Nothing -> trace "saveSusp: Nothing" $ let x = susp store in+       case consKind x of+        Suspended -> if suspRef x then saveSuspValue sRef cont (suspCont x) store +                                  else suspend False (saveSuspValue sRef cont (suspCont x))+        _ -> tr "saveSusp: not suspended" $ let res = cont (Just store) x in+          branching (nextOrRef ())+                [(\st -> Modified (addToStore st sRef res),trace "saveSusp: res" res)]+     Just v -> trace "saveSusp: Just" trV v v+  where+    tr = tra sRef+    trV x =  case consKind x of+       Branching -> case branches x of+                     [(_,b)] -> trV b+                     bs -> trace $ "Branch length " ++ (show $ length bs)+       ck -> tr (show ck)++-}++prim_identicalVar :: Curry a => a  -> a -> Result C_Bool+prim_identicalVar x y _ = case (consKind x,consKind y) of+  (Branching,Branching) -> let rx = orRef x+                               ry = orRef y in+                           if isGenerator rx && isGenerator ry+                           then toCurry (deref rx Prelude.== deref ry)+                           else C_False+  _                     -> C_False+++prim_showAnyTerm t _ = toCurry (show t)++prim_showAnyQTerm :: Curry a => a -> Result C_String+prim_showAnyQTerm x _ = toCurry (showQ 0 x "")++prim_readsAnyUnqualifiedTerm = error "ExternalFunctionsUnsafe.prim_readsAnyUnqualifiedTerm"++prim_readsAnyQTerm = error "ExternalFunctionsUnsafe.prim_readsAnyQTerm"++showAnyExpression = error "ExternalFunctionsUnsafe.prim_showAnyExpression"+++showAnyQExpression = error "ExternalFunctionsUnsafe.prim_showAnyQExpression"++--spawnConstraint :: Curry a => C_Success -> a -> a+spawnConstraint _ c x = undefined ++try :: Curry a => a -> Result (C_Either a (T2 C_OrRef (List a)))+try x _ = case consKind x of+          Val       -> C_Left x+          Branching -> C_Right (T2 (C_OrRef (orRef x)) +                                   (fromHaskellList (branches x)))+          c -> error ("try: consKind is "++show c)++orsWithOrRef :: Curry a => C_OrRef -> List a -> Result a+orsWithOrRef (C_OrRef r) xs _ = branching r (toHaskellList xs)++generateChoice :: Curry a => List a -> Result a+generateChoice xs _ = branching (mkRef 0 0 (nextRef 0)) (toHaskellList xs)+++nrOfChoices :: Result (C_IO C_Int)+nrOfChoices st = +  C_IO (\ st' -> Prelude.return (IOVal (toCurry (max (size' st) (size' st')))))+  where+    size' = storeSize +++++-- end included++c_unsafePerformIO :: (Curry t0) => (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> t0+c_unsafePerformIO x1 st = Curry.Module.Prelude.op_36_35(Curry.Module.Prelude.pf(Curry.Module.Unsafe.c_prim_unsafePerformIO))(x1)(st)++++c_trace :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> t0 -> Curry.RunTimeSystem.State -> t0+c_trace x1 x2 st = Curry.Module.Unsafe.c_unsafePerformIO(Curry.Module.Prelude.op_62_62(Curry.Module.Prelude.c_putStr(x1)(st))(Curry.Module.Prelude.c_return(x2)(st))(st))(st)++++c_isVar :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_isVar x1 st = Curry.Module.Unsafe.c_unsafePerformIO(Curry.Module.Prelude.op_62_62_61(Curry.Module.Meta.c_isFree(x1)(st))(Curry.Module.Prelude.op_46(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_return))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_either(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(Curry.Module.Prelude.C_True)))(Curry.Module.Prelude.pf(Curry.Module.Prelude.c_const(Curry.Module.Prelude.C_False)))))(st))(st))(st)++++c_identicalVar :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_identicalVar x1 x2 st = Curry.Module.Prelude.op_36_33(Curry.Module.Prelude.op_36_33(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Unsafe.c_prim_identicalVar))(x1)(st))(x2)(st)++++c_showAnyTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showAnyTerm x1 st = Curry.Module.Prelude.op_36_33_33(Curry.Module.Prelude.pf(Curry.Module.Unsafe.c_prim_showAnyTerm))(x1)(st)++++c_showAnyQTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showAnyQTerm x1 st = Curry.Module.Prelude.op_36_33_33(Curry.Module.Prelude.pf(Curry.Module.Unsafe.c_prim_showAnyQTerm))(x1)(st)++++c_readsAnyUnqualifiedTerm :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsAnyUnqualifiedTerm x1@Curry.Module.Prelude.List x2 st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('R'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('S'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('w'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('x'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(st)+c_readsAnyUnqualifiedTerm x1@((Curry.Module.Prelude.:<) x3 x4) x2 st = Curry.Module.Unsafe.c_readsAnyUnqualifiedTermWithPrefixes((Curry.Module.Prelude.:<)(x3)(x4))(x2)(st)+c_readsAnyUnqualifiedTerm (Curry.Module.Prelude.ListOr i xs) x2 st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readsAnyUnqualifiedTerm(x)(x2)(st))(i)(xs)(st)+c_readsAnyUnqualifiedTerm x x2 st = Curry.RunTimeSystem.patternFail("Unsafe.readsAnyUnqualifiedTerm")(x)++++c_readsAnyUnqualifiedTermWithPrefixes :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsAnyUnqualifiedTermWithPrefixes x1 x2 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.cp(Curry.Module.Prelude.pa)(Curry.Module.Prelude.cp(Curry.Module.Prelude.pf))(Curry.Module.Unsafe.c_prim_readsAnyUnqualifiedTerm))(x1)(st))(x2)(st)++++c_readAnyUnqualifiedTerm :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_readAnyUnqualifiedTerm x1 x2 st = Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_7(x1)(x2)(Curry.Module.Unsafe.c_readsAnyUnqualifiedTerm(x1)(x2)(st))(st)++++c_readsAnyQTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_readsAnyQTerm x1 st = Curry.Module.Prelude.op_36_35_35(Curry.Module.Prelude.pf(Curry.Module.Unsafe.c_prim_readsAnyQTerm))(x1)(st)++++c_readAnyQTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> t0+c_readAnyQTerm x1 st = Curry.Module.Unsafe.c_readAnyQTerm_case_3(x1)(Curry.Module.Unsafe.c_readsAnyQTerm(x1)(st))(st)++++c_readAnyQTerm_case_3 x1 x2@((Curry.Module.Prelude.:<) x3 x4) st = Curry.Module.Unsafe.c_readAnyQTerm_case_2(x4)(x3)(st)+c_readAnyQTerm_case_3 x1 x2@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('Q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))(st)+c_readAnyQTerm_case_3 x1 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyQTerm_case_3(x1)(x)(st))(i)(xs)(st)+c_readAnyQTerm_case_3 x1 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyQTerm_case_3")(x)++++c_readAnyQTerm_case_2 x4 x3@(Curry.Module.Prelude.T2 x5 x6) st = Curry.Module.Unsafe.c_readAnyQTerm_case_1(x5)(x6)(x4)(st)+c_readAnyQTerm_case_2 x4 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyQTerm_case_2(x4)(x)(st))(i)(xs)(st)+c_readAnyQTerm_case_2 x4 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyQTerm_case_2")(x)++++c_readAnyQTerm_case_1 x5 x6 x4@Curry.Module.Prelude.List st = Curry.Module.Unsafe.c_readAnyQTerm_case_0(x5)(x6)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_all(Curry.Module.Prelude.pf(Curry.Module.Char.c_isSpace))(st))(x6)(st))(st)+c_readAnyQTerm_case_1 x5 x6 x4@((Curry.Module.Prelude.:<) x7 x8) st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('Q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))(st)+c_readAnyQTerm_case_1 x5 x6 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyQTerm_case_1(x5)(x6)(x)(st))(i)(xs)(st)+c_readAnyQTerm_case_1 x5 x6 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyQTerm_case_1")(x)++++c_readAnyQTerm_case_0 x5 x6 x7@Curry.Module.Prelude.C_True st = x5+c_readAnyQTerm_case_0 x5 x6 x7@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('Q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))(st)+c_readAnyQTerm_case_0 x5 x6 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyQTerm_case_0(x5)(x6)(x)(st))(i)(xs)(st)+c_readAnyQTerm_case_0 x5 x6 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyQTerm_case_0")(x)++++c_readAnyUnqualifiedTerm_case_7 x1 x2 x3@((Curry.Module.Prelude.:<) x4 x5) st = Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_6(x5)(x4)(st)+c_readAnyUnqualifiedTerm_case_7 x1 x2 x3@Curry.Module.Prelude.List st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List))))))))))))))))))))))))))))))))))))))))(st)+c_readAnyUnqualifiedTerm_case_7 x1 x2 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_7(x1)(x2)(x)(st))(i)(xs)(st)+c_readAnyUnqualifiedTerm_case_7 x1 x2 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyUnqualifiedTerm_case_7")(x)++++c_readAnyUnqualifiedTerm_case_6 x5 x4@(Curry.Module.Prelude.T2 x6 x7) st = Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_5(x6)(x7)(x5)(st)+c_readAnyUnqualifiedTerm_case_6 x5 (Curry.Module.Prelude.T2Or i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_6(x5)(x)(st))(i)(xs)(st)+c_readAnyUnqualifiedTerm_case_6 x5 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyUnqualifiedTerm_case_6")(x)++++c_readAnyUnqualifiedTerm_case_5 x6 x7 x5@Curry.Module.Prelude.List st = Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_4(x6)(x7)(Curry.Module.Prelude.c_apply(Curry.Module.Prelude.c_all(Curry.Module.Prelude.pf(Curry.Module.Char.c_isSpace))(st))(x7)(st))(st)+c_readAnyUnqualifiedTerm_case_5 x6 x7 x5@((Curry.Module.Prelude.:<) x8 x9) st = Curry.Module.Prelude.c_error((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('b'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))(st)+c_readAnyUnqualifiedTerm_case_5 x6 x7 (Curry.Module.Prelude.ListOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_5(x6)(x7)(x)(st))(i)(xs)(st)+c_readAnyUnqualifiedTerm_case_5 x6 x7 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyUnqualifiedTerm_case_5")(x)++++c_readAnyUnqualifiedTerm_case_4 x6 x7 x8@Curry.Module.Prelude.C_True st = x6+c_readAnyUnqualifiedTerm_case_4 x6 x7 x8@Curry.Module.Prelude.C_False st = Curry.Module.Prelude.c_error(Curry.Module.Prelude.op_43_43((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('.'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('A'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('y'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('U'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('q'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('l'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('T'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('o'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('p'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(','))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('u'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('c'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('h'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('d'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('s'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('i'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('n'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('g'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('a'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('f'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('t'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('e'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('r'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char('m'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(':'))((Curry.Module.Prelude.:<)(Curry.Module.Prelude.C_Char(' '))(Curry.Module.Prelude.List)))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))(x7)(st))(st)+c_readAnyUnqualifiedTerm_case_4 x6 x7 (Curry.Module.Prelude.C_BoolOr i xs) st = Curry.RunTimeSystem.mapOr(\ x st -> Curry.Module.Unsafe.c_readAnyUnqualifiedTerm_case_4(x6)(x7)(x)(st))(i)(xs)(st)+c_readAnyUnqualifiedTerm_case_4 x6 x7 x st = Curry.RunTimeSystem.patternFail("Unsafe.readAnyUnqualifiedTerm_case_4")(x)++++c_prim_unsafePerformIO :: (Curry t0) => (Curry.Module.Prelude.C_IO t0) -> Curry.RunTimeSystem.State -> t0+c_prim_unsafePerformIO x1 st = Curry.Module.Unsafe.prim_unsafePerformIO(x1)(st)++++c_spawnConstraint :: (Curry t0) => Curry.Module.Prelude.C_Success -> t0 -> Curry.RunTimeSystem.State -> t0+c_spawnConstraint x1 x2 st = Curry.Module.Unsafe.spawnConstraint(x1)(x2)(st)++++c_prim_isVar :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_prim_isVar x1 st = Curry.Module.Unsafe.prim_isVar(x1)(st)++++c_prim_identicalVar :: (Curry t0) => t0 -> t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Bool+c_prim_identicalVar x1 x2 st = Curry.Module.Unsafe.prim_identicalVar(x1)(x2)(st)++++c_prim_showAnyTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_prim_showAnyTerm x1 st = Curry.Module.Unsafe.prim_showAnyTerm(x1)(st)++++c_prim_showAnyQTerm :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_prim_showAnyQTerm x1 st = Curry.Module.Unsafe.prim_showAnyQTerm(x1)(st)++++c_prim_readsAnyUnqualifiedTerm :: (Curry t0) => (Curry.Module.Prelude.List (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char)) -> (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_prim_readsAnyUnqualifiedTerm x1 x2 st = Curry.Module.Unsafe.prim_readsAnyUnqualifiedTerm(x1)(x2)(st)++++c_prim_readsAnyQTerm :: (Curry t0) => (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char) -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List (Curry.Module.Prelude.T2 t0 (Curry.Module.Prelude.List Curry.Module.Prelude.C_Char))+c_prim_readsAnyQTerm x1 st = Curry.Module.Unsafe.prim_readsAnyQTerm(x1)(st)++++c_showAnyExpression :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showAnyExpression x1 st = Curry.Module.Unsafe.showAnyExpression(x1)(st)++++c_showAnyQExpression :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.List Curry.Module.Prelude.C_Char+c_showAnyQExpression x1 st = Curry.Module.Unsafe.showAnyQExpression(x1)(st)++++c_try :: (Curry t0) => t0 -> Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_Either t0 (Curry.Module.Prelude.T2 Curry.Module.Meta.C_OrRef (Curry.Module.Prelude.List t0))+c_try x1 st = Curry.Module.Unsafe.try(x1)(st)++++c_orsWithOrRef :: (Curry t0) => Curry.Module.Meta.C_OrRef -> (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_orsWithOrRef x1 x2 st = Curry.Module.Unsafe.orsWithOrRef(x1)(x2)(st)++++c_generateChoice :: (Curry t0) => (Curry.Module.Prelude.List t0) -> Curry.RunTimeSystem.State -> t0+c_generateChoice x1 st = Curry.Module.Unsafe.generateChoice(x1)(st)++++c_nrOfChoices :: Curry.RunTimeSystem.State -> Curry.Module.Prelude.C_IO Curry.Module.Prelude.C_Int+c_nrOfChoices st = Curry.Module.Unsafe.nrOfChoices(st)++
src/Curry/Compiler/Config.hs view
@@ -3,17 +3,22 @@   module Curry.Compiler.KicsSubdir) where  import System.FilePath+import System.Process import System.Time (ClockTime) import Char import System.Environment (getEnvironment,getArgs) import System.Directory hiding (executable) import System.Time+import GHC.Paths+import Data.List+import Monad  import Curry.Compiler.SafeCalls import Curry.FlatCurry.Type (readFlat) import Curry.Compiler.Names import Curry.Compiler.KicsSubdir-+import Curry.Files.CymakePath+import Curry.Files.KiCSPath  getOptions :: IO (Options,State) getOptions = do @@ -23,9 +28,9 @@   let parsed = parseOptions opts args   parsedOpts <- either usage return parsed   let addFiledir = case takeDirectory (filename opts) of "" -> id; dir -> (dir:)-      newOpts    = parsedOpts{userlibpath=  addFiledir $-                                         userlibpath parsedOpts-                                      ++ splitSearchPath cupath}+      newOpts    = parsedOpts{userlibpath= addFiledir $+                                             userlibpath parsedOpts +                                             ++ splitPath cupath}   return (newOpts,state)      @@ -35,11 +40,9 @@ parseOptions opts ("-ctc":xs) = parseOptions (opts{cm=CTC}) xs parseOptions opts ("-main":x:xs) = parseOptions (opts{mainFunc=x}) xs parseOptions opts ("-frontend":x:xs) = parseOptions (opts{frontend=x}) xs---parseOptions opts ("-kicspath":x:xs) = parseOptions (opts{kicspath=x}) xs parseOptions opts ("-userlibpath":x:xs) =    parseOptions (opts{userlibpath=userlibpath opts ++ splitSearchPath x}) xs parseOptions opts ("-nouserlibpath":xs) = parseOptions (opts{userlibpath=[]}) xs---parseOptions opts ("-ghc":x:xs) = parseOptions (opts{ghc=x}) xs parseOptions opts ("-make":xs) = parseOptions (opts{make=True}) xs parseOptions opts ("-nomake":xs) = parseOptions (opts{make=False}) xs parseOptions opts ("-executable":xs) = parseOptions (opts{executable=True}) xs@@ -53,7 +56,7 @@ parseOptions opts ("-st":xs) = parseOptions (opts{pm=ST}) xs parseOptions opts ("-i":"df":xs) = parseOptions (opts{pm=Interactive DF}) xs parseOptions opts ("-i":"bf":xs) = parseOptions (opts{pm=Interactive BF}) xs-parseOptions opts ("-o":x:xs) = parseOptions (opts{target=x}) xs+parseOptions opts ("-o":x:xs) = parseOptions (opts{target=Just x}) xs parseOptions opts ("-d":xs) = parseOptions (opts{debug=True,doNotUseInterface=True}) xs parseOptions opts ("--debug":xs) = parseOptions opts ("-d":xs) parseOptions opts ("--debugger":d:xs) = parseOptions opts{debugger=Just d} xs@@ -69,10 +72,8 @@   putStrLn "-ctc           | switch to call time choice"   putStrLn "-main          | name of main function "   putStrLn "-frontend      | frontend binary"-  putStrLn "-kicspath      | path to kics compiler"   putStrLn "-userlibpath   | path to curry libraries"   putStrLn "-nouserlibpath | only standard curry libraries"-  putStrLn "-ghc           | path to ghc"   putStrLn "-make          | chase imported modules"   putStrLn "-nomake        | do not chase imported modules"   putStrLn "-executable    | create executable"@@ -93,10 +94,10 @@   data Options = Opts{ cm :: ChoiceMode,-                     filename, mainFunc, mainModule, target,-                     frontend, ghcOpts-                     --, ghc, kicspath  +                     filename, mainFunc, mainModule, +                     frontend, ghcOpts, stdLibDir                        :: String,+                     target :: Maybe String,                      userlibpath, done :: [String],                      verbosity :: Int,                      make, executable, eval, @@ -111,15 +112,12 @@  data ConsUse = DataDef | InstanceDef | FunctionDef deriving (Eq,Show) --cymake_call :: String-cymake_call = unpath ["cymake"]-+addFileDirToPath :: String -> [String] -> [String]+addFileDirToPath fn = case takeDirectory fn of "" -> id; dir -> (dir:)  libpath :: Options -> [String]-libpath opts@Opts{userlibpath=up,{-kicspath=kp,-}filename=fn} -  = --(case takeDirectory fn of "" -> id; dir -> ((dir++[pathSeparator]):))-    up ++ [unpath ["src","lib",""]]+libpath opts@Opts{userlibpath=up,filename=fn,stdLibDir=std} = +  addFileDirToPath fn $ up ++ [std]   cmdLibpath :: Options -> String@@ -139,12 +137,11 @@   not (null (filter (any (/=Declaration) . snd) (extInsts opts))) hasExtFuncs opts = not (null (extFuncs opts)) -defaultOpts curDir = Opts {cm=CTC,filename="", mainFunc= "main", mainModule="Main",-      target = "request",-      frontend=cymake_call,-      --kicspath=installDir,+defaultOpts = Opts {cm=CTC,filename="", mainFunc= "main", mainModule="Main",+      target = Nothing,+      frontend="cymake",+      stdLibDir = "",       userlibpath=[],-      --ghc="ghc",       ghcOpts=" -fglasgow-exts -fcontext-stack=50 ",       done=[],        make=True, @@ -206,7 +203,7 @@  ghcCall :: Options -> String ghcCall opts@Opts{filename=fn} = -  callnorm ("ghc "+  callnorm (ghc              ++makeGhc (make opts)              ++" -i"++show (toPathList                               (pathWithSubdirs $ libpath opts))++" "@@ -218,16 +215,17 @@              ++" "++show fn)          where-    linkOpts -- | debug opts = linkLib++" -L"++installDir++"/src/lib/ "-             | otherwise  = ""-    --linkLib  | eval opts  = " -ldyncoracle "-    --         | otherwise  = " -lcoracle "+    linkOpts = ""+     -- | debug opts = linkLib++" -L"++installDir++"/src/lib/ "+     -- | otherwise  = ""+     --linkLib  | eval opts  = " -ldyncoracle "+     --         | otherwise  = " -lcoracle "      verboseGhc True  = ""     verboseGhc False = " -v0 " -    ghcTarget Opts{target=""} = ""-    ghcTarget Opts{target=t} = " -o "++show t+    ghcTarget Opts{target=Nothing} = ""+    ghcTarget Opts{target=Just t} = " -o "++show t      makeGhc True = " --make "     makeGhc False = ""@@ -276,15 +274,8 @@  readConfig = do    home <- getEnv "HOME"-   curDir <- getCurrentDirectory    catch (readFile (kicsrc home) >>= getConfigs home) -         (\_->do-                 let defaultsO = defaultOpts curDir-                     defaultsS = defaultState home-                 writeConfig defaultsO defaultsS-                 putStrLn ("The file "++kicsrc home++" has been written.")-                 putStrLn ("You might need to edit it.")-                 error "Please verify .kicsrc")+         (\_ -> getConfigs home "")  writeConfig opts state = do   home <- getEnv "HOME"@@ -304,27 +295,24 @@     entry n s   = (configs!!(n-1)) ++ "="++s++"\n\n"  -mkTags = [-- kicspath,-          (toPathList . userlibpath),-          (show . pm)]+mkTags = [(toPathList . userlibpath),(show . pm)]  getConfigs home cfgs | cfgs == cfgs = do   punkt <- getCurrentDirectory-+  std   <- getKiCSLibDir+  cymake_call <- getCymake   let readOpts = selOpts (entries cfgs) -      defaultsO = defaultOpts punkt  -      opts = defaultsO-            {cm           = OrBased,-             --kicspath     = installDir,-             userlibpath  = let up = readSetting userlibpath splitSearchPath 1-                             in (punkt ++ [pathSeparator]) : up,-             pm           = readSetting pm readPMode 2,-             --ghc          = ghc_call,                              -             frontend     = cymake_call,-             eval         = readSetting eval read 3,-             force = False}-      readSetting f r n = maybe (f defaultsO) r (readOpts!!(n-1))+      opts = defaultOpts+            {cm          = OrBased,+             userlibpath = let up = readSetting userlibpath splitPath 1+                             in punkt : up,+             stdLibDir   = std,+             pm          = readSetting pm readPMode 2,+             frontend    = cymake_call,+             eval        = readSetting eval read 3,+             force       = False}+      readSetting f r n = maybe (f defaultOpts) r (readOpts!!(n-1))        defaultsS = defaultState home       state = defaultsS@@ -367,18 +355,16 @@                    ex<-doesModuleExist fn                    if ex then getModuleModTime fn else return (TOD 0 0)) -- safeReadFlat opts s = do+    safeIO $ print s+    safeIO $ print $ libpath opts     fs <- safeIO (findFileInPath s (libpath opts))+    safeIO $ print 12     fn <- warning s (cmdLibpath opts) fs     mprog <- safeIO $ readFlat fn     maybe (fail $ "file not found: "++fn) return mprog    ----warning fn path [] = fail ("module "++fn++" not found in path "++path)+warning fn path [] = fail ("file "++fn++" not found in path "++path) warning _ _  (f:fs) = do   mapM_ (safeIO . putStrLn)          (map (\f' -> "further file found (but ignored) "++f'
src/Curry/Compiler/CurryToHaskell.hs view
@@ -45,11 +45,11 @@  startCompilation :: Options -> Safe IO Options startCompilation opts = do -  put 2 opts "calling frontend"   newOpts <- callFrontend opts    visited <- compile newOpts >>= return . done -  put 2 opts "calling ghc"-  ghcProgram False newOpts (funcHsName (filename newOpts))+  when (make opts) $ do+    put 2 opts "calling ghc"+    ghcProgram False newOpts (funcHsName (filename newOpts))   return newOpts{done=visited}  -- compile not only returns the current Options @@ -97,8 +97,11 @@  makeImports :: (String,[String],Options) -> Safe IO Options makeImports (name,imps,opts@(Opts{filename=fn})) = do-  impOpts <- foldCompile imps opts{executable=False}-  return impOpts{done=name : done impOpts}+  if (make opts) +   then do+    impOpts <- foldCompile imps opts{executable=False}+    return impOpts{done=name : done impOpts}+   else return opts{done=name : done opts}  --------------------------------------------------------------------------------- -- sub routines of compilation@@ -110,9 +113,11 @@   foundSources <- if null foundCurry                     then safeIO (findFileInPath (replaceExtension givenFile ".lcurry") lib)                    else return foundCurry-  unless (null foundSources) (if   debug opts -                              then prophecy opts -                              else cymake opts)+  when (make opts) $ do+    put 2 opts "calling frontend"+    unless (null foundSources) (if   debug opts +                                then prophecy opts +                                else cymake opts)   return (if debug opts then opts{filename=dbgModName givenFile} else opts)  getFlatCurryFileName opts@(Opts{filename=basename}) = do@@ -122,12 +127,14 @@   let foundBasename = dropExtensions foundFile   return (opts{filename=foundBasename}) -notUptodate opts@(Opts{filename=foundBasename}) = do-  tSource1     <- getModTime (replaceExtension foundBasename ".fcy")-  tSource2     <- getExternalSpecModTime opts foundBasename-  let destination = inModuleSubdir (inKicsSubdir (funcHsName foundBasename))-  tDestination <- getModTime destination-  return (tSource1 > tDestination || tSource2 > tDestination)+notUptodate opts@(Opts{filename=foundBasename}) +  | takeDirectory foundBasename == stdLibDir opts = return False+  | otherwise = do+      tSource1     <- getModTime (replaceExtension foundBasename ".fcy")+      tSource2     <- getExternalSpecModTime opts foundBasename+      let dest = destination True (target opts) (funcHsName foundBasename)+      tDestination <- getModTime dest+      return (tSource1 > tDestination || tSource2 > tDestination)  applyFlatTransformations opts prog = do   let auxNames = generateAuxNames (progFuncs prog)@@ -155,20 +162,18 @@   return (haskellFiles opts (progName prog))  writeProgram opts (fn,unqualified,prog) = do-  let fn' = inModuleSubdir (inKicsSubdir fn)-  put 3 opts ("writing "++ fn')+  let filename = destination (fn/="Main.hs") (target opts) fn+  put 3 opts ("writing "++ filename)   let printOpts = defaultPrintOptions{unqual=unqualified,include=toInclude opts}-  safeIO (writeKicsFile (fn/="Main.hs") fn (showProgOpt printOpts prog))-  put 3 opts (fn'++" written")-  return fn-+  safeIO (writeKicsFile filename (showProgOpt printOpts prog))+  put 3 opts (filename ++ " written")  ghcProgram skipping opts fn =    unless (eval opts && executable opts)  $ do       found <- safeIO (findFileInPath fn (libpath opts))       let hsFile = head found           ghc    = safeSystem (verbosity opts >= 2) -                     (ghcCall opts{make=True,filename=hsFile,target=""})+                     (ghcCall opts{make=True,filename=hsFile,target=Nothing})           shFile = drop 2 (reverse hsFile)           oFile  = reverse ('o':shFile)           hiFile = reverse ('i':'h':shFile)@@ -416,18 +421,18 @@                     (map strEqRule consdecls++                     [C.Rule [_x,toPVar 0,_x]                            (noguard $ -                              fapp (extInstPresym isPrelude "strEqFail")-                                   [fapp (extInstPresym isPrelude "typeName") [toVar 0]]) []]))+                              fapp (cupresym "strEqFail")+                                   [fapp (cupresym "typeName") [toVar 0]]) []]))      strEqRule (Cons cname arity _ _) =       rule  [C.PComb (consName opts cname) (map toPVar [1..arity]),              C.PComb (consName opts cname) (map (toPVar' "y") [1..arity])]-            (noguard $ if arity==0 then (extInstPresym isPrelude "strEqSuccess")-                         else foldr1 (\ e es -> fapp (extInstPresym isPrelude "concAnd") +            (noguard $ if arity==0 then (cupresym "strEqSuccess")+                         else foldr1 (\ e es -> fapp (cupresym "concAnd")                                                       (addStateArg [e,es]))                                  (map sEq [1..arity])) []        where-         sEq i = fapp (extInstPresym isPrelude "genStrEq") (addStateArg [toVar i,toVar' "y" i])+         sEq i = fapp (cupresym "genStrEq") (addStateArg [toVar i,toVar' "y" i])      eq = C.Func (newModName,"eq") (transvis vis) untyped                 (Just  @@ -441,7 +446,7 @@                          else foldr1 (\ e es -> fapp (funcupresym "&&") (addStateArg [e,es]))                                 (map eqArgs [1..arity])) []        where-         eqArgs i = fapp (extInstPresym isPrelude "genEq") (addStateArg [toVar i,toVar' "y" i])+         eqArgs i = fapp (cupresym "genEq") (addStateArg [toVar i,toVar' "y" i])      propagate = C.Func (newModName,"propagate") (transvis vis) untyped                         (Just  (map propRule consdecls))@@ -740,7 +745,7 @@ transRule (as,v:bs) opts (Branch (LPattern l@(Charc _)) e)    = rule ps (C.GuardedExpr [(guard,transExpr opts e)]) []   where-    guard = app (extInstPresym False "isC_True")+    guard = app (cupresym "isC_True")                 (fapp (funcupresym "===") [toVar v,toLit opts l])     ps    = map toPVar as ++ toPVar v : map toPVar bs transRule (as,v:bs) opts (Branch (LPattern l) e) @@ -791,7 +796,7 @@    showParenArg (_,'(':_) = hasPresym "True"    showParenArg _         = if showQ then hasPresym "True" else lt (C.Var "d") app_prec    showsPrecName = if showQ then "showQ" else "showsPrec"-   showsPrecSym  = (if showQ then extInstPresym (fst origName=="Prelude") +   showsPrecSym  = (if showQ then cupresym                                else hasPresym) showsPrecName     identifier (_,"()") = "()"@@ -1220,11 +1225,6 @@ underscores i = replicate i (_x)  qname_ (m,f) = string_ (m++'.':f)--extInstPresym _ s = sym (modName "Prelude",s)--extFuncPresym opts s = sym (modName "Prelude",s)-  _x = C.PVar "_" 
src/Curry/Compiler/KicsSubdir.hs view
@@ -78,17 +78,20 @@ inModuleSubdir :: String -> String inModuleSubdir s = s `inSubdir` "Curry" `inSubdir` "Module" +-- destination file names++destination :: Bool -> Maybe String -> String -> String+destination _     (Just t) _        = t+destination True  _        filename = inKicsSubdir filename +destination False _        filename = inModuleSubdir (inKicsSubdir filename)+ --write a file to curry subdirectory -writeKicsFile :: Bool -> String -> String -> IO String-writeKicsFile isHsModule filename contents = do-  let filename' | isHsModule = inModuleSubdir (inKicsSubdir filename)-                | otherwise  = inKicsSubdir filename -      subdir = dirname filename'+writeKicsFile :: String -> String -> IO ()+writeKicsFile filename contents = do+  let subdir = dirname filename   createDirectoryIfMissing True subdir-  writeFile filename' contents-  return filename'-+  writeFile filename contents  -- do things with file in subdir @@ -123,7 +126,7 @@    if any isPathSeparator fn       then findFile fn      else do-       let fs = nubBy equalFilePath $ map (++fn) path+       let fs = nubBy equalFilePath $ map (</>fn) path        founds <- mapM findFile fs        return (nubBy equalFilePath $ concat founds) 
src/Curry/Compiler/ShowFunctionalProg.hs view
@@ -52,7 +52,11 @@ showProgOpt :: PrintOptions -> Prog -> String showProgOpt opts p@(Prog m imports exports typedecls insdecls funcdecls opdecls)    = "{-# OPTIONS -cpp  #-}\n\n"-     ++ "{-# LANGUAGE RankNTypes, ScopedTypeVariables, MultiParamTypeClasses, FlexibleInstances #-}\n\n"+     ++ "{-# LANGUAGE RankNTypes,\+                    \ ScopedTypeVariables,\+                    \ MultiParamTypeClasses,\+                    \ FlexibleInstances,\+                    \ TypeSynonymInstances #-}\n\n"      ++ "module "++m++showExports opts m exports ++" where\n\n"      ++ showImports imports      ++ "\n\n-- begin included\n\n" 
+ src/Curry/Files/KiCSPath.hs view
@@ -0,0 +1,13 @@+module Curry.Files.KiCSPath (getKiCS,getKiCSLibDir,kicsVersion) where++import Data.Version+import System.FilePath+import Paths_KiCS++kicsVersion = showVersion version++getKiCS     = do+  kicsDir <- getBinDir+  return (kicsDir </> "kics")++getKiCSLibDir = getDataDir
src/kics.hs view
@@ -4,6 +4,7 @@ import Curry.Compiler.CurryToHaskell import Curry.Compiler.SafeCalls +import System.Environment  ------------------------------- -- the kics compiler@@ -20,7 +21,7 @@       let call = ghcCall opts{filename=inKicsSubdir "Main.hs"}       if executable opts          then do -              putStrLn ("compiling executable "++target opts) +              putStrLn ("compiling executable "++maybe "" id (target opts))                if verbosity opts >= 3 then putStrLn call else return ()                system call         else return undefined
+ src/lib/Curry/Module/.curry/AnsiCodes.acy view
@@ -0,0 +1,40 @@+CurryProg "AnsiCodes"+ ["Prelude","Char","List"]+ []+ [CFunc ("AnsiCodes","ansiLength") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CVar (0,"s"))) (CApply (CSymbol ("Prelude","length")) (CVar (0,"s"))))] [CLocalFunc (CFunc ("AnsiCodes","aux") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"n")] [(CSymbol ("Prelude","success"),CVar (1,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")],CPVar (4,"n")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CSymbol ("AnsiCodes","esc")))) (CApply (CSymbol ("Char","isDigit")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (3,"cs"))) (CLit (CIntc 2)))),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CVar (3,"cs"))))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"n"))) (CLit (CIntc 5)))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CSymbol ("AnsiCodes","esc")),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CVar (3,"cs")))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"n"))) (CLit (CIntc 4)))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CVar (3,"cs"))) (CVar (4,"n")))] []]))]]),+  CFunc ("AnsiCodes","bgBlack") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 40)))] []]),+  CFunc ("AnsiCodes","bgBlue") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 44)))] []]),+  CFunc ("AnsiCodes","bgCyan") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 46)))] []]),+  CFunc ("AnsiCodes","bgGreen") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 42)))] []]),+  CFunc ("AnsiCodes","bgMagenta") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 45)))] []]),+  CFunc ("AnsiCodes","bgRed") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 41)))] []]),+  CFunc ("AnsiCodes","bgWhite") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 47)))] []]),+  CFunc ("AnsiCodes","bgYellow") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 43)))] []]),+  CFunc ("AnsiCodes","black") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 30)))] []]),+  CFunc ("AnsiCodes","blue") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 34)))] []]),+  CFunc ("AnsiCodes","bold") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 1)))] []]),+  CFunc ("AnsiCodes","clear") 0 Public (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '2'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CSymbol ("Prelude","[]")))))] []]),+  CFunc ("AnsiCodes","cmd") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","esc"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '['))) (CSymbol ("Prelude","[]")))) (CVar (0,"s"))))] []]),+  CFunc ("AnsiCodes","concealed") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 8)))] []]),+  CFunc ("AnsiCodes","cursorBack") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorDown") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'B'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorFwd") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorHome") 0 Public (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'H'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorPos") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (0,"r"),CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"r")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"c")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'H'))) (CSymbol ("Prelude","[]")))))))] []]),+  CFunc ("AnsiCodes","cursorUp") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cyan") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 36)))] []]),+  CFunc ("AnsiCodes","eraseLine") 0 Public (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","esc") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 27)))] []]),+  CFunc ("AnsiCodes","green") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 32)))] []]),+  CFunc ("AnsiCodes","isSuffixOf") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("List","isPrefixOf")) (CApply (CSymbol ("Prelude","reverse")) (CVar (0,"s"))))) (CSymbol ("Prelude","reverse")))] []]),+  CFunc ("AnsiCodes","magenta") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 35)))] []]),+  CFunc ("AnsiCodes","mode") 2 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"s"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("AnsiCodes","isSuffixOf")) (CVar (2,"end"))) (CVar (1,"s")))) (CSymbol ("Prelude","[]"))) (CVar (2,"end")))))))] [CLocalPat (CPVar (2,"end")) (CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CSymbol ("Prelude","[]"))))) []]]),+  CFunc ("AnsiCodes","moveCursor") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"n")))) (CVar (0,"s"))))] []]),+  CFunc ("AnsiCodes","red") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 31)))] []]),+  CFunc ("AnsiCodes","restoreCursor") 0 Public (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","revColors") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 7)))] []]),+  CFunc ("AnsiCodes","saveCursor") 0 Public (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","underline") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 4)))] []]),+  CFunc ("AnsiCodes","white") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 37)))] []]),+  CFunc ("AnsiCodes","yellow") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 33)))] []])]+ []
+ src/lib/Curry/Module/.curry/AnsiCodes.cy view
@@ -0,0 +1,44 @@+Module "AnsiCodes"+(Just (Exporting (10,17) [(Export (QualIdent Nothing (Ident "cursorPos" 0))),(Export (QualIdent Nothing (Ident "cursorHome" 0))),(Export (QualIdent Nothing (Ident "cursorUp" 0))),(Export (QualIdent Nothing (Ident "cursorDown" 0))),(Export (QualIdent Nothing (Ident "cursorFwd" 0))),(Export (QualIdent Nothing (Ident "cursorBack" 0))),(Export (QualIdent Nothing (Ident "saveCursor" 0))),(Export (QualIdent Nothing (Ident "restoreCursor" 0))),(Export (QualIdent Nothing (Ident "clear" 0))),(Export (QualIdent Nothing (Ident "eraseLine" 0))),(Export (QualIdent Nothing (Ident "bold" 0))),(Export (QualIdent Nothing (Ident "underline" 0))),(Export (QualIdent Nothing (Ident "revColors" 0))),(Export (QualIdent Nothing (Ident "concealed" 0))),(Export (QualIdent Nothing (Ident "black" 0))),(Export (QualIdent Nothing (Ident "red" 0))),(Export (QualIdent Nothing (Ident "green" 0))),(Export (QualIdent Nothing (Ident "yellow" 0))),(Export (QualIdent Nothing (Ident "blue" 0))),(Export (QualIdent Nothing (Ident "cyan" 0))),(Export (QualIdent Nothing (Ident "magenta" 0))),(Export (QualIdent Nothing (Ident "white" 0))),(Export (QualIdent Nothing (Ident "bgBlack" 0))),(Export (QualIdent Nothing (Ident "bgRed" 0))),(Export (QualIdent Nothing (Ident "bgGreen" 0))),(Export (QualIdent Nothing (Ident "bgYellow" 0))),(Export (QualIdent Nothing (Ident "bgBlue" 0))),(Export (QualIdent Nothing (Ident "bgCyan" 0))),(Export (QualIdent Nothing (Ident "bgMagenta" 0))),(Export (QualIdent Nothing (Ident "bgWhite" 0))),(Export (QualIdent Nothing (Ident "ansiLength" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (30,1) "Char" False Nothing Nothing)+,(ImportDecl (31,1) "List" False Nothing Nothing)+,(FunctionDecl (34,1) (Ident "esc" 0) [(Equation (34,1) (FunLhs (Ident "esc" 0) []) (SimpleRhs (34,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 4) 27))) []))])+,(FunctionDecl (39,1) (Ident "cmd" 0) [(Equation (39,1) (FunLhs (Ident "cmd" 0) [(VariablePattern (Ident "s" 5))]) (SimpleRhs (39,9) (InfixApply (Variable (QualIdent (Just "AnsiCodes") (Ident "esc" 0))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Literal (String "[")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "s" 5))))) []))])+,(FunctionDecl (42,1) (Ident "cursorPos" 0) [(Equation (42,1) (FunLhs (Ident "cursorPos" 0) [(VariablePattern (Ident "r" 7)),(VariablePattern (Ident "c" 7))]) (SimpleRhs (42,17) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "r" 7)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ";")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "c" 7)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "H"))))))) []))])+,(FunctionDecl (45,1) (Ident "cursorHome" 0) [(Equation (45,1) (FunLhs (Ident "cursorHome" 0) []) (SimpleRhs (45,14) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Literal (String "H"))) []))])+,(TypeSig (47,1) [(Ident "moveCursor" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (48,1) (Ident "moveCursor" 0) [(Equation (48,1) (FunLhs (Ident "moveCursor" 0) [(VariablePattern (Ident "s" 11)),(VariablePattern (Ident "n" 11))]) (SimpleRhs (48,18) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 11)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "s" 11)))))) []))])+,(FunctionDecl (51,1) (Ident "cursorUp" 0) [(Equation (51,1) (FunLhs (Ident "cursorUp" 0) []) (SimpleRhs (51,12) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "moveCursor" 0))) (Literal (String "A"))) []))])+,(FunctionDecl (54,1) (Ident "cursorDown" 0) [(Equation (54,1) (FunLhs (Ident "cursorDown" 0) []) (SimpleRhs (54,14) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "moveCursor" 0))) (Literal (String "B"))) []))])+,(FunctionDecl (57,1) (Ident "cursorFwd" 0) [(Equation (57,1) (FunLhs (Ident "cursorFwd" 0) []) (SimpleRhs (57,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "moveCursor" 0))) (Literal (String "C"))) []))])+,(FunctionDecl (60,1) (Ident "cursorBack" 0) [(Equation (60,1) (FunLhs (Ident "cursorBack" 0) []) (SimpleRhs (60,14) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "moveCursor" 0))) (Literal (String "D"))) []))])+,(FunctionDecl (63,1) (Ident "saveCursor" 0) [(Equation (63,1) (FunLhs (Ident "saveCursor" 0) []) (SimpleRhs (63,14) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Literal (String "s"))) []))])+,(FunctionDecl (66,1) (Ident "restoreCursor" 0) [(Equation (66,1) (FunLhs (Ident "restoreCursor" 0) []) (SimpleRhs (66,17) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Literal (String "u"))) []))])+,(FunctionDecl (72,1) (Ident "clear" 0) [(Equation (72,1) (FunLhs (Ident "clear" 0) []) (SimpleRhs (72,9) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Literal (String "2J"))) []))])+,(FunctionDecl (75,1) (Ident "eraseLine" 0) [(Equation (75,1) (FunLhs (Ident "eraseLine" 0) []) (SimpleRhs (75,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Literal (String "K"))) []))])+,(FunctionDecl (78,1) (Ident "mode" 0) [(Equation (78,1) (FunLhs (Ident "mode" 0) [(VariablePattern (Ident "n" 29)),(VariablePattern (Ident "s" 29))]) (SimpleRhs (78,12) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 29)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "m")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 29))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "isSuffixOf" 0))) (Variable (QualIdent Nothing (Ident "end" 30)))) (Variable (QualIdent Nothing (Ident "s" 29)))) (Literal (String "")) (Variable (QualIdent Nothing (Ident "end" 30))))))))) [(PatternDecl (80,3) (VariablePattern (Ident "end" 30)) (SimpleRhs (80,9) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "cmd" 0))) (Literal (String "0m"))) []))]))])+,(FunctionDecl (83,1) (Ident "isSuffixOf" 0) [(Equation (83,1) (FunLhs (Ident "isSuffixOf" 0) [(VariablePattern (Ident "s" 32))]) (SimpleRhs (83,16) (InfixApply (Apply (Variable (QualIdent (Just "List") (Ident "isPrefixOf" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "s" 32)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0)))) []))])+,(FunctionDecl (88,1) (Ident "bold" 0) [(Equation (88,1) (FunLhs (Ident "bold" 0) []) (SimpleRhs (88,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 36) 1))) []))])+,(FunctionDecl (89,1) (Ident "underline" 0) [(Equation (89,1) (FunLhs (Ident "underline" 0) []) (SimpleRhs (89,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 39) 4))) []))])+,(FunctionDecl (90,1) (Ident "revColors" 0) [(Equation (90,1) (FunLhs (Ident "revColors" 0) []) (SimpleRhs (90,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 42) 7))) []))])+,(FunctionDecl (91,1) (Ident "concealed" 0) [(Equation (91,1) (FunLhs (Ident "concealed" 0) []) (SimpleRhs (91,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 45) 8))) []))])+,(FunctionDecl (92,1) (Ident "black" 0) [(Equation (92,1) (FunLhs (Ident "black" 0) []) (SimpleRhs (92,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 48) 30))) []))])+,(FunctionDecl (93,1) (Ident "red" 0) [(Equation (93,1) (FunLhs (Ident "red" 0) []) (SimpleRhs (93,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 51) 31))) []))])+,(FunctionDecl (94,1) (Ident "green" 0) [(Equation (94,1) (FunLhs (Ident "green" 0) []) (SimpleRhs (94,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 54) 32))) []))])+,(FunctionDecl (95,1) (Ident "yellow" 0) [(Equation (95,1) (FunLhs (Ident "yellow" 0) []) (SimpleRhs (95,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 57) 33))) []))])+,(FunctionDecl (96,1) (Ident "blue" 0) [(Equation (96,1) (FunLhs (Ident "blue" 0) []) (SimpleRhs (96,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 60) 34))) []))])+,(FunctionDecl (97,1) (Ident "magenta" 0) [(Equation (97,1) (FunLhs (Ident "magenta" 0) []) (SimpleRhs (97,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 63) 35))) []))])+,(FunctionDecl (98,1) (Ident "cyan" 0) [(Equation (98,1) (FunLhs (Ident "cyan" 0) []) (SimpleRhs (98,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 66) 36))) []))])+,(FunctionDecl (99,1) (Ident "white" 0) [(Equation (99,1) (FunLhs (Ident "white" 0) []) (SimpleRhs (99,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 69) 37))) []))])+,(FunctionDecl (100,1) (Ident "bgBlack" 0) [(Equation (100,1) (FunLhs (Ident "bgBlack" 0) []) (SimpleRhs (100,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 72) 40))) []))])+,(FunctionDecl (101,1) (Ident "bgRed" 0) [(Equation (101,1) (FunLhs (Ident "bgRed" 0) []) (SimpleRhs (101,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 75) 41))) []))])+,(FunctionDecl (102,1) (Ident "bgGreen" 0) [(Equation (102,1) (FunLhs (Ident "bgGreen" 0) []) (SimpleRhs (102,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 78) 42))) []))])+,(FunctionDecl (103,1) (Ident "bgYellow" 0) [(Equation (103,1) (FunLhs (Ident "bgYellow" 0) []) (SimpleRhs (103,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 81) 43))) []))])+,(FunctionDecl (104,1) (Ident "bgBlue" 0) [(Equation (104,1) (FunLhs (Ident "bgBlue" 0) []) (SimpleRhs (104,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 84) 44))) []))])+,(FunctionDecl (105,1) (Ident "bgMagenta" 0) [(Equation (105,1) (FunLhs (Ident "bgMagenta" 0) []) (SimpleRhs (105,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 87) 45))) []))])+,(FunctionDecl (106,1) (Ident "bgCyan" 0) [(Equation (106,1) (FunLhs (Ident "bgCyan" 0) []) (SimpleRhs (106,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 90) 46))) []))])+,(FunctionDecl (107,1) (Ident "bgWhite" 0) [(Equation (107,1) (FunLhs (Ident "bgWhite" 0) []) (SimpleRhs (107,13) (Apply (Variable (QualIdent (Just "AnsiCodes") (Ident "mode" 0))) (Literal (Int (Ident "_" 93) 47))) []))])+,(TypeSig (112,1) [(Ident "ansiLength" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (113,1) (Ident "ansiLength" 0) [(Equation (113,1) (FunLhs (Ident "ansiLength" 0) [(VariablePattern (Ident "s" 94))]) (SimpleRhs (113,16) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 95))) (Variable (QualIdent Nothing (Ident "s" 94)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 94)))))) [(FunctionDecl (115,3) (Ident "aux" 95) [(Equation (115,3) (FunLhs (Ident "aux" 95) [(ListPattern []),(VariablePattern (Ident "n" 96))]) (SimpleRhs (115,14) (Variable (QualIdent Nothing (Ident "n" 96))) [])),(Equation (116,3) (FunLhs (Ident "aux" 95) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 98)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 98)))),(VariablePattern (Ident "n" 98))]) (GuardedRhs [(CondExpr (116,16) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 98))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "AnsiCodes") (Ident "esc" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "Char") (Ident "isDigit" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "cs" 98))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Literal (Int (Ident "_" 100) 2)))))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 95))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "cs" 98)))))))))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 98))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 101) 5)))))),(CondExpr (118,16) (InfixApply (Variable (QualIdent Nothing (Ident "c" 98))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "AnsiCodes") (Ident "esc" 0)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 95))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "cs" 98)))))))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 98))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 102) 4)))))),(CondExpr (119,16) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 95))) (Variable (QualIdent Nothing (Ident "cs" 98)))) (Variable (QualIdent Nothing (Ident "n" 98)))))] []))])]))])+]
+ src/lib/Curry/Module/.curry/AnsiCodes.efc view
@@ -0,0 +1,1 @@+Prog "AnsiCodes" ["Char","List","Prelude"] [] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"AnsiCodes","esc")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  27)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"AnsiCodes","esc")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '['),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","cursorPos")) 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 0),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ';'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 1),2))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'H'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"AnsiCodes","cursorHome")) 0 Public (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'H'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","moveCursor")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cursorUp")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","moveCursor")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cursorDown")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","moveCursor")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'B'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cursorFwd")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","moveCursor")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cursorBack")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","moveCursor")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'D'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"AnsiCodes","saveCursor")) 0 Public (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"AnsiCodes","restoreCursor")) 0 Public (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"AnsiCodes","clear")) 0 Public (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '2'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"AnsiCodes","eraseLine")) 0 Public (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) 2 Private (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 7) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]))),"Prelude",":")) [Lit (Charc  '0'),Comb ConsCall ((Nothing,Just (FuncType (TVar 6) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 6]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 6]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (TVar 5),"Prelude","[]")) []]]])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cmd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 0),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"AnsiCodes","isSuffixOf")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))]]]]]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"AnsiCodes","isSuffixOf")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"List","isPrefixOf")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","reverse")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bold")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  1)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","underline")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  4)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","revColors")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  7)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","concealed")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  8)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","black")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  30)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","red")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  31)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","green")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  32)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","yellow")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  33)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","blue")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  34)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","magenta")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  35)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cyan")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  36)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","white")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  37)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgBlack")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  40)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgRed")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  41)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgGreen")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  42)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgYellow")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  43)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgBlue")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  44)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgMagenta")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  45)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgCyan")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  46)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgWhite")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"AnsiCodes","mode")) [Lit (Intc  47)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"AnsiCodes","ansiLength")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"AnsiCodes","ansiLength.aux.95")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"AnsiCodes","ansiLength.aux.95")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"AnsiCodes","esc")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isDigit")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") []))),"Prelude","!!")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Lit (Intc  2)]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"AnsiCodes","ansiLength.aux.95")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  5)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"AnsiCodes","esc")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"AnsiCodes","ansiLength.aux.95")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  4)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"AnsiCodes","ansiLength.aux.95")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])])])]))] []
+ src/lib/Curry/Module/.curry/AnsiCodes.fcy view
@@ -0,0 +1,1 @@+Prog "AnsiCodes" ["Char","List","Prelude"] [] [Func ("AnsiCodes","esc") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  27)])),Func ("AnsiCodes","cmd") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","esc") [],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '['),Comb ConsCall ("Prelude","[]") []],Var 1]])),Func ("AnsiCodes","cursorPos") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Comb FuncCall ("AnsiCodes","cmd") [Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 1],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ';'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb ConsCall ("Prelude",":") [Lit (Charc  'H'),Comb ConsCall ("Prelude","[]") []]]]]])),Func ("AnsiCodes","cursorHome") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Comb FuncCall ("AnsiCodes","cmd") [Comb ConsCall ("Prelude",":") [Lit (Charc  'H'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","moveCursor") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Comb FuncCall ("AnsiCodes","cmd") [Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Var 1]])),Func ("AnsiCodes","cursorUp") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","moveCursor") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","cursorDown") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","moveCursor") [Comb ConsCall ("Prelude",":") [Lit (Charc  'B'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","cursorFwd") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","moveCursor") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","cursorBack") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","moveCursor") [Comb ConsCall ("Prelude",":") [Lit (Charc  'D'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","saveCursor") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Comb FuncCall ("AnsiCodes","cmd") [Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","restoreCursor") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Comb FuncCall ("AnsiCodes","cmd") [Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","clear") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Comb FuncCall ("AnsiCodes","cmd") [Comb ConsCall ("Prelude",":") [Lit (Charc  '2'),Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude","[]") []]]])),Func ("AnsiCodes","eraseLine") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Comb FuncCall ("AnsiCodes","cmd") [Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude","[]") []]])),Func ("AnsiCodes","mode") 2 Private (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("AnsiCodes","cmd") [Comb ConsCall ("Prelude",":") [Lit (Charc  '0'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude","[]") []]]])] (Comb FuncCall ("AnsiCodes","cmd") [Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 1],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Var 2,Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("AnsiCodes","isSuffixOf") [Var 3],Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Var 3)]]]]]))),Func ("AnsiCodes","isSuffixOf") 1 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("List","isPrefixOf") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 1]],Comb FuncCall ("Prelude","reverse") []])),Func ("AnsiCodes","bold") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  1)])),Func ("AnsiCodes","underline") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  4)])),Func ("AnsiCodes","revColors") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  7)])),Func ("AnsiCodes","concealed") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  8)])),Func ("AnsiCodes","black") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  30)])),Func ("AnsiCodes","red") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  31)])),Func ("AnsiCodes","green") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  32)])),Func ("AnsiCodes","yellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  33)])),Func ("AnsiCodes","blue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  34)])),Func ("AnsiCodes","magenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  35)])),Func ("AnsiCodes","cyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  36)])),Func ("AnsiCodes","white") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  37)])),Func ("AnsiCodes","bgBlack") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  40)])),Func ("AnsiCodes","bgRed") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  41)])),Func ("AnsiCodes","bgGreen") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  42)])),Func ("AnsiCodes","bgYellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  43)])),Func ("AnsiCodes","bgBlue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  44)])),Func ("AnsiCodes","bgMagenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  45)])),Func ("AnsiCodes","bgCyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  46)])),Func ("AnsiCodes","bgWhite") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("AnsiCodes","mode") [Lit (Intc  47)])),Func ("AnsiCodes","ansiLength") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("AnsiCodes","ansiLength.aux.95") [Var 1,Comb FuncCall ("Prelude","length") [Var 1]])),Func ("AnsiCodes","ansiLength.aux.95") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 3,Comb FuncCall ("AnsiCodes","esc") []],Comb FuncCall ("Char","isDigit") [Comb FuncCall ("Prelude","!!") [Var 4,Lit (Intc  2)]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("AnsiCodes","ansiLength.aux.95") [Comb FuncCall ("Prelude","tail") [Comb FuncCall ("Prelude","tail") [Comb FuncCall ("Prelude","tail") [Comb FuncCall ("Prelude","tail") [Var 4]]]],Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  5)]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Comb FuncCall ("AnsiCodes","esc") []]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("AnsiCodes","ansiLength.aux.95") [Comb FuncCall ("Prelude","tail") [Comb FuncCall ("Prelude","tail") [Comb FuncCall ("Prelude","tail") [Var 4]]],Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  4)]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("AnsiCodes","ansiLength.aux.95") [Var 4,Var 2]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])]))] []
+ src/lib/Curry/Module/.curry/AnsiCodes.fint view
@@ -0,0 +1,1 @@+Prog "AnsiCodes" ["Char","List","Prelude"] [] [Func ("AnsiCodes","cursorPos") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("AnsiCodes","cursorHome") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Var 0)),Func ("AnsiCodes","cursorUp") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","cursorDown") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","cursorFwd") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","cursorBack") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","saveCursor") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Var 0)),Func ("AnsiCodes","restoreCursor") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Var 0)),Func ("AnsiCodes","clear") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Var 0)),Func ("AnsiCodes","eraseLine") 0 Public (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (Rule [] (Var 0)),Func ("AnsiCodes","bold") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","underline") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","revColors") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","concealed") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","black") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","red") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","green") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","yellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","blue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","magenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","cyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","white") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgBlack") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgRed") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgGreen") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgYellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgBlue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgMagenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgCyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","bgWhite") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("AnsiCodes","ansiLength") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/AnsiCodes.uacy view
@@ -0,0 +1,40 @@+CurryProg "AnsiCodes"+ ["Prelude","Char","List"]+ []+ [CFunc ("AnsiCodes","ansiLength") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CVar (0,"s"))) (CApply (CSymbol ("Prelude","length")) (CVar (0,"s"))))] [CLocalFunc (CFunc ("AnsiCodes","aux") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"n")] [(CSymbol ("Prelude","success"),CVar (1,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")],CPVar (4,"n")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CSymbol ("AnsiCodes","esc")))) (CApply (CSymbol ("Char","isDigit")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (3,"cs"))) (CLit (CIntc 2)))),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CVar (3,"cs"))))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"n"))) (CLit (CIntc 5)))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CSymbol ("AnsiCodes","esc")),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CApply (CSymbol ("Prelude","tail")) (CVar (3,"cs")))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"n"))) (CLit (CIntc 4)))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("AnsiCodes","aux")) (CVar (3,"cs"))) (CVar (4,"n")))] []]))]]),+  CFunc ("AnsiCodes","bgBlack") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 40)))] []]),+  CFunc ("AnsiCodes","bgBlue") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 44)))] []]),+  CFunc ("AnsiCodes","bgCyan") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 46)))] []]),+  CFunc ("AnsiCodes","bgGreen") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 42)))] []]),+  CFunc ("AnsiCodes","bgMagenta") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 45)))] []]),+  CFunc ("AnsiCodes","bgRed") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 41)))] []]),+  CFunc ("AnsiCodes","bgWhite") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 47)))] []]),+  CFunc ("AnsiCodes","bgYellow") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 43)))] []]),+  CFunc ("AnsiCodes","black") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 30)))] []]),+  CFunc ("AnsiCodes","blue") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 34)))] []]),+  CFunc ("AnsiCodes","bold") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 1)))] []]),+  CFunc ("AnsiCodes","clear") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '2'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CSymbol ("Prelude","[]")))))] []]),+  CFunc ("AnsiCodes","cmd") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","esc"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '['))) (CSymbol ("Prelude","[]")))) (CVar (0,"s"))))] []]),+  CFunc ("AnsiCodes","concealed") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 8)))] []]),+  CFunc ("AnsiCodes","cursorBack") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorDown") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'B'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorFwd") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorHome") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'H'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cursorPos") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"r"),CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"r")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"c")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'H'))) (CSymbol ("Prelude","[]")))))))] []]),+  CFunc ("AnsiCodes","cursorUp") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","moveCursor")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","cyan") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 36)))] []]),+  CFunc ("AnsiCodes","eraseLine") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","esc") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 27)))] []]),+  CFunc ("AnsiCodes","green") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 32)))] []]),+  CFunc ("AnsiCodes","isSuffixOf") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("List","isPrefixOf")) (CApply (CSymbol ("Prelude","reverse")) (CVar (0,"s"))))) (CSymbol ("Prelude","reverse")))] []]),+  CFunc ("AnsiCodes","magenta") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 35)))] []]),+  CFunc ("AnsiCodes","mode") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"s"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("AnsiCodes","isSuffixOf")) (CVar (2,"end"))) (CVar (1,"s")))) (CSymbol ("Prelude","[]"))) (CVar (2,"end")))))))] [CLocalPat (CPVar (2,"end")) (CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CSymbol ("Prelude","[]"))))) []]]),+  CFunc ("AnsiCodes","moveCursor") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") []))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"n")))) (CVar (0,"s"))))] []]),+  CFunc ("AnsiCodes","red") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 31)))] []]),+  CFunc ("AnsiCodes","restoreCursor") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","revColors") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 7)))] []]),+  CFunc ("AnsiCodes","saveCursor") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","cmd")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("AnsiCodes","underline") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 4)))] []]),+  CFunc ("AnsiCodes","white") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 37)))] []]),+  CFunc ("AnsiCodes","yellow") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("AnsiCodes","mode")) (CLit (CIntc 33)))] []])]+ []
+ src/lib/Curry/Module/.curry/Array.acy view
@@ -0,0 +1,25 @@+CurryProg "Array"+ ["Prelude","Integer"]+ [CType ("Array","Array") Public [(0,"b")] [CCons ("Array","Array") 2 Public [CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"b")),CTCons ("Array","Entry") [CTVar (0,"b")]]],+  CType ("Array","Entry") Private [(0,"b")] [CCons ("Array","Entry") 3 Private [CTVar (0,"b"),CTCons ("Array","Entry") [CTVar (0,"b")],CTCons ("Array","Entry") [CTVar (0,"b")]],CCons ("Array","Empty") 0 Private []]]+ [CFunc ("Array","!") 2 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a")))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"array")],CPVar (2,"i")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","from")) (CApply (CVar (0,"default")) (CVar (2,"i")))) (CVar (1,"array"))) (CVar (2,"i")))] []]),+  CFunc ("Array","//") 2 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]]) (CTCons ("Array","Array") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"array")],CPVar (2,"modifications")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CLambda [CPComb ("Prelude","(,)") [CPVar (3,"n"),CPVar (4,"v")],CPVar (5,"a")] (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CApply (CVar (0,"default")) (CVar (3,"n")))) (CVar (5,"a"))) (CVar (3,"n"))) (CApply (CSymbol ("Prelude","const")) (CVar (4,"v")))))) (CVar (1,"array"))) (CVar (2,"modifications"))))] []]),+  CFunc ("Array","applyAt") 3 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CTCons ("Array","Array") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"a")],CPVar (2,"n"),CPVar (3,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CApply (CVar (0,"default")) (CVar (2,"n")))) (CVar (1,"a"))) (CVar (2,"n"))) (CVar (3,"f"))))] []]),+  CFunc ("Array","arrayToList") 0 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","foldArray")) (CSymbol ("Prelude","[]"))) (CLambda [CPVar (0,"x"),CPVar (1,"ys"),CPVar (2,"zs")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"ys"))) (CVar (2,"zs"))))))] []]),+  CFunc ("Array","at") 4 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CTCons ("Array","Entry") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"default"),CPComb ("Array","Empty") [],CPVar (1,"n"),CPVar (2,"f")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CVar (2,"f")) (CVar (0,"default")))) (CSymbol ("Array","Empty"))) (CSymbol ("Array","Empty"))),(CApply (CSymbol ("Integer","odd")) (CVar (1,"n")),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (0,"default"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (0,"default"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"n"))) (CLit (CIntc 2)))) (CVar (2,"f")))) (CSymbol ("Array","Empty"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (0,"default"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (0,"default"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (2,"f"))))] [],CRule [CPVar (3,"default"),CPComb ("Array","Entry") [CPVar (4,"v"),CPVar (5,"al"),CPVar (6,"ar")],CPVar (7,"n"),CPVar (8,"f")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CVar (8,"f")) (CVar (4,"v")))) (CVar (5,"al"))) (CVar (6,"ar"))),(CApply (CSymbol ("Integer","odd")) (CVar (7,"n")),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (4,"v"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (3,"default"))) (CVar (5,"al"))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (7,"n"))) (CLit (CIntc 2)))) (CVar (8,"f")))) (CVar (6,"ar"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (4,"v"))) (CVar (5,"al"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (3,"default"))) (CVar (6,"ar"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (7,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (8,"f"))))] []]),+  CFunc ("Array","comb") 7 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (1,"b"))) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Entry") [CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Array","Entry") [CTVar (2,"c")])))))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("Array","Empty") [],CPComb ("Array","Empty") [],CPVar (3,"_"),CPVar (4,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Array","Empty"))] [],CRule [CPVar (5,"f"),CPVar (6,"def1"),CPVar (7,"def2"),CPComb ("Array","Entry") [CPVar (8,"x"),CPVar (9,"xl"),CPVar (10,"xr")],CPComb ("Array","Empty") [],CPVar (11,"b"),CPVar (12,"o")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (5,"f")) (CVar (8,"x"))) (CApply (CVar (7,"def2")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (11,"b"))) (CVar (12,"o")))) (CLit (CIntc 1)))))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (5,"f"))) (CVar (6,"def1"))) (CVar (7,"def2"))) (CVar (9,"xl"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (11,"b")))) (CVar (12,"o")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (5,"f"))) (CVar (6,"def1"))) (CVar (7,"def2"))) (CVar (10,"xr"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (11,"b")))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (12,"o"))) (CVar (11,"b")))))] [],CRule [CPVar (13,"f"),CPVar (14,"def1"),CPVar (15,"def2"),CPComb ("Array","Empty") [],CPComb ("Array","Entry") [CPVar (16,"y"),CPVar (17,"yl"),CPVar (18,"yr")],CPVar (19,"b"),CPVar (20,"o")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (13,"f")) (CApply (CVar (14,"def1")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (19,"b"))) (CVar (20,"o")))) (CLit (CIntc 1))))) (CVar (16,"y")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (13,"f"))) (CVar (14,"def1"))) (CVar (15,"def2"))) (CSymbol ("Array","Empty"))) (CVar (17,"yl"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (19,"b")))) (CVar (20,"o")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (13,"f"))) (CVar (14,"def1"))) (CVar (15,"def2"))) (CSymbol ("Array","Empty"))) (CVar (18,"yr"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (19,"b")))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (20,"o"))) (CVar (19,"b")))))] [],CRule [CPVar (21,"f"),CPVar (22,"def1"),CPVar (23,"def2"),CPComb ("Array","Entry") [CPVar (24,"x"),CPVar (25,"xl"),CPVar (26,"xr")],CPComb ("Array","Entry") [CPVar (27,"y"),CPVar (28,"yl"),CPVar (29,"yr")],CPVar (30,"b"),CPVar (31,"o")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (21,"f")) (CVar (24,"x"))) (CVar (27,"y")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (21,"f"))) (CVar (22,"def1"))) (CVar (23,"def2"))) (CVar (25,"xl"))) (CVar (28,"yl"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (30,"b")))) (CVar (31,"o")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (21,"f"))) (CVar (22,"def1"))) (CVar (23,"def2"))) (CVar (26,"xr"))) (CVar (29,"yr"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (30,"b")))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (31,"o"))) (CVar (30,"b")))))] []]),+  CFunc ("Array","combSim") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CTCons ("Array","Entry") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Array","Empty") [],CPVar (1,"a2")] [(CSymbol ("Prelude","success"),CVar (1,"a2"))] [],CRule [CPVar (2,"_"),CPAs (6,"a1") (CPComb ("Array","Entry") [CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_")]),CPComb ("Array","Empty") []] [(CSymbol ("Prelude","success"),CVar (6,"a1"))] [],CRule [CPVar (7,"f"),CPComb ("Array","Entry") [CPVar (8,"x"),CPVar (9,"xl"),CPVar (10,"xr")],CPComb ("Array","Entry") [CPVar (11,"y"),CPVar (12,"yl"),CPVar (13,"yr")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (7,"f")) (CVar (8,"x"))) (CVar (11,"y")))) (CApply (CApply (CApply (CSymbol ("Array","combSim")) (CVar (7,"f"))) (CVar (9,"xl"))) (CVar (12,"yl")))) (CApply (CApply (CApply (CSymbol ("Array","combSim")) (CVar (7,"f"))) (CVar (10,"xr"))) (CVar (13,"yr"))))] []]),+  CFunc ("Array","combine") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Array") [CTVar (1,"b")]) (CTCons ("Array","Array") [CTVar (2,"c")])))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Array","Array") [CPVar (1,"def1"),CPVar (2,"a1")],CPComb ("Array","Array") [CPVar (3,"def2"),CPVar (4,"a2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CLambda [CPVar (5,"i")] (CApply (CApply (CVar (0,"f")) (CApply (CVar (1,"def1")) (CVar (5,"i")))) (CApply (CVar (3,"def2")) (CVar (5,"i")))))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (0,"f"))) (CVar (1,"def1"))) (CVar (3,"def2"))) (CVar (2,"a1"))) (CVar (4,"a2"))) (CLit (CIntc 0))) (CLit (CIntc 1))))] []]),+  CFunc ("Array","combineSimilar") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CTCons ("Array","Array") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Array","Array") [CPVar (1,"def"),CPVar (2,"a1")],CPComb ("Array","Array") [CPVar (3,"_"),CPVar (4,"a2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (1,"def"))) (CApply (CApply (CApply (CSymbol ("Array","combSim")) (CVar (0,"f"))) (CVar (2,"a1"))) (CVar (4,"a2"))))] []]),+  CFunc ("Array","emptyDefaultArray") 1 Public (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))) (CTCons ("Array","Array") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"default")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CSymbol ("Array","Empty")))] []]),+  CFunc ("Array","emptyErrorArray") 0 Public (CTCons ("Array","Array") [CTVar (0,"a")]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Array","emptyDefaultArray")) (CSymbol ("Array","errorArray")))] []]),+  CFunc ("Array","errorArray") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"idx")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"idx")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'z'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]")))))))))))))))))))))] []]),+  CFunc ("Array","foldArray") 3 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CFuncType (CTCons ("Array","Array") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"emp"),CPVar (1,"ent"),CPComb ("Array","Array") [CPVar (2,"_"),CPVar (3,"es")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","foldEntries")) (CVar (0,"emp"))) (CVar (1,"ent"))) (CVar (3,"es")))] []]),+  CFunc ("Array","foldEntries") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CFuncType (CTCons ("Array","Entry") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"emp"),CPVar (1,"_"),CPComb ("Array","Empty") []] [(CSymbol ("Prelude","success"),CVar (0,"emp"))] [],CRule [CPVar (2,"emp"),CPVar (3,"ent"),CPComb ("Array","Entry") [CPVar (4,"x"),CPVar (5,"a1"),CPVar (6,"a2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CVar (3,"ent")) (CVar (4,"x"))) (CApply (CApply (CApply (CSymbol ("Array","foldEntries")) (CVar (2,"emp"))) (CVar (3,"ent"))) (CVar (5,"a1")))) (CApply (CApply (CApply (CSymbol ("Array","foldEntries")) (CVar (2,"emp"))) (CVar (3,"ent"))) (CVar (6,"a2"))))] []]),+  CFunc ("Array","from") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"default"),CPComb ("Array","Empty") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"default"))] [],CRule [CPVar (2,"default"),CPComb ("Array","Entry") [CPVar (3,"v"),CPVar (4,"al"),CPVar (5,"ar")],CPVar (6,"n")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"n"))) (CLit (CIntc 0)),CVar (3,"v")),(CApply (CSymbol ("Integer","odd")) (CVar (6,"n")),CApply (CApply (CApply (CSymbol ("Array","from")) (CVar (2,"default"))) (CVar (4,"al"))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (6,"n"))) (CLit (CIntc 2)))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("Array","from")) (CVar (2,"default"))) (CVar (5,"ar"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (6,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 1))))] []]),+  CFunc ("Array","listToArray") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Array","Entry") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Array","Empty"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"ys"),CPVar (3,"zs")]) (CApply (CSymbol ("Array","split")) (CVar (1,"xs"))) []] (CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (0,"x"))) (CApply (CSymbol ("Array","listToArray")) (CVar (2,"ys")))) (CApply (CSymbol ("Array","listToArray")) (CVar (3,"zs")))))] []]),+  CFunc ("Array","listToDefaultArray") 1 Public (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Array","Array") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"def")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Array","Array")) (CVar (0,"def")))) (CSymbol ("Array","listToArray")))] []]),+  CFunc ("Array","listToErrorArray") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Array","Array") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Array","listToDefaultArray")) (CSymbol ("Array","errorArray")))] []]),+  CFunc ("Array","split") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPComb ("Prelude",":") [CPVar (2,"y"),CPVar (3,"xys")]]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"xs"),CPVar (5,"ys")]) (CApply (CSymbol ("Array","split")) (CVar (3,"xys"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (4,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"y"))) (CVar (5,"ys")))))] []]),+  CFunc ("Array","update") 3 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Array","Array") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"a")],CPVar (2,"i"),CPVar (3,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CApply (CVar (0,"default")) (CVar (2,"i")))) (CVar (1,"a"))) (CVar (2,"i"))) (CApply (CSymbol ("Prelude","const")) (CVar (3,"v")))))] []])]+ [COp ("Array","//") CInfixlOp 9,COp ("Array","!") CInfixlOp 9]
+ src/lib/Curry/Module/.curry/Array.cy view
@@ -0,0 +1,47 @@+Module "Array"+(Just (Exporting (6,3) [(Export (QualIdent Nothing (Ident "Array" 0))),(Export (QualIdent Nothing (Ident "emptyErrorArray" 0))),(Export (QualIdent Nothing (Ident "emptyDefaultArray" 0))),(Export (QualIdent Nothing (Ident "listToDefaultArray" 0))),(Export (QualIdent Nothing (Ident "listToErrorArray" 0))),(Export (QualIdent Nothing (Ident "//" 0))),(Export (QualIdent Nothing (Ident "update" 0))),(Export (QualIdent Nothing (Ident "applyAt" 0))),(Export (QualIdent Nothing (Ident "!" 0))),(Export (QualIdent Nothing (Ident "combine" 0))),(Export (QualIdent Nothing (Ident "combineSimilar" 0))),(Export (QualIdent Nothing (Ident "foldArray" 0))),(Export (QualIdent Nothing (Ident "arrayToList" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (22,1) "Integer" False Nothing Nothing)+,(DataDecl (26,1) (Ident "Array" 0) [(Ident "b" 0)] [(ConstrDecl (26,16) [] (Ident "Array" 0) [(ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "b" 0))),(ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))])])])+,(DataDecl (28,1) (Ident "Entry" 0) [(Ident "b" 0)] [(ConstrDecl (28,16) [] (Ident "Entry" 0) [(VariableType (Ident "b" 0)),(ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))]),(ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))])]),(ConstrDecl (28,46) [] (Ident "Empty" 0) [])])+,(InfixDecl (24,1) InfixL 9 [(Ident "!" 0),(Ident "//" 0)])+,(TypeSig (33,1) [(Ident "emptyErrorArray" 0)] (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]))+,(FunctionDecl (34,1) (Ident "emptyErrorArray" 0) [(Equation (34,1) (FunLhs (Ident "emptyErrorArray" 0) []) (SimpleRhs (34,19) (Apply (Variable (QualIdent (Just "Array") (Ident "emptyDefaultArray" 0))) (Variable (QualIdent (Just "Array") (Ident "errorArray" 0)))) []))])+,(TypeSig (36,1) [(Ident "errorArray" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "_" 0))))+,(FunctionDecl (37,1) (Ident "errorArray" 0) [(Equation (37,1) (FunLhs (Ident "errorArray" 0) [(VariablePattern (Ident "idx" 4))]) (SimpleRhs (37,19) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "Array index ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "idx" 4)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String " not initialized")))))) []))])+,(TypeSig (42,1) [(Ident "emptyDefaultArray" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))])))+,(FunctionDecl (43,1) (Ident "emptyDefaultArray" 0) [(Equation (43,1) (FunLhs (Ident "emptyDefaultArray" 0) [(VariablePattern (Ident "default" 6))]) (SimpleRhs (43,29) (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Variable (QualIdent Nothing (Ident "default" 6)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) []))])+,(TypeSig (51,1) [(Ident "//" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (52,1) (Ident "//" 0) [(Equation (52,1) (OpLhs (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "default" 8)),(VariablePattern (Ident "array" 8))]) (Ident "//" 0) (VariablePattern (Ident "modifications" 8))) (SimpleRhs (53,3) (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Variable (QualIdent Nothing (Ident "default" 8)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "n" 10)),(VariablePattern (Ident "v" 10))]),(VariablePattern (Ident "a" 10))] (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "default" 8))) (Variable (QualIdent Nothing (Ident "n" 10)))))) (Variable (QualIdent Nothing (Ident "a" 10)))) (Variable (QualIdent Nothing (Ident "n" 10)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Variable (QualIdent Nothing (Ident "v" 10))))))))) (Variable (QualIdent Nothing (Ident "array" 8)))) (Variable (QualIdent Nothing (Ident "modifications" 8)))))) []))])+,(TypeSig (61,1) [(Ident "update" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))])))))+,(FunctionDecl (62,1) (Ident "update" 0) [(Equation (62,1) (FunLhs (Ident "update" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "default" 11)),(VariablePattern (Ident "a" 11))])),(VariablePattern (Ident "i" 11)),(VariablePattern (Ident "v" 11))]) (SimpleRhs (63,3) (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Variable (QualIdent Nothing (Ident "default" 11)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "default" 11))) (Variable (QualIdent Nothing (Ident "i" 11)))))) (Variable (QualIdent Nothing (Ident "a" 11)))) (Variable (QualIdent Nothing (Ident "i" 11)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Variable (QualIdent Nothing (Ident "v" 11)))))))) []))])+,(TypeSig (70,1) [(Ident "applyAt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))])))))+,(FunctionDecl (71,1) (Ident "applyAt" 0) [(Equation (71,1) (FunLhs (Ident "applyAt" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "default" 13)),(VariablePattern (Ident "a" 13))])),(VariablePattern (Ident "n" 13)),(VariablePattern (Ident "f" 13))]) (SimpleRhs (71,33) (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Variable (QualIdent Nothing (Ident "default" 13)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "default" 13))) (Variable (QualIdent Nothing (Ident "n" 13)))))) (Variable (QualIdent Nothing (Ident "a" 13)))) (Variable (QualIdent Nothing (Ident "n" 13)))) (Variable (QualIdent Nothing (Ident "f" 13)))))) []))])+,(TypeSig (74,1) [(Ident "at" 0)] (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))]))))))+,(FunctionDecl (75,1) (Ident "at" 0) [(Equation (75,1) (FunLhs (Ident "at" 0) [(VariablePattern (Ident "default" 15)),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(VariablePattern (Ident "n" 15)),(VariablePattern (Ident "f" 15))]) (GuardedRhs [(CondExpr (76,3) (InfixApply (Variable (QualIdent Nothing (Ident "n" 15))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 17) 0))) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 15))) (Variable (QualIdent Nothing (Ident "default" 15)))))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0))))),(CondExpr (77,3) (Apply (Variable (QualIdent (Just "Integer") (Ident "odd" 0))) (Variable (QualIdent Nothing (Ident "n" 15)))) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Variable (QualIdent Nothing (Ident "default" 15)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Variable (QualIdent Nothing (Ident "default" 15)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 15))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 18) 2))))) (Variable (QualIdent Nothing (Ident "f" 15)))))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0))))),(CondExpr (78,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Variable (QualIdent Nothing (Ident "default" 15)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Variable (QualIdent Nothing (Ident "default" 15)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 15))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 19) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 20) 1))))) (Variable (QualIdent Nothing (Ident "f" 15)))))))] [])),(Equation (79,1) (FunLhs (Ident "at" 0) [(VariablePattern (Ident "default" 21)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "v" 21)),(VariablePattern (Ident "al" 21)),(VariablePattern (Ident "ar" 21))])),(VariablePattern (Ident "n" 21)),(VariablePattern (Ident "f" 21))]) (GuardedRhs [(CondExpr (80,3) (InfixApply (Variable (QualIdent Nothing (Ident "n" 21))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 23) 0))) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 21))) (Variable (QualIdent Nothing (Ident "v" 21)))))) (Variable (QualIdent Nothing (Ident "al" 21)))) (Variable (QualIdent Nothing (Ident "ar" 21))))),(CondExpr (81,3) (Apply (Variable (QualIdent (Just "Integer") (Ident "odd" 0))) (Variable (QualIdent Nothing (Ident "n" 21)))) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Variable (QualIdent Nothing (Ident "v" 21)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Variable (QualIdent Nothing (Ident "default" 21)))) (Variable (QualIdent Nothing (Ident "al" 21)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 21))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 24) 2))))) (Variable (QualIdent Nothing (Ident "f" 21)))))) (Variable (QualIdent Nothing (Ident "ar" 21))))),(CondExpr (82,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Variable (QualIdent Nothing (Ident "v" 21)))) (Variable (QualIdent Nothing (Ident "al" 21)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "at" 0))) (Variable (QualIdent Nothing (Ident "default" 21)))) (Variable (QualIdent Nothing (Ident "ar" 21)))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 21))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 25) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 26) 1))))) (Variable (QualIdent Nothing (Ident "f" 21)))))))] []))])+,(TypeSig (88,1) [(Ident "!" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "b" 0)))))+,(FunctionDecl (89,1) (Ident "!" 0) [(Equation (89,1) (OpLhs (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "default" 27)),(VariablePattern (Ident "array" 27))]) (Ident "!" 0) (VariablePattern (Ident "i" 27))) (SimpleRhs (89,27) (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "from" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "default" 27))) (Variable (QualIdent Nothing (Ident "i" 27)))))) (Variable (QualIdent Nothing (Ident "array" 27)))) (Variable (QualIdent Nothing (Ident "i" 27)))) []))])+,(TypeSig (91,1) [(Ident "from" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "a" 0))))))+,(FunctionDecl (92,1) (Ident "from" 0) [(Equation (92,1) (FunLhs (Ident "from" 0) [(VariablePattern (Ident "default" 29)),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(VariablePattern (Ident "_" 30))]) (SimpleRhs (92,24) (Variable (QualIdent Nothing (Ident "default" 29))) [])),(Equation (93,1) (FunLhs (Ident "from" 0) [(VariablePattern (Ident "default" 32)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "v" 32)),(VariablePattern (Ident "al" 32)),(VariablePattern (Ident "ar" 32))])),(VariablePattern (Ident "n" 32))]) (GuardedRhs [(CondExpr (94,3) (InfixApply (Variable (QualIdent Nothing (Ident "n" 32))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 34) 0))) (Variable (QualIdent Nothing (Ident "v" 32)))),(CondExpr (95,3) (Apply (Variable (QualIdent (Just "Integer") (Ident "odd" 0))) (Variable (QualIdent Nothing (Ident "n" 32)))) (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "from" 0))) (Variable (QualIdent Nothing (Ident "default" 32)))) (Variable (QualIdent Nothing (Ident "al" 32)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 32))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 35) 2)))))),(CondExpr (96,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "from" 0))) (Variable (QualIdent Nothing (Ident "default" 32)))) (Variable (QualIdent Nothing (Ident "ar" 32)))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 32))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 36) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 37) 1))))))] []))])+,(TypeSig (99,1) [(Ident "split" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "a" 0)))])))+,(FunctionDecl (100,1) (Ident "split" 0) [(Equation (100,1) (FunLhs (Ident "split" 0) [(ListPattern [])]) (SimpleRhs (100,12) (Tuple [(List []),(List [])]) [])),(Equation (101,1) (FunLhs (Ident "split" 0) [(ListPattern [(VariablePattern (Ident "x" 40))])]) (SimpleRhs (101,13) (Tuple [(List [(Variable (QualIdent Nothing (Ident "x" 40)))]),(List [])]) [])),(Equation (102,1) (FunLhs (Ident "split" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 42)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "y" 42)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xys" 42)))))]) (SimpleRhs (102,19) (Let [(PatternDecl (102,23) (TuplePattern [(VariablePattern (Ident "xs" 44)),(VariablePattern (Ident "ys" 44))]) (SimpleRhs (102,33) (Apply (Variable (QualIdent (Just "Array") (Ident "split" 0))) (Variable (QualIdent Nothing (Ident "xys" 42)))) []))] (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 42))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 44)))),(InfixApply (Variable (QualIdent Nothing (Ident "y" 42))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 44))))])) []))])+,(TypeSig (108,1) [(Ident "listToDefaultArray" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "b" 0))) (ArrowType (ListType (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (109,1) (Ident "listToDefaultArray" 0) [(Equation (109,1) (FunLhs (Ident "listToDefaultArray" 0) [(VariablePattern (Ident "def" 46))]) (SimpleRhs (109,26) (InfixApply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Variable (QualIdent Nothing (Ident "def" 46)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Array") (Ident "listToArray" 0)))) []))])+,(TypeSig (113,1) [(Ident "listToErrorArray" 0)] (ArrowType (ListType (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))])))+,(FunctionDecl (114,1) (Ident "listToErrorArray" 0) [(Equation (114,1) (FunLhs (Ident "listToErrorArray" 0) []) (SimpleRhs (114,20) (Apply (Variable (QualIdent (Just "Array") (Ident "listToDefaultArray" 0))) (Variable (QualIdent (Just "Array") (Ident "errorArray" 0)))) []))])+,(TypeSig (117,1) [(Ident "listToArray" 0)] (ArrowType (ListType (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))])))+,(FunctionDecl (118,1) (Ident "listToArray" 0) [(Equation (118,1) (FunLhs (Ident "listToArray" 0) [(ListPattern [])]) (SimpleRhs (118,18) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0))) [])),(Equation (119,1) (FunLhs (Ident "listToArray" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 52)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 52))))]) (SimpleRhs (119,22) (Let [(PatternDecl (119,26) (TuplePattern [(VariablePattern (Ident "ys" 54)),(VariablePattern (Ident "zs" 54))]) (SimpleRhs (119,36) (Apply (Variable (QualIdent (Just "Array") (Ident "split" 0))) (Variable (QualIdent Nothing (Ident "xs" 52)))) []))] (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Variable (QualIdent Nothing (Ident "x" 52)))) (Paren (Apply (Variable (QualIdent (Just "Array") (Ident "listToArray" 0))) (Variable (QualIdent Nothing (Ident "ys" 54)))))) (Paren (Apply (Variable (QualIdent (Just "Array") (Ident "listToArray" 0))) (Variable (QualIdent Nothing (Ident "zs" 54))))))) []))])+,(TypeSig (126,1) [(Ident "combine" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "c" 0))])))))+,(FunctionDecl (127,1) (Ident "combine" 0) [(Equation (127,1) (FunLhs (Ident "combine" 0) [(VariablePattern (Ident "f" 56)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "def1" 56)),(VariablePattern (Ident "a1" 56))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "def2" 56)),(VariablePattern (Ident "a2" 56))]))]) (SimpleRhs (128,3) (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Paren (Lambda [(VariablePattern (Ident "i" 58))] (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 56))) (Paren (Apply (Variable (QualIdent Nothing (Ident "def1" 56))) (Variable (QualIdent Nothing (Ident "i" 58)))))) (Paren (Apply (Variable (QualIdent Nothing (Ident "def2" 56))) (Variable (QualIdent Nothing (Ident "i" 58))))))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 56)))) (Variable (QualIdent Nothing (Ident "def1" 56)))) (Variable (QualIdent Nothing (Ident "def2" 56)))) (Variable (QualIdent Nothing (Ident "a1" 56)))) (Variable (QualIdent Nothing (Ident "a2" 56)))) (Literal (Int (Ident "_" 59) 0))) (Literal (Int (Ident "_" 60) 1))))) []))])+,(TypeSig (130,1) [(Ident "comb" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0)))) (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "a" 0))) (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "b" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "c" 0))])))))))))+,(FunctionDecl (132,1) (Ident "comb" 0) [(Equation (132,1) (FunLhs (Ident "comb" 0) [(VariablePattern (Ident "_" 62)),(VariablePattern (Ident "_" 63)),(VariablePattern (Ident "_" 64)),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(VariablePattern (Ident "_" 65)),(VariablePattern (Ident "_" 66))]) (SimpleRhs (132,30) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0))) [])),(Equation (133,1) (FunLhs (Ident "comb" 0) [(VariablePattern (Ident "f" 68)),(VariablePattern (Ident "def1" 68)),(VariablePattern (Ident "def2" 68)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "x" 68)),(VariablePattern (Ident "xl" 68)),(VariablePattern (Ident "xr" 68))])),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(VariablePattern (Ident "b" 68)),(VariablePattern (Ident "o" 68))]) (SimpleRhs (134,3) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 68))) (Variable (QualIdent Nothing (Ident "x" 68)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "def2" 68))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "b" 68))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "o" 68)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 70) 1))))))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 68)))) (Variable (QualIdent Nothing (Ident "def1" 68)))) (Variable (QualIdent Nothing (Ident "def2" 68)))) (Variable (QualIdent Nothing (Ident "xl" 68)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Paren (InfixApply (Literal (Int (Ident "_" 71) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 68)))))) (Variable (QualIdent Nothing (Ident "o" 68)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 68)))) (Variable (QualIdent Nothing (Ident "def1" 68)))) (Variable (QualIdent Nothing (Ident "def2" 68)))) (Variable (QualIdent Nothing (Ident "xr" 68)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Paren (InfixApply (Literal (Int (Ident "_" 72) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 68)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "o" 68))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "b" 68)))))))) [])),(Equation (137,1) (FunLhs (Ident "comb" 0) [(VariablePattern (Ident "f" 73)),(VariablePattern (Ident "def1" 73)),(VariablePattern (Ident "def2" 73)),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "y" 73)),(VariablePattern (Ident "yl" 73)),(VariablePattern (Ident "yr" 73))])),(VariablePattern (Ident "b" 73)),(VariablePattern (Ident "o" 73))]) (SimpleRhs (138,3) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 73))) (Paren (Apply (Variable (QualIdent Nothing (Ident "def1" 73))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "b" 73))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "o" 73)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 75) 1))))))) (Variable (QualIdent Nothing (Ident "y" 73)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 73)))) (Variable (QualIdent Nothing (Ident "def1" 73)))) (Variable (QualIdent Nothing (Ident "def2" 73)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Variable (QualIdent Nothing (Ident "yl" 73)))) (Paren (InfixApply (Literal (Int (Ident "_" 76) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 73)))))) (Variable (QualIdent Nothing (Ident "o" 73)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 73)))) (Variable (QualIdent Nothing (Ident "def1" 73)))) (Variable (QualIdent Nothing (Ident "def2" 73)))) (Constructor (QualIdent (Just "Array") (Ident "Empty" 0)))) (Variable (QualIdent Nothing (Ident "yr" 73)))) (Paren (InfixApply (Literal (Int (Ident "_" 77) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 73)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "o" 73))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "b" 73)))))))) [])),(Equation (141,1) (FunLhs (Ident "comb" 0) [(VariablePattern (Ident "f" 78)),(VariablePattern (Ident "def1" 78)),(VariablePattern (Ident "def2" 78)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "x" 78)),(VariablePattern (Ident "xl" 78)),(VariablePattern (Ident "xr" 78))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "y" 78)),(VariablePattern (Ident "yl" 78)),(VariablePattern (Ident "yr" 78))])),(VariablePattern (Ident "b" 78)),(VariablePattern (Ident "o" 78))]) (SimpleRhs (142,3) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 78))) (Variable (QualIdent Nothing (Ident "x" 78)))) (Variable (QualIdent Nothing (Ident "y" 78)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 78)))) (Variable (QualIdent Nothing (Ident "def1" 78)))) (Variable (QualIdent Nothing (Ident "def2" 78)))) (Variable (QualIdent Nothing (Ident "xl" 78)))) (Variable (QualIdent Nothing (Ident "yl" 78)))) (Paren (InfixApply (Literal (Int (Ident "_" 80) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 78)))))) (Variable (QualIdent Nothing (Ident "o" 78)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "comb" 0))) (Variable (QualIdent Nothing (Ident "f" 78)))) (Variable (QualIdent Nothing (Ident "def1" 78)))) (Variable (QualIdent Nothing (Ident "def2" 78)))) (Variable (QualIdent Nothing (Ident "xr" 78)))) (Variable (QualIdent Nothing (Ident "yr" 78)))) (Paren (InfixApply (Literal (Int (Ident "_" 81) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 78)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "o" 78))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "b" 78)))))))) []))])+,(TypeSig (152,1) [(Ident "combineSimilar" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (153,1) (Ident "combineSimilar" 0) [(Equation (153,1) (FunLhs (Ident "combineSimilar" 0) [(VariablePattern (Ident "f" 82)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "def" 82)),(VariablePattern (Ident "a1" 82))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "_" 83)),(VariablePattern (Ident "a2" 82))]))]) (SimpleRhs (153,49) (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Array" 0))) (Variable (QualIdent Nothing (Ident "def" 82)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "combSim" 0))) (Variable (QualIdent Nothing (Ident "f" 82)))) (Variable (QualIdent Nothing (Ident "a1" 82)))) (Variable (QualIdent Nothing (Ident "a2" 82)))))) []))])+,(TypeSig (155,1) [(Ident "combSim" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Entry" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (156,1) (Ident "combSim" 0) [(Equation (156,1) (FunLhs (Ident "combSim" 0) [(VariablePattern (Ident "_" 86)),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) []),(VariablePattern (Ident "a2" 85))]) (SimpleRhs (156,22) (Variable (QualIdent Nothing (Ident "a2" 85))) [])),(Equation (157,1) (FunLhs (Ident "combSim" 0) [(VariablePattern (Ident "_" 89)),(AsPattern (Ident "a1" 88) (ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "_" 90)),(VariablePattern (Ident "_" 91)),(VariablePattern (Ident "_" 92))]))),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) [])]) (SimpleRhs (157,36) (Variable (QualIdent Nothing (Ident "a1" 88))) [])),(Equation (158,1) (FunLhs (Ident "combSim" 0) [(VariablePattern (Ident "f" 94)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "x" 94)),(VariablePattern (Ident "xl" 94)),(VariablePattern (Ident "xr" 94))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "y" 94)),(VariablePattern (Ident "yl" 94)),(VariablePattern (Ident "yr" 94))]))]) (SimpleRhs (159,3) (Apply (Apply (Apply (Constructor (QualIdent (Just "Array") (Ident "Entry" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 94))) (Variable (QualIdent Nothing (Ident "x" 94)))) (Variable (QualIdent Nothing (Ident "y" 94)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "combSim" 0))) (Variable (QualIdent Nothing (Ident "f" 94)))) (Variable (QualIdent Nothing (Ident "xl" 94)))) (Variable (QualIdent Nothing (Ident "yl" 94)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "combSim" 0))) (Variable (QualIdent Nothing (Ident "f" 94)))) (Variable (QualIdent Nothing (Ident "xr" 94)))) (Variable (QualIdent Nothing (Ident "yr" 94)))))) []))])+,(TypeSig (162,1) [(Ident "foldArray" 0)] (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0))))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "b" 0))))))+,(FunctionDecl (163,1) (Ident "foldArray" 0) [(Equation (163,1) (FunLhs (Ident "foldArray" 0) [(VariablePattern (Ident "emp" 96)),(VariablePattern (Ident "ent" 96)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Array" 0)) [(VariablePattern (Ident "_" 97)),(VariablePattern (Ident "es" 96))]))]) (SimpleRhs (163,34) (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "foldEntries" 0))) (Variable (QualIdent Nothing (Ident "emp" 96)))) (Variable (QualIdent Nothing (Ident "ent" 96)))) (Variable (QualIdent Nothing (Ident "es" 96)))) []))])+,(FunctionDecl (165,1) (Ident "foldEntries" 0) [(Equation (165,1) (FunLhs (Ident "foldEntries" 0) [(VariablePattern (Ident "emp" 99)),(VariablePattern (Ident "_" 100)),(ConstructorPattern (QualIdent (Just "Array") (Ident "Empty" 0)) [])]) (SimpleRhs (165,27) (Variable (QualIdent Nothing (Ident "emp" 99))) [])),(Equation (166,1) (FunLhs (Ident "foldEntries" 0) [(VariablePattern (Ident "emp" 102)),(VariablePattern (Ident "ent" 102)),(ParenPattern (ConstructorPattern (QualIdent (Just "Array") (Ident "Entry" 0)) [(VariablePattern (Ident "x" 102)),(VariablePattern (Ident "a1" 102)),(VariablePattern (Ident "a2" 102))]))]) (SimpleRhs (167,3) (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "ent" 102))) (Variable (QualIdent Nothing (Ident "x" 102)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "foldEntries" 0))) (Variable (QualIdent Nothing (Ident "emp" 102)))) (Variable (QualIdent Nothing (Ident "ent" 102)))) (Variable (QualIdent Nothing (Ident "a1" 102)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "foldEntries" 0))) (Variable (QualIdent Nothing (Ident "emp" 102)))) (Variable (QualIdent Nothing (Ident "ent" 102)))) (Variable (QualIdent Nothing (Ident "a2" 102)))))) []))])+,(TypeSig (169,1) [(Ident "arrayToList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Array" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (170,1) (Ident "arrayToList" 0) [(Equation (170,1) (FunLhs (Ident "arrayToList" 0) []) (SimpleRhs (170,15) (Apply (Apply (Variable (QualIdent (Just "Array") (Ident "foldArray" 0))) (List [])) (Paren (Lambda [(VariablePattern (Ident "x" 106)),(VariablePattern (Ident "ys" 106)),(VariablePattern (Ident "zs" 106))] (InfixApply (Variable (QualIdent Nothing (Ident "x" 106))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "ys" 106))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "zs" 106)))))))) []))])+]
+ src/lib/Curry/Module/.curry/Array.efc view
@@ -0,0 +1,1 @@+Prog "Array" ["Integer","Prelude"] [Type ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) Public [0] [Cons ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) 2 Private [FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0),TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]]],Type ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) Private [0] [Cons ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) 3 Private [TVar 0,TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0],TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) 0 Private []]] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),"Array","emptyErrorArray")) 0 Public (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])),"Array","emptyDefaultArray")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),"Array","errorArray")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),"Array","errorArray")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'z'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])),"Array","emptyDefaultArray")) 1 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","//")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","//._#lambda2")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),2))]])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 72])))),"Array","//._#lambda2")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 72)) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 72]) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 72]) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 72])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]),2),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 72) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 72]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TVar 72),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 72) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 72) (TVar 72)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]))))),"Array","at")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 72)),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 72]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 72) (FuncType (TVar 72) (TVar 72))),"Prelude","const")) [Var ((Just (TVar 72),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Array","update")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 0),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),"Prelude","const")) [Var ((Just (TVar 0),3))]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Array","applyAt")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (FuncType (TVar 0) (TVar 0)),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (FuncType (TVar 0) (TVar 0)),3))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) 4 Private (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]))))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (FuncType (TVar 0) (TVar 0)),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 0)),4)),Var ((Just (TVar 0),1))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Lit (Intc  1)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Prelude","failed")) [])])])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 0)),4)),Var ((Just (TVar 0),5))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),5)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]))))),"Array","at")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Lit (Intc  1)],Var ((Just (FuncType (TVar 0) (TVar 0)),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Array","!")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) 3 Private (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Var ((Just (TVar 0),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),4))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)))),"Array","from")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Lit (Intc  1)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TVar 0),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Array","split")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 141) (FuncType (TVar 142) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 141),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 142),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 146) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []],Comb ConsCall ((Nothing,Just (TVar 146),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Let [((Just (TVar 139),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 148]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 148],TCons (Nothing,Nothing,"Prelude","[]") [TVar 148]])),"Array","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 149],TCons (Nothing,Nothing,"Prelude","[]") [TVar 149]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 149])),"Array","split._#selFP3#xs")) [Var ((Just (TVar 139),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 150],TCons (Nothing,Nothing,"Prelude","[]") [TVar 150]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 150])),"Array","split._#selFP4#ys")) [Var ((Just (TVar 139),6))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),8))]]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126])),"Array","split._#selFP3#xs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]) (FuncType (TVar 129) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),2),(Just (TVar 129),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126])),"Array","split._#selFP4#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 126])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 128) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 126],TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]]))),"Prelude","(,)")) [(Just (TVar 128),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 126]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","listToDefaultArray")) 1 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])),"Array","listToErrorArray")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","listToDefaultArray")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),"Array","errorArray")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Let [((Just (TVar 141),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 143]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 143],TCons (Nothing,Nothing,"Prelude","[]") [TVar 143]])),"Array","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 144],TCons (Nothing,Nothing,"Prelude","[]") [TVar 144]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 144])),"Array","listToArray._#selFP6#ys")) [Var ((Just (TVar 141),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 145],TCons (Nothing,Nothing,"Prelude","[]") [TVar 145]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 145])),"Array","listToArray._#selFP7#zs")) [Var ((Just (TVar 141),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Var ((Just (TVar 0),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])),"Array","listToArray")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))]]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137])),"Array","listToArray._#selFP6#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (FuncType (TVar 140) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),2),(Just (TVar 140),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137])),"Array","listToArray._#selFP7#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 137])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 139) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 137],TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]]))),"Prelude","(,)")) [(Just (TVar 139),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 1]) (TCons (Nothing,Nothing,"Array","Array") [TVar 2])))),"Array","combine")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 1]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 2])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Array") [TVar 1]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),6),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 2)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Array") [TVar 2]))),"Array","Array")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 2))))),"Array","combine._#lambda3")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),6)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),6)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),7)),Lit (Intc  0),Lit (Intc  1)]])])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)) (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 263))))),"Array","combine._#lambda3")) 4 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 252)) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 255)) (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 263))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)),2),(Just (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 255) (TVar 263)) (FuncType (TVar 255) (TVar 263))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 252)),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 255)),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) 7 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0)) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 2])))))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]),"Array","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 1])))),"Array","Entry")) [(Just (TVar 1),8),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),9),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),10)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Lit (Intc  1)]]],Var ((Just (TVar 1),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),9)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) [],Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),10)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),11),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),12),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),13)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),11))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Lit (Intc  1)]]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),12)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),13)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]]),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 1])))),"Array","Entry")) [(Just (TVar 1),14),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),15),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),16)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 2]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),11))],Var ((Just (TVar 1),14))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),12)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),15)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Array","Entry") [TVar 2])))))))),"Array","comb")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),2)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),3)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),13)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),16)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0])))),"Array","combineSimilar")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),6),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","Array")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0)),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),7))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0]) (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),3))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),"Array","Empty")) []) (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [(Just (TVar 0),7),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),8),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","Entry")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TVar 0),4))],Var ((Just (TVar 0),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 0])))),"Array","combSim")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),6)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 0]),9))]])])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 1]) (TVar 0)))),"Array","foldArray")) 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 1]) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2),(Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Array") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Array") [TVar 1]))),"Array","Array")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 1)),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) 3 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ((Nothing,Nothing,"Array","Entry")) [TVar 1]) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),"Array","Empty")) []) (Var ((Just (TVar 0),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TCons (Nothing,Nothing,"Array","Entry") [TVar 1])))),"Array","Entry")) [(Just (TVar 1),4),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5),(Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TVar 1),4))],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),5))]],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]) (TVar 0)))),"Array","foldEntries")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),2)),Var ((Just (TCons (Nothing,Nothing,"Array","Entry") [TVar 1]),6))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Array","arrayToList")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Array","Array")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))) (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Array","foldArray")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Array","arrayToList._#lambda4")) []])),Func ((Nothing,Just (FuncType (TVar 345) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345])))),"Array","arrayToList._#lambda4")) 3 Private (FuncType (TVar 345) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 345]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 345]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 345])))) (Rule [(Just (TVar 345),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),3)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 345) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]))),"Prelude",":")) [Var ((Just (TVar 345),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 345]),3))]]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Array","!")) InfixlOp 9,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Array","Array") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Array","Array") [TVar 0]))),"Array","//")) InfixlOp 9]
+ src/lib/Curry/Module/.curry/Array.fcy view
@@ -0,0 +1,1 @@+Prog "Array" ["Integer","Prelude"] [Type ("Array","Array") Public [0] [Cons ("Array","Array") 2 Private [FuncType (TCons ("Prelude","Int") []) (TVar 0),TCons ("Array","Entry") [TVar 0]]],Type ("Array","Entry") Private [0] [Cons ("Array","Entry") 3 Private [TVar 0,TCons ("Array","Entry") [TVar 0],TCons ("Array","Entry") [TVar 0]],Cons ("Array","Empty") 0 Private []]] [Func ("Array","emptyErrorArray") 0 Public (TCons ("Array","Array") [TVar 0]) (Rule [] (Comb FuncCall ("Array","emptyDefaultArray") [Comb (FuncPartCall 1) ("Array","errorArray") []])),Func ("Array","errorArray") 1 Private (FuncType (TCons ("Prelude","Int") []) (TVar 0)) (Rule [1] (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 1],Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'z'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]])),Func ("Array","emptyDefaultArray") 1 Public (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 0)) (TCons ("Array","Array") [TVar 0])) (Rule [1] (Comb ConsCall ("Array","Array") [Var 1,Comb ConsCall ("Array","Empty") []])),Func ("Array","//") 2 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]) (TCons ("Array","Array") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Array","Array") [3,4]) (Comb ConsCall ("Array","Array") [Var 3,Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("Array","//._#lambda2") [Var 3],Var 4,Var 2]])])),Func ("Array","//._#lambda2") 3 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 72)) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 72]) (FuncType (TCons ("Array","Entry") [TVar 72]) (TCons ("Array","Entry") [TVar 72])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [4,5]) (Comb FuncCall ("Array","at") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 3,Var 4,Comb (FuncPartCall 1) ("Prelude","const") [Var 5]])])),Func ("Array","update") 3 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Array","Array") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 1) [Branch (Pattern ("Array","Array") [4,5]) (Comb ConsCall ("Array","Array") [Var 4,Comb FuncCall ("Array","at") [Comb FuncCall ("Prelude","apply") [Var 4,Var 2],Var 5,Var 2,Comb (FuncPartCall 1) ("Prelude","const") [Var 3]]])])),Func ("Array","applyAt") 3 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ("Array","Array") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 1) [Branch (Pattern ("Array","Array") [4,5]) (Comb ConsCall ("Array","Array") [Var 4,Comb FuncCall ("Array","at") [Comb FuncCall ("Prelude","apply") [Var 4,Var 2],Var 5,Var 2,Var 3]])])),Func ("Array","at") 4 Private (FuncType (TVar 0) (FuncType (TCons ("Array","Entry") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ("Array","Entry") [TVar 0]))))) (Rule [1,2,3,4] (Case  Flex (Var 2) [Branch (Pattern ("Array","Empty") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Array","Entry") [Comb FuncCall ("Prelude","apply") [Var 4,Var 1],Comb ConsCall ("Array","Empty") [],Comb ConsCall ("Array","Empty") []]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Integer","odd") [Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Array","Entry") [Var 1,Comb FuncCall ("Array","at") [Var 1,Comb ConsCall ("Array","Empty") [],Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)],Var 4],Comb ConsCall ("Array","Empty") []]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Array","Entry") [Var 1,Comb ConsCall ("Array","Empty") [],Comb FuncCall ("Array","at") [Var 1,Comb ConsCall ("Array","Empty") [],Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)],Lit (Intc  1)],Var 4]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])]),Branch (Pattern ("Array","Entry") [5,6,7]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Array","Entry") [Comb FuncCall ("Prelude","apply") [Var 4,Var 5],Var 6,Var 7]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Integer","odd") [Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Array","Entry") [Var 5,Comb FuncCall ("Array","at") [Var 1,Var 6,Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)],Var 4],Var 7]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Array","Entry") [Var 5,Var 6,Comb FuncCall ("Array","at") [Var 1,Var 7,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)],Lit (Intc  1)],Var 4]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Array","!") 2 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (TVar 0))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Array","Array") [3,4]) (Comb FuncCall ("Array","from") [Comb FuncCall ("Prelude","apply") [Var 3,Var 2],Var 4,Var 2])])),Func ("Array","from") 3 Private (FuncType (TVar 0) (FuncType (TCons ("Array","Entry") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (TVar 0)))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Array","Empty") []) (Var 1),Branch (Pattern ("Array","Entry") [4,5,6]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 4),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Integer","odd") [Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Array","from") [Var 1,Var 5,Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Array","from") [Var 1,Var 6,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)],Lit (Intc  1)]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Array","split") 1 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 2,Comb ConsCall ("Prelude","[]") []],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("Array","split") [Var 5])] (Let [(7,Comb FuncCall ("Array","split._#selFP3#xs") [Var 6])] (Let [(8,Comb FuncCall ("Array","split._#selFP4#ys") [Var 6])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 2,Var 7],Comb ConsCall ("Prelude",":") [Var 4,Var 8]]))))])])),Func ("Array","split._#selFP3#xs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 126],TCons ("Prelude","[]") [TVar 126]]) (TCons ("Prelude","[]") [TVar 126])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Array","split._#selFP4#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 126],TCons ("Prelude","[]") [TVar 126]]) (TCons ("Prelude","[]") [TVar 126])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Array","listToDefaultArray") 1 Public (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 0)) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Array","Array") [TVar 0]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Array","Array") [Var 1],Comb (FuncPartCall 1) ("Array","listToArray") []])),Func ("Array","listToErrorArray") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Array","Array") [TVar 0])) (Rule [] (Comb FuncCall ("Array","listToDefaultArray") [Comb (FuncPartCall 1) ("Array","errorArray") []])),Func ("Array","listToArray") 1 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Array","Entry") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Array","Empty") []),Branch (Pattern ("Prelude",":") [2,3]) (Let [(4,Comb FuncCall ("Array","split") [Var 3])] (Let [(5,Comb FuncCall ("Array","listToArray._#selFP6#ys") [Var 4])] (Let [(6,Comb FuncCall ("Array","listToArray._#selFP7#zs") [Var 4])] (Comb ConsCall ("Array","Entry") [Var 2,Comb FuncCall ("Array","listToArray") [Var 5],Comb FuncCall ("Array","listToArray") [Var 6]]))))])),Func ("Array","listToArray._#selFP6#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 137],TCons ("Prelude","[]") [TVar 137]]) (TCons ("Prelude","[]") [TVar 137])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Array","listToArray._#selFP7#zs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 137],TCons ("Prelude","[]") [TVar 137]]) (TCons ("Prelude","[]") [TVar 137])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Array","combine") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Array","Array") [TVar 1]) (TCons ("Array","Array") [TVar 2])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Array","Array") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Array","Array") [6,7]) (Comb ConsCall ("Array","Array") [Comb (FuncPartCall 1) ("Array","combine._#lambda3") [Var 4,Var 6,Var 1],Comb FuncCall ("Array","comb") [Var 1,Var 4,Var 6,Var 5,Var 7,Lit (Intc  0),Lit (Intc  1)]])])])),Func ("Array","combine._#lambda3") 4 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 252)) (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 255)) (FuncType (FuncType (TVar 252) (FuncType (TVar 255) (TVar 263))) (FuncType (TCons ("Prelude","Int") []) (TVar 263))))) (Rule [1,2,3,4] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Prelude","apply") [Var 1,Var 4]],Comb FuncCall ("Prelude","apply") [Var 2,Var 4]])),Func ("Array","comb") 7 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 0)) (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 1)) (FuncType (TCons ("Array","Entry") [TVar 0]) (FuncType (TCons ("Array","Entry") [TVar 1]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Array","Entry") [TVar 2])))))))) (Rule [1,2,3,4,5,6,7] (Case  Flex (Var 4) [Branch (Pattern ("Array","Empty") []) (Case  Flex (Var 5) [Branch (Pattern ("Array","Empty") []) (Comb ConsCall ("Array","Empty") []),Branch (Pattern ("Array","Entry") [8,9,10]) (Comb ConsCall ("Array","Entry") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","+") [Var 6,Var 7],Lit (Intc  1)]]],Var 8],Comb FuncCall ("Array","comb") [Var 1,Var 2,Var 3,Comb ConsCall ("Array","Empty") [],Var 9,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 6],Var 7],Comb FuncCall ("Array","comb") [Var 1,Var 2,Var 3,Comb ConsCall ("Array","Empty") [],Var 10,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 6],Comb FuncCall ("Prelude","+") [Var 7,Var 6]]])]),Branch (Pattern ("Array","Entry") [11,12,13]) (Case  Flex (Var 5) [Branch (Pattern ("Array","Empty") []) (Comb ConsCall ("Array","Entry") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 11],Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","+") [Var 6,Var 7],Lit (Intc  1)]]],Comb FuncCall ("Array","comb") [Var 1,Var 2,Var 3,Var 12,Comb ConsCall ("Array","Empty") [],Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 6],Var 7],Comb FuncCall ("Array","comb") [Var 1,Var 2,Var 3,Var 13,Comb ConsCall ("Array","Empty") [],Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 6],Comb FuncCall ("Prelude","+") [Var 7,Var 6]]]),Branch (Pattern ("Array","Entry") [14,15,16]) (Comb ConsCall ("Array","Entry") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 11],Var 14],Comb FuncCall ("Array","comb") [Var 1,Var 2,Var 3,Var 12,Var 15,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 6],Var 7],Comb FuncCall ("Array","comb") [Var 1,Var 2,Var 3,Var 13,Var 16,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 6],Comb FuncCall ("Prelude","+") [Var 7,Var 6]]])])])),Func ("Array","combineSimilar") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Array","Array") [TVar 0]) (TCons ("Array","Array") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Array","Array") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Array","Array") [6,7]) (Comb ConsCall ("Array","Array") [Var 4,Comb FuncCall ("Array","combSim") [Var 1,Var 5,Var 7]])])])),Func ("Array","combSim") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Array","Entry") [TVar 0]) (FuncType (TCons ("Array","Entry") [TVar 0]) (TCons ("Array","Entry") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Array","Empty") []) (Var 3),Branch (Pattern ("Array","Entry") [4,5,6]) (Case  Flex (Var 3) [Branch (Pattern ("Array","Empty") []) (Var 2),Branch (Pattern ("Array","Entry") [7,8,9]) (Comb ConsCall ("Array","Entry") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 7],Comb FuncCall ("Array","combSim") [Var 1,Var 5,Var 8],Comb FuncCall ("Array","combSim") [Var 1,Var 6,Var 9]])])])),Func ("Array","foldArray") 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ("Array","Array") [TVar 1]) (TVar 0)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Array","Array") [4,5]) (Comb FuncCall ("Array","foldEntries") [Var 1,Var 2,Var 5])])),Func ("Array","foldEntries") 3 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ("Array","Entry") [TVar 1]) (TVar 0)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Array","Empty") []) (Var 1),Branch (Pattern ("Array","Entry") [4,5,6]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Comb FuncCall ("Array","foldEntries") [Var 1,Var 2,Var 5]],Comb FuncCall ("Array","foldEntries") [Var 1,Var 2,Var 6]])])),Func ("Array","arrayToList") 0 Public (FuncType (TCons ("Array","Array") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("Array","foldArray") [Comb ConsCall ("Prelude","[]") [],Comb (FuncPartCall 3) ("Array","arrayToList._#lambda4") []])),Func ("Array","arrayToList._#lambda4") 3 Private (FuncType (TVar 345) (FuncType (TCons ("Prelude","[]") [TVar 345]) (FuncType (TCons ("Prelude","[]") [TVar 345]) (TCons ("Prelude","[]") [TVar 345])))) (Rule [1,2,3] (Comb ConsCall ("Prelude",":") [Var 1,Comb FuncCall ("Prelude","++") [Var 2,Var 3]]))] [Op ("Array","!") InfixlOp 9,Op ("Array","//") InfixlOp 9]
+ src/lib/Curry/Module/.curry/Array.fint view
@@ -0,0 +1,1 @@+Prog "Array" ["Integer","Prelude"] [Type ("Array","Array") Public [0] []] [Func ("Array","emptyErrorArray") 0 Public (TCons ("Array","Array") [TVar 0]) (Rule [] (Var 0)),Func ("Array","emptyDefaultArray") 1 Public (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 0)) (TCons ("Array","Array") [TVar 0])) (Rule [] (Var 0)),Func ("Array","//") 2 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]) (TCons ("Array","Array") [TVar 0]))) (Rule [] (Var 0)),Func ("Array","update") 3 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Array","Array") [TVar 0])))) (Rule [] (Var 0)),Func ("Array","applyAt") 3 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TVar 0) (TVar 0)) (TCons ("Array","Array") [TVar 0])))) (Rule [] (Var 0)),Func ("Array","!") 2 Public (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (TVar 0))) (Rule [] (Var 0)),Func ("Array","listToDefaultArray") 1 Public (FuncType (FuncType (TCons ("Prelude","Int") []) (TVar 0)) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Array","Array") [TVar 0]))) (Rule [] (Var 0)),Func ("Array","listToErrorArray") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Array","Array") [TVar 0])) (Rule [] (Var 0)),Func ("Array","combine") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Array","Array") [TVar 1]) (TCons ("Array","Array") [TVar 2])))) (Rule [] (Var 0)),Func ("Array","combineSimilar") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Array","Array") [TVar 0]) (FuncType (TCons ("Array","Array") [TVar 0]) (TCons ("Array","Array") [TVar 0])))) (Rule [] (Var 0)),Func ("Array","foldArray") 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (FuncType (TCons ("Array","Array") [TVar 1]) (TVar 0)))) (Rule [] (Var 0)),Func ("Array","arrayToList") 0 Public (FuncType (TCons ("Array","Array") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0))] [Op ("Array","!") InfixlOp 9,Op ("Array","//") InfixlOp 9]
+ src/lib/Curry/Module/.curry/Array.uacy view
@@ -0,0 +1,25 @@+CurryProg "Array"+ ["Prelude","Integer"]+ [CType ("Array","Array") Public [(0,"b")] [CCons ("Array","Array") 2 Public [CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"b")),CTCons ("Array","Entry") [CTVar (0,"b")]]],+  CType ("Array","Entry") Private [(0,"b")] [CCons ("Array","Entry") 3 Private [CTVar (0,"b"),CTCons ("Array","Entry") [CTVar (0,"b")],CTCons ("Array","Entry") [CTVar (0,"b")]],CCons ("Array","Empty") 0 Private []]]+ [CFunc ("Array","!") 2 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"b")))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"array")],CPVar (2,"i")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","from")) (CApply (CVar (0,"default")) (CVar (2,"i")))) (CVar (1,"array"))) (CVar (2,"i")))] []]),+  CFunc ("Array","//") 2 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"b")]]) (CTCons ("Array","Array") [CTVar (0,"b")]))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"array")],CPVar (2,"modifications")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CLambda [CPComb ("Prelude","(,)") [CPVar (3,"n"),CPVar (4,"v")],CPVar (5,"a")] (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CApply (CVar (0,"default")) (CVar (3,"n")))) (CVar (5,"a"))) (CVar (3,"n"))) (CApply (CSymbol ("Prelude","const")) (CVar (4,"v")))))) (CVar (1,"array"))) (CVar (2,"modifications"))))] []]),+  CFunc ("Array","applyAt") 3 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTVar (0,"b")) (CTVar (0,"b"))) (CTCons ("Array","Array") [CTVar (0,"b")])))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"a")],CPVar (2,"n"),CPVar (3,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CApply (CVar (0,"default")) (CVar (2,"n")))) (CVar (1,"a"))) (CVar (2,"n"))) (CVar (3,"f"))))] []]),+  CFunc ("Array","arrayToList") 0 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","foldArray")) (CSymbol ("Prelude","[]"))) (CLambda [CPVar (0,"x"),CPVar (1,"ys"),CPVar (2,"zs")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"ys"))) (CVar (2,"zs"))))))] []]),+  CFunc ("Array","at") 4 Private (CFuncType (CTVar (0,"b")) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTVar (0,"b")) (CTVar (0,"b"))) (CTCons ("Array","Entry") [CTVar (0,"b")]))))) (CRules CFlex [CRule [CPVar (0,"default"),CPComb ("Array","Empty") [],CPVar (1,"n"),CPVar (2,"f")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CVar (2,"f")) (CVar (0,"default")))) (CSymbol ("Array","Empty"))) (CSymbol ("Array","Empty"))),(CApply (CSymbol ("Integer","odd")) (CVar (1,"n")),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (0,"default"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (0,"default"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"n"))) (CLit (CIntc 2)))) (CVar (2,"f")))) (CSymbol ("Array","Empty"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (0,"default"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (0,"default"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (2,"f"))))] [],CRule [CPVar (3,"default"),CPComb ("Array","Entry") [CPVar (4,"v"),CPVar (5,"al"),CPVar (6,"ar")],CPVar (7,"n"),CPVar (8,"f")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CVar (8,"f")) (CVar (4,"v")))) (CVar (5,"al"))) (CVar (6,"ar"))),(CApply (CSymbol ("Integer","odd")) (CVar (7,"n")),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (4,"v"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (3,"default"))) (CVar (5,"al"))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (7,"n"))) (CLit (CIntc 2)))) (CVar (8,"f")))) (CVar (6,"ar"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (4,"v"))) (CVar (5,"al"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CVar (3,"default"))) (CVar (6,"ar"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (7,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (8,"f"))))] []]),+  CFunc ("Array","comb") 7 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (1,"b"))) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Entry") [CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Array","Entry") [CTVar (2,"c")])))))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("Array","Empty") [],CPComb ("Array","Empty") [],CPVar (3,"_"),CPVar (4,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Array","Empty"))] [],CRule [CPVar (5,"f"),CPVar (6,"def1"),CPVar (7,"def2"),CPComb ("Array","Entry") [CPVar (8,"x"),CPVar (9,"xl"),CPVar (10,"xr")],CPComb ("Array","Empty") [],CPVar (11,"b"),CPVar (12,"o")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (5,"f")) (CVar (8,"x"))) (CApply (CVar (7,"def2")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (11,"b"))) (CVar (12,"o")))) (CLit (CIntc 1)))))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (5,"f"))) (CVar (6,"def1"))) (CVar (7,"def2"))) (CVar (9,"xl"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (11,"b")))) (CVar (12,"o")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (5,"f"))) (CVar (6,"def1"))) (CVar (7,"def2"))) (CVar (10,"xr"))) (CSymbol ("Array","Empty"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (11,"b")))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (12,"o"))) (CVar (11,"b")))))] [],CRule [CPVar (13,"f"),CPVar (14,"def1"),CPVar (15,"def2"),CPComb ("Array","Empty") [],CPComb ("Array","Entry") [CPVar (16,"y"),CPVar (17,"yl"),CPVar (18,"yr")],CPVar (19,"b"),CPVar (20,"o")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (13,"f")) (CApply (CVar (14,"def1")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (19,"b"))) (CVar (20,"o")))) (CLit (CIntc 1))))) (CVar (16,"y")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (13,"f"))) (CVar (14,"def1"))) (CVar (15,"def2"))) (CSymbol ("Array","Empty"))) (CVar (17,"yl"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (19,"b")))) (CVar (20,"o")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (13,"f"))) (CVar (14,"def1"))) (CVar (15,"def2"))) (CSymbol ("Array","Empty"))) (CVar (18,"yr"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (19,"b")))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (20,"o"))) (CVar (19,"b")))))] [],CRule [CPVar (21,"f"),CPVar (22,"def1"),CPVar (23,"def2"),CPComb ("Array","Entry") [CPVar (24,"x"),CPVar (25,"xl"),CPVar (26,"xr")],CPComb ("Array","Entry") [CPVar (27,"y"),CPVar (28,"yl"),CPVar (29,"yr")],CPVar (30,"b"),CPVar (31,"o")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (21,"f")) (CVar (24,"x"))) (CVar (27,"y")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (21,"f"))) (CVar (22,"def1"))) (CVar (23,"def2"))) (CVar (25,"xl"))) (CVar (28,"yl"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (30,"b")))) (CVar (31,"o")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (21,"f"))) (CVar (22,"def1"))) (CVar (23,"def2"))) (CVar (26,"xr"))) (CVar (29,"yr"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (30,"b")))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (31,"o"))) (CVar (30,"b")))))] []]),+  CFunc ("Array","combSim") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CTCons ("Array","Entry") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Array","Empty") [],CPVar (1,"a2")] [(CSymbol ("Prelude","success"),CVar (1,"a2"))] [],CRule [CPVar (2,"_"),CPAs (6,"a1") (CPComb ("Array","Entry") [CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_")]),CPComb ("Array","Empty") []] [(CSymbol ("Prelude","success"),CVar (6,"a1"))] [],CRule [CPVar (7,"f"),CPComb ("Array","Entry") [CPVar (8,"x"),CPVar (9,"xl"),CPVar (10,"xr")],CPComb ("Array","Entry") [CPVar (11,"y"),CPVar (12,"yl"),CPVar (13,"yr")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","Entry")) (CApply (CApply (CVar (7,"f")) (CVar (8,"x"))) (CVar (11,"y")))) (CApply (CApply (CApply (CSymbol ("Array","combSim")) (CVar (7,"f"))) (CVar (9,"xl"))) (CVar (12,"yl")))) (CApply (CApply (CApply (CSymbol ("Array","combSim")) (CVar (7,"f"))) (CVar (10,"xr"))) (CVar (13,"yr"))))] []]),+  CFunc ("Array","combine") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Array") [CTVar (1,"b")]) (CTCons ("Array","Array") [CTVar (2,"c")])))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Array","Array") [CPVar (1,"def1"),CPVar (2,"a1")],CPComb ("Array","Array") [CPVar (3,"def2"),CPVar (4,"a2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CLambda [CPVar (5,"i")] (CApply (CApply (CVar (0,"f")) (CApply (CVar (1,"def1")) (CVar (5,"i")))) (CApply (CVar (3,"def2")) (CVar (5,"i")))))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Array","comb")) (CVar (0,"f"))) (CVar (1,"def1"))) (CVar (3,"def2"))) (CVar (2,"a1"))) (CVar (4,"a2"))) (CLit (CIntc 0))) (CLit (CIntc 1))))] []]),+  CFunc ("Array","combineSimilar") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CFuncType (CTCons ("Array","Array") [CTVar (0,"a")]) (CTCons ("Array","Array") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Array","Array") [CPVar (1,"def"),CPVar (2,"a1")],CPComb ("Array","Array") [CPVar (3,"_"),CPVar (4,"a2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (1,"def"))) (CApply (CApply (CApply (CSymbol ("Array","combSim")) (CVar (0,"f"))) (CVar (2,"a1"))) (CVar (4,"a2"))))] []]),+  CFunc ("Array","emptyDefaultArray") 1 Public (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"b"))) (CTCons ("Array","Array") [CTVar (0,"b")])) (CRules CFlex [CRule [CPVar (0,"default")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CSymbol ("Array","Empty")))] []]),+  CFunc ("Array","emptyErrorArray") 0 Public (CTCons ("Array","Array") [CTVar (0,"b")]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Array","emptyDefaultArray")) (CSymbol ("Array","errorArray")))] []]),+  CFunc ("Array","errorArray") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"_"))) (CRules CFlex [CRule [CPVar (0,"idx")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"idx")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'z'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]")))))))))))))))))))))] []]),+  CFunc ("Array","foldArray") 3 Public (CFuncType (CTVar (0,"b")) (CFuncType (CFuncType (CTVar (1,"a")) (CFuncType (CTVar (0,"b")) (CFuncType (CTVar (0,"b")) (CTVar (0,"b"))))) (CFuncType (CTCons ("Array","Array") [CTVar (1,"a")]) (CTVar (0,"b"))))) (CRules CFlex [CRule [CPVar (0,"emp"),CPVar (1,"ent"),CPComb ("Array","Array") [CPVar (2,"_"),CPVar (3,"es")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Array","foldEntries")) (CVar (0,"emp"))) (CVar (1,"ent"))) (CVar (3,"es")))] []]),+  CFunc ("Array","foldEntries") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"emp"),CPVar (1,"_"),CPComb ("Array","Empty") []] [(CSymbol ("Prelude","success"),CVar (0,"emp"))] [],CRule [CPVar (2,"emp"),CPVar (3,"ent"),CPComb ("Array","Entry") [CPVar (4,"x"),CPVar (5,"a1"),CPVar (6,"a2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CVar (3,"ent")) (CVar (4,"x"))) (CApply (CApply (CApply (CSymbol ("Array","foldEntries")) (CVar (2,"emp"))) (CVar (3,"ent"))) (CVar (5,"a1")))) (CApply (CApply (CApply (CSymbol ("Array","foldEntries")) (CVar (2,"emp"))) (CVar (3,"ent"))) (CVar (6,"a2"))))] []]),+  CFunc ("Array","from") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Array","Entry") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"default"),CPComb ("Array","Empty") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"default"))] [],CRule [CPVar (2,"default"),CPComb ("Array","Entry") [CPVar (3,"v"),CPVar (4,"al"),CPVar (5,"ar")],CPVar (6,"n")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"n"))) (CLit (CIntc 0)),CVar (3,"v")),(CApply (CSymbol ("Integer","odd")) (CVar (6,"n")),CApply (CApply (CApply (CSymbol ("Array","from")) (CVar (2,"default"))) (CVar (4,"al"))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (6,"n"))) (CLit (CIntc 2)))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("Array","from")) (CVar (2,"default"))) (CVar (5,"ar"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (6,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 1))))] []]),+  CFunc ("Array","listToArray") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"b")]) (CTCons ("Array","Entry") [CTVar (0,"b")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Array","Empty"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"ys"),CPVar (3,"zs")]) (CApply (CSymbol ("Array","split")) (CVar (1,"xs"))) []] (CApply (CApply (CApply (CSymbol ("Array","Entry")) (CVar (0,"x"))) (CApply (CSymbol ("Array","listToArray")) (CVar (2,"ys")))) (CApply (CSymbol ("Array","listToArray")) (CVar (3,"zs")))))] []]),+  CFunc ("Array","listToDefaultArray") 1 Public (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"b"))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"b")]) (CTCons ("Array","Array") [CTVar (0,"b")]))) (CRules CFlex [CRule [CPVar (0,"def")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Array","Array")) (CVar (0,"def")))) (CSymbol ("Array","listToArray")))] []]),+  CFunc ("Array","listToErrorArray") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"b")]) (CTCons ("Array","Array") [CTVar (0,"b")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Array","listToDefaultArray")) (CSymbol ("Array","errorArray")))] []]),+  CFunc ("Array","split") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPComb ("Prelude",":") [CPVar (2,"y"),CPVar (3,"xys")]]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"xs"),CPVar (5,"ys")]) (CApply (CSymbol ("Array","split")) (CVar (3,"xys"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (4,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"y"))) (CVar (5,"ys")))))] []]),+  CFunc ("Array","update") 3 Public (CFuncType (CTCons ("Array","Array") [CTVar (0,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"b")) (CTCons ("Array","Array") [CTVar (0,"b")])))) (CRules CFlex [CRule [CPComb ("Array","Array") [CPVar (0,"default"),CPVar (1,"a")],CPVar (2,"i"),CPVar (3,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Array","Array")) (CVar (0,"default"))) (CApply (CApply (CApply (CApply (CSymbol ("Array","at")) (CApply (CVar (0,"default")) (CVar (2,"i")))) (CVar (1,"a"))) (CVar (2,"i"))) (CApply (CSymbol ("Prelude","const")) (CVar (3,"v")))))] []])]+ [COp ("Array","//") CInfixlOp 9,COp ("Array","!") CInfixlOp 9]
+ src/lib/Curry/Module/.curry/Assertion.acy view
@@ -0,0 +1,19 @@+CurryProg "Assertion"+ ["Prelude","List","IO"]+ [CType ("Assertion","Assertion") Public [(0,"a")] [CCons ("Assertion","AssertTrue") 2 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []],CCons ("Assertion","AssertEqual") 3 Public [CTCons ("Prelude","String") [],CTVar (0,"a"),CTVar (0,"a")],CCons ("Assertion","AssertValues") 3 Public [CTCons ("Prelude","String") [],CTVar (0,"a"),CTCons ("Prelude","[]") [CTVar (0,"a")]],CCons ("Assertion","AssertSolutions") 3 Public [CTCons ("Prelude","String") [],CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") []),CTCons ("Prelude","[]") [CTVar (0,"a")]],CCons ("Assertion","AssertIO") 3 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","IO") [CTVar (0,"a")],CTVar (0,"a")],CCons ("Assertion","AssertEqualIO") 3 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","IO") [CTVar (0,"a")],CTCons ("Prelude","IO") [CTVar (0,"a")]]],+  CType ("Assertion","ProtocolMsg") Public [] [CCons ("Assertion","TestModule") 1 Public [CTCons ("Prelude","String") []],CCons ("Assertion","TestCase") 2 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []],CCons ("Assertion","TestFinished") 0 Public [],CCons ("Assertion","TestCompileError") 0 Public []]]+ [CFunc ("Assertion","checkAssertEqual") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"call"),CPVar (2,"result")] [(CSymbol ("Prelude","success"),CDoExpr [CSLet [CLocalPat (CPVar (3,"r")) (CVar (1,"call")) []],CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"r"))) (CVar (2,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"r")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"result")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertEqualIO") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"action1"),CPVar (2,"action2")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"r1")) (CVar (1,"action1")),CSPat (CPVar (4,"r2")) (CVar (2,"action2")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"r1"))) (CVar (4,"r2")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '1'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"r1")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '2'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (4,"r2")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertIO") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"action"),CPVar (2,"result")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"r")) (CVar (1,"action")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"r"))) (CVar (2,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"r")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"result")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertSolutions") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"constr"),CPVar (2,"results")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (4,"st")) (CApply (CSymbol ("Prelude","getSearchTree")) (CLetDecl [CLocalVar (3,"x")] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"x"))) (CApply (CVar (1,"constr")) (CVar (3,"x")))))),CSLet [CLocalPat (CPVar (5,"rs")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","fst"))) (CApply (CSymbol ("Prelude","allValuesB")) (CVar (4,"st")))) []],CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (5,"rs"))) (CVar (2,"results"))))) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (2,"results"))) (CVar (5,"rs")))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (5,"rs")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertTrue") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"cond")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"cond"))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))] []]),+  CFunc ("Assertion","checkAssertValues") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"call"),CPVar (2,"results")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"st")) (CApply (CSymbol ("Prelude","getSearchTree")) (CVar (1,"call"))),CSLet [CLocalPat (CPVar (4,"rs")) (CApply (CSymbol ("Prelude","allValuesB")) (CVar (3,"st"))) []],CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (4,"rs"))) (CVar (2,"results"))))) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (2,"results"))) (CVar (4,"rs")))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (4,"rs")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertion") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]])) (CFuncType (CTCons ("Assertion","Assertion") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"prot"),CPComb ("Assertion","AssertTrue") [CPVar (1,"name"),CPVar (2,"cond")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CSymbol ("Assertion","checkAssertTrue")) (CVar (1,"name"))) (CVar (2,"cond")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (0,"prot")))] [],CRule [CPVar (3,"prot"),CPComb ("Assertion","AssertEqual") [CPVar (4,"name"),CPVar (5,"call"),CPVar (6,"result")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertEqual")) (CVar (4,"name"))) (CVar (5,"call"))) (CVar (6,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (3,"prot")))] [],CRule [CPVar (7,"prot"),CPComb ("Assertion","AssertValues") [CPVar (8,"name"),CPVar (9,"expr"),CPVar (10,"results")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertValues")) (CVar (8,"name"))) (CVar (9,"expr"))) (CVar (10,"results")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (8,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (7,"prot")))] [],CRule [CPVar (11,"prot"),CPComb ("Assertion","AssertSolutions") [CPVar (12,"name"),CPVar (13,"constr"),CPVar (14,"results")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertSolutions")) (CVar (12,"name"))) (CVar (13,"constr"))) (CVar (14,"results")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (12,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (11,"prot")))] [],CRule [CPVar (15,"prot"),CPComb ("Assertion","AssertIO") [CPVar (16,"name"),CPVar (17,"action"),CPVar (18,"result")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertIO")) (CVar (16,"name"))) (CVar (17,"action"))) (CVar (18,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (16,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (15,"prot")))] [],CRule [CPVar (19,"prot"),CPComb ("Assertion","AssertEqualIO") [CPVar (20,"name"),CPVar (21,"action1"),CPVar (22,"action2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertEqualIO")) (CVar (20,"name"))) (CVar (21,"action1"))) (CVar (22,"action2")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (20,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (19,"prot")))] []]),+  CFunc ("Assertion","doSend") 2 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("IO","hPutStrLn")) (CVar (0,"h"))) (CApply (CSymbol ("Prelude","show")) (CVar (1,"x"))))] []]),+  CFunc ("Assertion","seqStrActions") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]]) (CFuncType (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"a1"),CPVar (1,"a2")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPComb ("Prelude","(,)") [CPVar (2,"s1"),CPVar (3,"b1")]) (CVar (0,"a1")),CSPat (CPComb ("Prelude","(,)") [CPVar (4,"s2"),CPVar (5,"b2")]) (CVar (1,"a2")),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"s1"))) (CVar (4,"s2")))) (CApply (CApply (CSymbol ("Prelude","&&")) (CVar (3,"b1"))) (CVar (5,"b2")))))])] []]),+  CFunc ("Assertion","showTestCase") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"port"),CPComb ("Prelude","(,)") [CPVar (1,"s"),CPVar (2,"b")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CApply (CApply (CSymbol ("Assertion","TestCase")) (CVar (1,"s"))) (CVar (2,"b"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"s"))) (CVar (2,"b")))))] []]),+  CFunc ("Assertion","showTestCompileError") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CSymbol ("Assertion","TestCompileError")))] []]),+  CFunc ("Assertion","showTestEnd") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CSymbol ("Assertion","TestFinished")))] []]),+  CFunc ("Assertion","showTestMod") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"port"),CPVar (1,"modname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CApply (CSymbol ("Assertion","TestModule")) (CVar (1,"modname"))))] []]),+  CFunc ("Assertion","writeAssertResult") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"result"),CPVar (1,"flag")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"flag"))) (CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"result"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))) (CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"result"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '!'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))] []])]+ [COp ("Assertion","seqStrActions") CInfixlOp 1]
+ src/lib/Curry/Module/.curry/Assertion.cy view
@@ -0,0 +1,37 @@+Module "Assertion"+(Just (Exporting (9,17) [(ExportTypeAll (QualIdent Nothing (Ident "Assertion" 0))),(Export (QualIdent Nothing (Ident "checkAssertion" 0))),(Export (QualIdent Nothing (Ident "seqStrActions" 0))),(Export (QualIdent Nothing (Ident "writeAssertResult" 0))),(ExportTypeAll (QualIdent Nothing (Ident "ProtocolMsg" 0))),(Export (QualIdent Nothing (Ident "showTestMod" 0))),(Export (QualIdent Nothing (Ident "showTestCase" 0))),(Export (QualIdent Nothing (Ident "showTestEnd" 0))),(Export (QualIdent Nothing (Ident "showTestCompileError" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (16,1) "List" False Nothing (Just (Importing (16,12) [(Import (Ident "\\\\" 0))])))+,(ImportDecl (17,1) "IO" False Nothing Nothing)+,(DataDecl (35,1) (Ident "Assertion" 0) [(Ident "a" 0)] [(ConstrDecl (35,20) [] (Ident "AssertTrue" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]),(ConstrDecl (36,20) [] (Ident "AssertEqual" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]),(ConstrDecl (37,20) [] (Ident "AssertValues" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(VariableType (Ident "a" 0)),(ListType (VariableType (Ident "a" 0)))]),(ConstrDecl (38,20) [] (Ident "AssertSolutions" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) [])),(ListType (VariableType (Ident "a" 0)))]),(ConstrDecl (39,20) [] (Ident "AssertIO" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]),(VariableType (Ident "a" 0))]),(ConstrDecl (40,20) [] (Ident "AssertEqualIO" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]),(ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])])])+,(DataDecl (159,1) (Ident "ProtocolMsg" 0) [] [(ConstrDecl (159,20) [] (Ident "TestModule" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]),(ConstrDecl (159,40) [] (Ident "TestCase" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]),(ConstrDecl (159,63) [] (Ident "TestFinished" 0) []),(ConstrDecl (160,20) [] (Ident "TestCompileError" 0) [])])+,(InfixDecl (19,1) InfixL 1 [(Ident "seqStrActions" 0)])+,(TypeSig (45,1) [(Ident "seqStrActions" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])]))))+,(FunctionDecl (46,1) (Ident "seqStrActions" 0) [(Equation (46,1) (FunLhs (Ident "seqStrActions" 0) [(VariablePattern (Ident "a1" 2)),(VariablePattern (Ident "a2" 2))]) (SimpleRhs (47,3) (Do [(StmtBind (TuplePattern [(VariablePattern (Ident "s1" 4)),(VariablePattern (Ident "b1" 4))]) (Variable (QualIdent Nothing (Ident "a1" 2)))),(StmtBind (TuplePattern [(VariablePattern (Ident "s2" 5)),(VariablePattern (Ident "b2" 5))]) (Variable (QualIdent Nothing (Ident "a2" 2))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "s1" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "s2" 5)))),(InfixApply (Variable (QualIdent Nothing (Ident "b1" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Variable (QualIdent Nothing (Ident "b2" 5))))]))) []))])+,(TypeSig (57,1) [(Ident "checkAssertion" 0)] (ArrowType (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Assertion" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])]))))+,(FunctionDecl (59,1) (Ident "checkAssertion" 0) [(Equation (59,1) (FunLhs (Ident "checkAssertion" 0) [(VariablePattern (Ident "prot" 6)),(ParenPattern (ConstructorPattern (QualIdent (Just "Assertion") (Ident "AssertTrue" 0)) [(VariablePattern (Ident "name" 6)),(VariablePattern (Ident "cond" 6))]))]) (SimpleRhs (60,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "checkAssertTrue" 0))) (Variable (QualIdent Nothing (Ident "name" 6)))) (Variable (QualIdent Nothing (Ident "cond" 6)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 6))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": no solution or error\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "prot" 6)))) [])),(Equation (63,1) (FunLhs (Ident "checkAssertion" 0) [(VariablePattern (Ident "prot" 8)),(ParenPattern (ConstructorPattern (QualIdent (Just "Assertion") (Ident "AssertEqual" 0)) [(VariablePattern (Ident "name" 8)),(VariablePattern (Ident "call" 8)),(VariablePattern (Ident "result" 8))]))]) (SimpleRhs (64,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "checkAssertEqual" 0))) (Variable (QualIdent Nothing (Ident "name" 8)))) (Variable (QualIdent Nothing (Ident "call" 8)))) (Variable (QualIdent Nothing (Ident "result" 8)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 8))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": no solution or error\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "prot" 8)))) [])),(Equation (67,1) (FunLhs (Ident "checkAssertion" 0) [(VariablePattern (Ident "prot" 10)),(ParenPattern (ConstructorPattern (QualIdent (Just "Assertion") (Ident "AssertValues" 0)) [(VariablePattern (Ident "name" 10)),(VariablePattern (Ident "expr" 10)),(VariablePattern (Ident "results" 10))]))]) (SimpleRhs (68,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "checkAssertValues" 0))) (Variable (QualIdent Nothing (Ident "name" 10)))) (Variable (QualIdent Nothing (Ident "expr" 10)))) (Variable (QualIdent Nothing (Ident "results" 10)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 10))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": no solution or error\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "prot" 10)))) [])),(Equation (71,1) (FunLhs (Ident "checkAssertion" 0) [(VariablePattern (Ident "prot" 12)),(ParenPattern (ConstructorPattern (QualIdent (Just "Assertion") (Ident "AssertSolutions" 0)) [(VariablePattern (Ident "name" 12)),(VariablePattern (Ident "constr" 12)),(VariablePattern (Ident "results" 12))]))]) (SimpleRhs (72,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "checkAssertSolutions" 0))) (Variable (QualIdent Nothing (Ident "name" 12)))) (Variable (QualIdent Nothing (Ident "constr" 12)))) (Variable (QualIdent Nothing (Ident "results" 12)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 12))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": no solution or error\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "prot" 12)))) [])),(Equation (75,1) (FunLhs (Ident "checkAssertion" 0) [(VariablePattern (Ident "prot" 14)),(ParenPattern (ConstructorPattern (QualIdent (Just "Assertion") (Ident "AssertIO" 0)) [(VariablePattern (Ident "name" 14)),(VariablePattern (Ident "action" 14)),(VariablePattern (Ident "result" 14))]))]) (SimpleRhs (76,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "checkAssertIO" 0))) (Variable (QualIdent Nothing (Ident "name" 14)))) (Variable (QualIdent Nothing (Ident "action" 14)))) (Variable (QualIdent Nothing (Ident "result" 14)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 14))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": no solution or error\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "prot" 14)))) [])),(Equation (79,1) (FunLhs (Ident "checkAssertion" 0) [(VariablePattern (Ident "prot" 16)),(ParenPattern (ConstructorPattern (QualIdent (Just "Assertion") (Ident "AssertEqualIO" 0)) [(VariablePattern (Ident "name" 16)),(VariablePattern (Ident "action1" 16)),(VariablePattern (Ident "action2" 16))]))]) (SimpleRhs (80,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "checkAssertEqualIO" 0))) (Variable (QualIdent Nothing (Ident "name" 16)))) (Variable (QualIdent Nothing (Ident "action1" 16)))) (Variable (QualIdent Nothing (Ident "action2" 16)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 16))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": no solution or error\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "prot" 16)))) []))])+,(TypeSig (85,1) [(Ident "checkAssertTrue" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])]))))+,(FunctionDecl (86,1) (Ident "checkAssertTrue" 0) [(Equation (86,1) (FunLhs (Ident "checkAssertTrue" 0) [(VariablePattern (Ident "name" 18)),(VariablePattern (Ident "cond" 18))]) (SimpleRhs (87,3) (IfThenElse (Variable (QualIdent Nothing (Ident "cond" 18))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "OK: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 18))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))])) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 18))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": assertion not satisfied\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))]))) []))])+,(TypeSig (92,1) [(Ident "checkAssertEqual" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])])))))+,(FunctionDecl (93,1) (Ident "checkAssertEqual" 0) [(Equation (93,1) (FunLhs (Ident "checkAssertEqual" 0) [(VariablePattern (Ident "name" 20)),(VariablePattern (Ident "call" 20)),(VariablePattern (Ident "result" 20))]) (SimpleRhs (93,37) (Do [(StmtDecl [(PatternDecl (94,7) (VariablePattern (Ident "r" 22)) (SimpleRhs (94,11) (Variable (QualIdent Nothing (Ident "call" 20))) []))])] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "r" 22))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "result" 20)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "OK: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 20))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))])) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 20))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ": equality assertion not satisfied:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Computed answer: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "r" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Expected answer: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "result" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))))))))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) []))])+,(TypeSig (102,1) [(Ident "checkAssertValues" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])])))))+,(FunctionDecl (103,1) (Ident "checkAssertValues" 0) [(Equation (103,1) (FunLhs (Ident "checkAssertValues" 0) [(VariablePattern (Ident "name" 24)),(VariablePattern (Ident "call" 24)),(VariablePattern (Ident "results" 24))]) (SimpleRhs (103,39) (Do [(StmtBind (VariablePattern (Ident "st" 26)) (Apply (Variable (QualIdent (Just "Prelude") (Ident "getSearchTree" 0))) (Variable (QualIdent Nothing (Ident "call" 24))))),(StmtDecl [(PatternDecl (105,7) (VariablePattern (Ident "rs" 27)) (SimpleRhs (105,12) (Apply (Variable (QualIdent (Just "Prelude") (Ident "allValuesB" 0))) (Variable (QualIdent Nothing (Ident "st" 26)))) []))])] (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "rs" 27))) (InfixOp (QualIdent (Just "List") (Ident "\\\\" 0))) (Variable (QualIdent Nothing (Ident "results" 24)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "results" 24))) (InfixOp (QualIdent (Just "List") (Ident "\\\\" 0))) (Variable (QualIdent Nothing (Ident "rs" 27))))))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "OK: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 24))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))])) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 24))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ": values assertion not satisfied:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Computed values: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "rs" 27)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Expected values: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "results" 24)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))))))))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) []))])+,(TypeSig (113,1) [(Ident "checkAssertSolutions" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])])))))+,(FunctionDecl (114,1) (Ident "checkAssertSolutions" 0) [(Equation (114,1) (FunLhs (Ident "checkAssertSolutions" 0) [(VariablePattern (Ident "name" 29)),(VariablePattern (Ident "constr" 29)),(VariablePattern (Ident "results" 29))]) (SimpleRhs (114,44) (Do [(StmtBind (VariablePattern (Ident "st" 32)) (Apply (Variable (QualIdent (Just "Prelude") (Ident "getSearchTree" 0))) (Paren (Let [(ExtraVariables (115,28) [(Ident "x" 31)])] (Tuple [(Variable (QualIdent Nothing (Ident "x" 31))),(Apply (Variable (QualIdent Nothing (Ident "constr" 29))) (Variable (QualIdent Nothing (Ident "x" 31))))]))))),(StmtDecl [(PatternDecl (116,7) (VariablePattern (Ident "rs" 33)) (SimpleRhs (116,12) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "fst" 0)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "allValuesB" 0))) (Variable (QualIdent Nothing (Ident "st" 32)))))) []))])] (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "rs" 33))) (InfixOp (QualIdent (Just "List") (Ident "\\\\" 0))) (Variable (QualIdent Nothing (Ident "results" 29)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "results" 29))) (InfixOp (QualIdent (Just "List") (Ident "\\\\" 0))) (Variable (QualIdent Nothing (Ident "rs" 33))))))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "OK: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 29))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))])) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 29))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ": solutions assertion not satisfied:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Computed values: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "rs" 33)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Expected values: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "results" 29)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))))))))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) []))])+,(TypeSig (124,1) [(Ident "checkAssertIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])])))))+,(FunctionDecl (125,1) (Ident "checkAssertIO" 0) [(Equation (125,1) (FunLhs (Ident "checkAssertIO" 0) [(VariablePattern (Ident "name" 35)),(VariablePattern (Ident "action" 35)),(VariablePattern (Ident "result" 35))]) (SimpleRhs (125,36) (Do [(StmtBind (VariablePattern (Ident "r" 37)) (Variable (QualIdent Nothing (Ident "action" 35))))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "r" 37))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "result" 35)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "OK: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 35))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))])) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 35))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ": IO assertion not satisfied:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Computed answer: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "r" 37)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Expected answer: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "result" 35)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n\n")))))))))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) []))])+,(TypeSig (134,1) [(Ident "checkAssertEqualIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])])))))+,(FunctionDecl (135,1) (Ident "checkAssertEqualIO" 0) [(Equation (135,1) (FunLhs (Ident "checkAssertEqualIO" 0) [(VariablePattern (Ident "name" 38)),(VariablePattern (Ident "action1" 38)),(VariablePattern (Ident "action2" 38))]) (SimpleRhs (135,43) (Do [(StmtBind (VariablePattern (Ident "r1" 40)) (Variable (QualIdent Nothing (Ident "action1" 38)))),(StmtBind (VariablePattern (Ident "r2" 41)) (Variable (QualIdent Nothing (Ident "action2" 38))))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "r1" 40))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "r2" 41)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "OK: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 38))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))),(Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))])) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(InfixApply (Literal (String "FAILURE of ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "name" 38))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ": IO equality assertion not satisfied:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Computed answer 1: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "r1" 40)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "Computed answer 2: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "r2" 41)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n\n")))))))))),(Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))])))) []))])+,(TypeSig (147,1) [(Ident "writeAssertResult" 0)] (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (148,1) (Ident "writeAssertResult" 0) [(Equation (148,1) (FunLhs (Ident "writeAssertResult" 0) [(TuplePattern [(VariablePattern (Ident "result" 42)),(VariablePattern (Ident "flag" 42))])]) (SimpleRhs (149,3) (IfThenElse (Variable (QualIdent Nothing (Ident "flag" 42))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "result" 42))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "All tests successfully passed."))))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "result" 42))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "FAILURE occurred in some assertions!\n")))))) []))])+,(TypeSig (162,1) [(Ident "doSend" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (163,1) (Ident "doSend" 0) [(Equation (163,1) (FunLhs (Ident "doSend" 0) [(VariablePattern (Ident "h" 44)),(VariablePattern (Ident "x" 44))]) (SimpleRhs (163,14) (Apply (Apply (Variable (QualIdent (Just "IO") (Ident "hPutStrLn" 0))) (Variable (QualIdent Nothing (Ident "h" 44)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "x" 44)))))) []))])+,(TypeSig (167,1) [(Ident "showTestMod" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (168,1) (Ident "showTestMod" 0) [(Equation (168,1) (FunLhs (Ident "showTestMod" 0) [(VariablePattern (Ident "port" 46)),(VariablePattern (Ident "modname" 46))]) (SimpleRhs (168,28) (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "doSend" 0))) (Variable (QualIdent Nothing (Ident "port" 46)))) (Paren (Apply (Constructor (QualIdent (Just "Assertion") (Ident "TestModule" 0))) (Variable (QualIdent Nothing (Ident "modname" 46)))))) []))])+,(TypeSig (173,1) [(Ident "showTestCase" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])]))))+,(FunctionDecl (174,1) (Ident "showTestCase" 0) [(Equation (174,1) (FunLhs (Ident "showTestCase" 0) [(VariablePattern (Ident "port" 48)),(TuplePattern [(VariablePattern (Ident "s" 48)),(VariablePattern (Ident "b" 48))])]) (SimpleRhs (175,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "doSend" 0))) (Variable (QualIdent Nothing (Ident "port" 48)))) (Paren (Apply (Apply (Constructor (QualIdent (Just "Assertion") (Ident "TestCase" 0))) (Variable (QualIdent Nothing (Ident "s" 48)))) (Variable (QualIdent Nothing (Ident "b" 48)))))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "s" 48))),(Variable (QualIdent Nothing (Ident "b" 48)))]))) []))])+,(TypeSig (180,1) [(Ident "showTestEnd" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (181,1) (Ident "showTestEnd" 0) [(Equation (181,1) (FunLhs (Ident "showTestEnd" 0) [(VariablePattern (Ident "port" 50))]) (SimpleRhs (181,20) (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "doSend" 0))) (Variable (QualIdent Nothing (Ident "port" 50)))) (Constructor (QualIdent (Just "Assertion") (Ident "TestFinished" 0)))) []))])+,(TypeSig (185,1) [(Ident "showTestCompileError" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (186,1) (Ident "showTestCompileError" 0) [(Equation (186,1) (FunLhs (Ident "showTestCompileError" 0) [(VariablePattern (Ident "port" 52))]) (SimpleRhs (186,29) (Apply (Apply (Variable (QualIdent (Just "Assertion") (Ident "doSend" 0))) (Variable (QualIdent Nothing (Ident "port" 52)))) (Constructor (QualIdent (Just "Assertion") (Ident "TestCompileError" 0)))) []))])+]
+ src/lib/Curry/Module/.curry/Assertion.efc view
@@ -0,0 +1,1 @@+Prog "Assertion" ["IO","List","Prelude"] [Type ((Nothing,Nothing,"Assertion","Assertion")) Public [0] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0]))),"Assertion","AssertTrue")) 2 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertEqual")) 3 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TVar 0,TVar 0],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertValues")) 3 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertSolutions")) 3 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) []),TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertIO")) 3 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0],TVar 0],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertEqualIO")) 3 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]]],Type ((Nothing,Nothing,"Assertion","ProtocolMsg")) Public [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") [])),"Assertion","TestModule")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []))),"Assertion","TestCase")) 2 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []),"Assertion","TestFinished")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []),"Assertion","TestCompileError")) 0 Public []]] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","seqStrActions")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","seqStrActions._#lambda2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","seqStrActions._#lambda2")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","seqStrActions._#lambda2._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","seqStrActions._#lambda2._#lambda3")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5))]]])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (FuncType (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","checkAssertion")) 2 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])) (FuncType (TCons ((Nothing,Nothing,"Assertion","Assertion")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1),(Just (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0]))),"Assertion","AssertTrue")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","checkAssertTrue")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertEqual")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),(Just (TVar 0),6),(Just (TVar 0),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqual")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Var ((Just (TVar 0),6)),Var ((Just (TVar 0),7))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertValues")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),8),(Just (TVar 0),9),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),10)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertValues")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),8)),Var ((Just (TVar 0),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),10))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),8)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertSolutions")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),11),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),12),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),13)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertSolutions")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),11)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),12)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),13))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),11)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertIO")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),14),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),15),(Just (TVar 0),16)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertIO")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),14)),Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),15)),Var ((Just (TVar 0),16))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),14)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Assertion","Assertion") [TVar 0])))),"Assertion","AssertEqualIO")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),17),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),18),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),19)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqualIO")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),17)),Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),18)),Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),19))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),17)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),1))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","checkAssertTrue")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqual")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 0),2),(Just (TVar 0),3)] (Let [((Just (TVar 0),4),Var ((Just (TVar 0),2)))] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 0),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 0),3))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertValues")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])),"Prelude","getSearchTree")) [Var ((Just (TVar 0),2))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertValues._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertValues._#lambda4")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 42]) (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 42]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),2),(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 42]),3)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 53]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53])),"Prelude","allValuesB")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 42]),3))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]))),"List","\\\\")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),2))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]))),"List","\\\\")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),4))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]),2))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertSolutions")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Success") []]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Success") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Success") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Success") []]]])),"Prelude","getSearchTree")) [Free [(Just (TVar 0),4)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Success") []]))),"Prelude","(,)")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),2)),Var ((Just (TVar 0),4))]])],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Success") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertSolutions._#lambda5")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","Success") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertSolutions._#lambda5")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 73]) (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 73,TCons ((Nothing,Nothing,"Prelude","Success")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),2),(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","Success") []]]),3)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),4),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 87) (TVar 88)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 87]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 88]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 84,TVar 85]) (TVar 84)),"Prelude","fst")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 86]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 86])),"Prelude","allValuesB")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","Success") []]]),3))]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]))),"List","\\\\")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),2))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]))),"List","\\\\")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),4))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]),2))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertIO")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertIO._#lambda6")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TVar 0),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 104) (FuncType (TVar 104) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertIO._#lambda6")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 104) (FuncType (TVar 104) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 104),2),(Just (TVar 104),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 104) (FuncType (TVar 104) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 104),3)),Var ((Just (TVar 104),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 104) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 104),3))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 104) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 104),2))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqualIO")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqualIO._#lambda7")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 127]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqualIO._#lambda7")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 127]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 127) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 127]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 127),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 127]) (FuncType (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 127]),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 127) (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqualIO._#lambda7._#lambda8")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TVar 127),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 127) (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])))),"Assertion","checkAssertEqualIO._#lambda7._#lambda8")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 127) (FuncType (TVar 127) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 127),2),(Just (TVar 127),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 127) (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 127),2)),Var ((Just (TVar 127),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '1'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 127),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '2'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 127) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 127),3))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Assertion","writeAssertResult")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'L'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '!'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Assertion","doSend")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutStrLn")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 0),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Assertion","showTestMod")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Assertion","doSend")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") [])),"Assertion","TestModule")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","showTestCase")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","Bool")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Assertion","doSend")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []))),"Assertion","TestCase")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Assertion","showTestEnd")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Assertion","doSend")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []),"Assertion","TestFinished")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Assertion","showTestCompileError")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Assertion","doSend")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Assertion","ProtocolMsg") []),"Assertion","TestCompileError")) []]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","Bool") []]]))),"Assertion","seqStrActions")) InfixlOp 1]
+ src/lib/Curry/Module/.curry/Assertion.fcy view
@@ -0,0 +1,1 @@+Prog "Assertion" ["IO","List","Prelude"] [Type ("Assertion","Assertion") Public [0] [Cons ("Assertion","AssertTrue") 2 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []],Cons ("Assertion","AssertEqual") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TVar 0,TVar 0],Cons ("Assertion","AssertValues") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TVar 0,TCons ("Prelude","[]") [TVar 0]],Cons ("Assertion","AssertSolutions") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],FuncType (TVar 0) (TCons ("Prelude","Success") []),TCons ("Prelude","[]") [TVar 0]],Cons ("Assertion","AssertIO") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","IO") [TVar 0],TVar 0],Cons ("Assertion","AssertEqualIO") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","IO") [TVar 0],TCons ("Prelude","IO") [TVar 0]]],Type ("Assertion","ProtocolMsg") Public [] [Cons ("Assertion","TestModule") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Assertion","TestCase") 2 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []],Cons ("Assertion","TestFinished") 0 Public [],Cons ("Assertion","TestCompileError") 0 Public []]] [Func ("Assertion","seqStrActions") 2 Public (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]) (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Var 1,Comb (FuncPartCall 1) ("Assertion","seqStrActions._#lambda2") [Var 2]])),Func ("Assertion","seqStrActions._#lambda2") 2 Private (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb FuncCall ("Prelude",">>=") [Var 1,Comb (FuncPartCall 1) ("Assertion","seqStrActions._#lambda2._#lambda3") [Var 4,Var 3]])])),Func ("Assertion","seqStrActions._#lambda2._#lambda3") 3 Private (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,)") [4,5]) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Var 2,Var 4],Comb FuncCall ("Prelude","&&") [Var 1,Var 5]]])])),Func ("Assertion","checkAssertion") 2 Public (FuncType (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])) (FuncType (TCons ("Assertion","Assertion") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Assertion","AssertTrue") [3,4]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Assertion","checkAssertTrue") [Var 3,Var 4],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 3,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]]],Var 1]),Branch (Pattern ("Assertion","AssertEqual") [5,6,7]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Assertion","checkAssertEqual") [Var 5,Var 6,Var 7],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 5,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]]],Var 1]),Branch (Pattern ("Assertion","AssertValues") [8,9,10]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Assertion","checkAssertValues") [Var 8,Var 9,Var 10],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 8,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]]],Var 1]),Branch (Pattern ("Assertion","AssertSolutions") [11,12,13]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Assertion","checkAssertSolutions") [Var 11,Var 12,Var 13],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 11,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]]],Var 1]),Branch (Pattern ("Assertion","AssertIO") [14,15,16]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Assertion","checkAssertIO") [Var 14,Var 15,Var 16],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 14,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]]],Var 1]),Branch (Pattern ("Assertion","AssertEqualIO") [17,18,19]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Assertion","checkAssertEqualIO") [Var 17,Var 18,Var 19],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 17,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]]],Var 1])])),Func ("Assertion","checkAssertTrue") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [1,2] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","True") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","False") []]])])),Func ("Assertion","checkAssertEqual") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Let [(4,Var 2)] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 4,Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","True") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 3],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb ConsCall ("Prelude","False") []]])]))),Func ("Assertion","checkAssertValues") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","getSearchTree") [Var 2],Comb (FuncPartCall 1) ("Assertion","checkAssertValues._#lambda4") [Var 1,Var 3]])),Func ("Assertion","checkAssertValues._#lambda4") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TVar 42]) (FuncType (TCons ("Prelude","SearchTree") [TVar 42]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("Prelude","allValuesB") [Var 3])] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","null") [Comb FuncCall ("List","\\\\") [Var 4,Var 2]],Comb FuncCall ("Prelude","null") [Comb FuncCall ("List","\\\\") [Var 2,Var 4]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","True") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb ConsCall ("Prelude","False") []]])]))),Func ("Assertion","checkAssertSolutions") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Success") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","getSearchTree") [Free [4] (Comb ConsCall ("Prelude","(,)") [Var 4,Comb FuncCall ("Prelude","apply") [Var 2,Var 4]])],Comb (FuncPartCall 1) ("Assertion","checkAssertSolutions._#lambda5") [Var 1,Var 3]])),Func ("Assertion","checkAssertSolutions._#lambda5") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TVar 73]) (FuncType (TCons ("Prelude","SearchTree") [TCons ("Prelude","(,)") [TVar 73,TCons ("Prelude","Success") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","fst") [],Comb FuncCall ("Prelude","allValuesB") [Var 3]])] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","null") [Comb FuncCall ("List","\\\\") [Var 4,Var 2]],Comb FuncCall ("Prelude","null") [Comb FuncCall ("List","\\\\") [Var 2,Var 4]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","True") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb ConsCall ("Prelude","False") []]])]))),Func ("Assertion","checkAssertIO") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Var 2,Comb (FuncPartCall 1) ("Assertion","checkAssertIO._#lambda6") [Var 1,Var 3]])),Func ("Assertion","checkAssertIO._#lambda6") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 104) (FuncType (TVar 104) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","True") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 3],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]],Comb ConsCall ("Prelude","False") []]])])),Func ("Assertion","checkAssertEqualIO") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Var 2,Comb (FuncPartCall 1) ("Assertion","checkAssertEqualIO._#lambda7") [Var 3,Var 1]])),Func ("Assertion","checkAssertEqualIO._#lambda7") 3 Private (FuncType (TCons ("Prelude","IO") [TVar 127]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 127) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Var 1,Comb (FuncPartCall 1) ("Assertion","checkAssertEqualIO._#lambda7._#lambda8") [Var 2,Var 3]])),Func ("Assertion","checkAssertEqualIO._#lambda7._#lambda8") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 127) (FuncType (TVar 127) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","True") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '1'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '2'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 3],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]],Comb ConsCall ("Prelude","False") []]])])),Func ("Assertion","writeAssertResult") 1 Public (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","putStrLn") [Comb FuncCall ("Prelude","++") [Var 2,Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","putStrLn") [Comb FuncCall ("Prelude","++") [Var 2,Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'L'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  '!'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])])),Func ("Assertion","doSend") 2 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("IO","hPutStrLn") [Var 1,Comb FuncCall ("Prelude","show") [Var 2]])),Func ("Assertion","showTestMod") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Assertion","doSend") [Var 1,Comb ConsCall ("Assertion","TestModule") [Var 2]])),Func ("Assertion","showTestCase") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Assertion","doSend") [Var 1,Comb ConsCall ("Assertion","TestCase") [Var 3,Var 4]],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","(,)") [Var 3,Var 4]]])])),Func ("Assertion","showTestEnd") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Assertion","doSend") [Var 1,Comb ConsCall ("Assertion","TestFinished") []])),Func ("Assertion","showTestCompileError") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Assertion","doSend") [Var 1,Comb ConsCall ("Assertion","TestCompileError") []]))] [Op ("Assertion","seqStrActions") InfixlOp 1]
+ src/lib/Curry/Module/.curry/Assertion.fint view
@@ -0,0 +1,1 @@+Prog "Assertion" ["IO","List","Prelude"] [Type ("Assertion","Assertion") Public [0] [Cons ("Assertion","AssertTrue") 2 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []],Cons ("Assertion","AssertEqual") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TVar 0,TVar 0],Cons ("Assertion","AssertValues") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TVar 0,TCons ("Prelude","[]") [TVar 0]],Cons ("Assertion","AssertSolutions") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],FuncType (TVar 0) (TCons ("Prelude","Success") []),TCons ("Prelude","[]") [TVar 0]],Cons ("Assertion","AssertIO") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","IO") [TVar 0],TVar 0],Cons ("Assertion","AssertEqualIO") 3 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","IO") [TVar 0],TCons ("Prelude","IO") [TVar 0]]],Type ("Assertion","ProtocolMsg") Public [] [Cons ("Assertion","TestModule") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Assertion","TestCase") 2 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []],Cons ("Assertion","TestFinished") 0 Public [],Cons ("Assertion","TestCompileError") 0 Public []]] [Func ("Assertion","seqStrActions") 2 Public (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]) (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [] (Var 0)),Func ("Assertion","checkAssertion") 2 Public (FuncType (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]])) (FuncType (TCons ("Assertion","Assertion") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [] (Var 0)),Func ("Assertion","writeAssertResult") 1 Public (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Assertion","showTestMod") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("Assertion","showTestCase") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","Bool") []]]))) (Rule [] (Var 0)),Func ("Assertion","showTestEnd") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Assertion","showTestCompileError") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0))] [Op ("Assertion","seqStrActions") InfixlOp 1]
+ src/lib/Curry/Module/.curry/Assertion.uacy view
@@ -0,0 +1,19 @@+CurryProg "Assertion"+ ["Prelude","List","IO"]+ [CType ("Assertion","Assertion") Public [(0,"a")] [CCons ("Assertion","AssertTrue") 2 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []],CCons ("Assertion","AssertEqual") 3 Public [CTCons ("Prelude","String") [],CTVar (0,"a"),CTVar (0,"a")],CCons ("Assertion","AssertValues") 3 Public [CTCons ("Prelude","String") [],CTVar (0,"a"),CTCons ("Prelude","[]") [CTVar (0,"a")]],CCons ("Assertion","AssertSolutions") 3 Public [CTCons ("Prelude","String") [],CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") []),CTCons ("Prelude","[]") [CTVar (0,"a")]],CCons ("Assertion","AssertIO") 3 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","IO") [CTVar (0,"a")],CTVar (0,"a")],CCons ("Assertion","AssertEqualIO") 3 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","IO") [CTVar (0,"a")],CTCons ("Prelude","IO") [CTVar (0,"a")]]],+  CType ("Assertion","ProtocolMsg") Public [] [CCons ("Assertion","TestModule") 1 Public [CTCons ("Prelude","String") []],CCons ("Assertion","TestCase") 2 Public [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []],CCons ("Assertion","TestFinished") 0 Public [],CCons ("Assertion","TestCompileError") 0 Public []]]+ [CFunc ("Assertion","checkAssertEqual") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"call"),CPVar (2,"result")] [(CSymbol ("Prelude","success"),CDoExpr [CSLet [CLocalPat (CPVar (3,"r")) (CVar (1,"call")) []],CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"r"))) (CVar (2,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"r")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"result")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertEqualIO") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"action1"),CPVar (2,"action2")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"r1")) (CVar (1,"action1")),CSPat (CPVar (4,"r2")) (CVar (2,"action2")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"r1"))) (CVar (4,"r2")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '1'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"r1")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '2'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (4,"r2")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertIO") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"action"),CPVar (2,"result")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"r")) (CVar (1,"action")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"r"))) (CVar (2,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"r")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"result")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertSolutions") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"constr"),CPVar (2,"results")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (4,"st")) (CApply (CSymbol ("Prelude","getSearchTree")) (CLetDecl [CLocalVar (3,"x")] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"x"))) (CApply (CVar (1,"constr")) (CVar (3,"x")))))),CSLet [CLocalPat (CPVar (5,"rs")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","fst"))) (CApply (CSymbol ("Prelude","allValuesB")) (CVar (4,"st")))) []],CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (5,"rs"))) (CVar (2,"results"))))) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (2,"results"))) (CVar (5,"rs")))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (5,"rs")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertTrue") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"cond")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"cond"))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))] []]),+  CFunc ("Assertion","checkAssertValues") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]])))) (CRules CFlex [CRule [CPVar (0,"name"),CPVar (1,"call"),CPVar (2,"results")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"st")) (CApply (CSymbol ("Prelude","getSearchTree")) (CVar (1,"call"))),CSLet [CLocalPat (CPVar (4,"rs")) (CApply (CSymbol ("Prelude","allValuesB")) (CVar (3,"st"))) []],CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (4,"rs"))) (CVar (2,"results"))))) (CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (2,"results"))) (CVar (4,"rs")))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","True"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (4,"rs")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CSymbol ("Prelude","False")))))])] []]),+  CFunc ("Assertion","checkAssertion") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]])) (CFuncType (CTCons ("Assertion","Assertion") [CTVar (0,"_")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"prot"),CPComb ("Assertion","AssertTrue") [CPVar (1,"name"),CPVar (2,"cond")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CSymbol ("Assertion","checkAssertTrue")) (CVar (1,"name"))) (CVar (2,"cond")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (0,"prot")))] [],CRule [CPVar (3,"prot"),CPComb ("Assertion","AssertEqual") [CPVar (4,"name"),CPVar (5,"call"),CPVar (6,"result")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertEqual")) (CVar (4,"name"))) (CVar (5,"call"))) (CVar (6,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (3,"prot")))] [],CRule [CPVar (7,"prot"),CPComb ("Assertion","AssertValues") [CPVar (8,"name"),CPVar (9,"expr"),CPVar (10,"results")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertValues")) (CVar (8,"name"))) (CVar (9,"expr"))) (CVar (10,"results")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (8,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (7,"prot")))] [],CRule [CPVar (11,"prot"),CPComb ("Assertion","AssertSolutions") [CPVar (12,"name"),CPVar (13,"constr"),CPVar (14,"results")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertSolutions")) (CVar (12,"name"))) (CVar (13,"constr"))) (CVar (14,"results")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (12,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (11,"prot")))] [],CRule [CPVar (15,"prot"),CPComb ("Assertion","AssertIO") [CPVar (16,"name"),CPVar (17,"action"),CPVar (18,"result")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertIO")) (CVar (16,"name"))) (CVar (17,"action"))) (CVar (18,"result")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (16,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (15,"prot")))] [],CRule [CPVar (19,"prot"),CPComb ("Assertion","AssertEqualIO") [CPVar (20,"name"),CPVar (21,"action1"),CPVar (22,"action2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CSymbol ("Prelude","catchFail")) (CApply (CApply (CApply (CSymbol ("Assertion","checkAssertEqualIO")) (CVar (20,"name"))) (CVar (21,"action1"))) (CVar (22,"action2")))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (20,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CSymbol ("Prelude","False")))))) (CVar (19,"prot")))] []]),+  CFunc ("Assertion","doSend") 2 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("IO","hPutStrLn")) (CVar (0,"h"))) (CApply (CSymbol ("Prelude","show")) (CVar (1,"x"))))] []]),+  CFunc ("Assertion","seqStrActions") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]]) (CFuncType (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"a1"),CPVar (1,"a2")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPComb ("Prelude","(,)") [CPVar (2,"s1"),CPVar (3,"b1")]) (CVar (0,"a1")),CSPat (CPComb ("Prelude","(,)") [CPVar (4,"s2"),CPVar (5,"b2")]) (CVar (1,"a2")),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"s1"))) (CVar (4,"s2")))) (CApply (CApply (CSymbol ("Prelude","&&")) (CVar (3,"b1"))) (CVar (5,"b2")))))])] []]),+  CFunc ("Assertion","showTestCase") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]]))) (CRules CFlex [CRule [CPVar (0,"port"),CPComb ("Prelude","(,)") [CPVar (1,"s"),CPVar (2,"b")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CApply (CApply (CSymbol ("Assertion","TestCase")) (CVar (1,"s"))) (CVar (2,"b"))))) (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"s"))) (CVar (2,"b")))))] []]),+  CFunc ("Assertion","showTestCompileError") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CSymbol ("Assertion","TestCompileError")))] []]),+  CFunc ("Assertion","showTestEnd") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CSymbol ("Assertion","TestFinished")))] []]),+  CFunc ("Assertion","showTestMod") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"port"),CPVar (1,"modname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Assertion","doSend")) (CVar (0,"port"))) (CApply (CSymbol ("Assertion","TestModule")) (CVar (1,"modname"))))] []]),+  CFunc ("Assertion","writeAssertResult") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"result"),CPVar (1,"flag")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"flag"))) (CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"result"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))) (CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"result"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'L'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '!'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))] []])]+ [COp ("Assertion","seqStrActions") CInfixlOp 1]
+ src/lib/Curry/Module/.curry/CSV.acy view
@@ -0,0 +1,12 @@+CurryProg "CSV"+ ["Prelude","List"]+ []+ [CFunc ("CSV","components") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (1,"delims"),CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CLit (CCharc '"')))) (CApply (CSymbol ("CSV","breakString")) (CVar (3,"cs")))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (5,"e"),CPVar (6,"s")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (7,"x0")] (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (7,"x0"))) (CVar (1,"delims"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"c"))) (CVar (3,"cs")))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"e"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (6,"s")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("CSV","components")) (CVar (1,"delims"))) (CApply (CSymbol ("Prelude","tail")) (CVar (6,"s"))))))))] [CLocalFunc (CFunc ("CSV","breakString") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CVar (4,"delimError"))] [],CRule [CPComb ("Prelude",":") [CPVar (5,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (5,"x"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))) (CVar (4,"delimError")))] [],CRule [CPComb ("Prelude",":") [CPVar (6,"x"),CPComb ("Prelude",":") [CPVar (7,"y"),CPVar (8,"zs")]]] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"y"))) (CLit (CCharc '"'))),CLetDecl [CLocalPat (CPComb ("Prelude",":") [CPVar (9,"b"),CPVar (10,"bs")]) (CApply (CSymbol ("CSV","breakString")) (CVar (8,"zs"))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CVar (9,"b")))) (CVar (10,"bs")))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (7,"y"))) (CVar (1,"delims"))),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("CSV","components")) (CVar (1,"delims"))) (CVar (8,"zs")))),(CSymbol ("Prelude","otherwise"),CLetDecl [CLocalPat (CPComb ("Prelude",":") [CPVar (11,"b"),CPVar (12,"bs")]) (CApply (CSymbol ("CSV","breakString")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (7,"y"))) (CVar (8,"zs")))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CVar (11,"b")))) (CVar (12,"bs"))))] []])),CLocalPat (CPVar (4,"delimError")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'V'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '!'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))) []]]),+  CFunc ("CSV","readCSV") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("CSV","readCSVWithDelims")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("CSV","readCSVFile") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("CSV","readCSVFileWithDelims")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("CSV","readCSVFileWithDelims") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]]))) (CRules CFlex [CRule [CPVar (0,"delims"),CPVar (1,"fname")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"contents")) (CApply (CSymbol ("Prelude","readFile")) (CVar (1,"fname"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("CSV","readCSVWithDelims")) (CVar (0,"delims"))) (CVar (2,"contents"))))])] []]),+  CFunc ("CSV","readCSVWithDelims") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CRules CFlex [CRule [CPVar (0,"delims"),CPVar (1,"str")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CApply (CSymbol ("CSV","components")) (CVar (0,"delims")))) (CApply (CSymbol ("Prelude","lines")) (CVar (1,"str"))))] []]),+  CFunc ("CSV","showCSV") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"rows")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("CSV","showCSVLine"))) (CVar (0,"rows")))] []]),+  CFunc ("CSV","showCSVLine") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"row")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CSymbol ("List","intersperse")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("CSV","convert"))) (CVar (0,"row")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))] [CLocalFunc (CFunc ("CSV","convert") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","any")) (CLambda [CPVar (2,"c")] (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (2,"c"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '"'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]"))))))))) (CVar (1,"s")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '"'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CLambda [CPVar (3,"c")] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"c"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"c"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"c"))) (CSymbol ("Prelude","[]"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"c"))) (CSymbol ("Prelude","[]")))))) (CVar (1,"s")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '"'))) (CSymbol ("Prelude","[]")))))) (CVar (1,"s")))] []]))]]),+  CFunc ("CSV","writeCSVFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"fname"),CPVar (1,"rows")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (0,"fname"))) (CApply (CSymbol ("CSV","showCSV")) (CVar (1,"rows"))))] []])]+ []
+ src/lib/Curry/Module/.curry/CSV.cy view
@@ -0,0 +1,21 @@+Module "CSV"+(Just (Exporting (10,11) [(Export (QualIdent Nothing (Ident "showCSV" 0))),(Export (QualIdent Nothing (Ident "readCSV" 0))),(Export (QualIdent Nothing (Ident "readCSVWithDelims" 0))),(Export (QualIdent Nothing (Ident "writeCSVFile" 0))),(Export (QualIdent Nothing (Ident "readCSVFile" 0))),(Export (QualIdent Nothing (Ident "readCSVFileWithDelims" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "List" False Nothing (Just (Importing (13,12) [(Import (Ident "intersperse" 0))])))+,(TypeSig (19,1) [(Ident "writeCSVFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (20,1) (Ident "writeCSVFile" 0) [(Equation (20,1) (FunLhs (Ident "writeCSVFile" 0) [(VariablePattern (Ident "fname" 2)),(VariablePattern (Ident "rows" 2))]) (SimpleRhs (20,27) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "writeFile" 0))) (Variable (QualIdent Nothing (Ident "fname" 2)))) (Paren (Apply (Variable (QualIdent (Just "CSV") (Ident "showCSV" 0))) (Variable (QualIdent Nothing (Ident "rows" 2)))))) []))])+,(TypeSig (24,1) [(Ident "showCSV" 0)] (ArrowType (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (25,1) (Ident "showCSV" 0) [(Equation (25,1) (FunLhs (Ident "showCSV" 0) [(VariablePattern (Ident "rows" 4))]) (SimpleRhs (25,16) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Variable (QualIdent (Just "CSV") (Ident "showCSVLine" 0)))) (Variable (QualIdent Nothing (Ident "rows" 4)))) []))])+,(TypeSig (28,1) [(Ident "showCSVLine" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (29,1) (Ident "showCSVLine" 0) [(Equation (29,1) (FunLhs (Ident "showCSVLine" 0) [(VariablePattern (Ident "row" 6))]) (SimpleRhs (29,19) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ","))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "convert" 7)))) (Variable (QualIdent Nothing (Ident "row" 6)))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n"))) [(FunctionDecl (32,4) (Ident "convert" 7) [(Equation (32,4) (FunLhs (Ident "convert" 7) [(VariablePattern (Ident "s" 8))]) (SimpleRhs (33,7) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "any" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 10))] (InfixApply (Variable (QualIdent Nothing (Ident "c" 10))) (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (List [(Literal (Char '"')),(Literal (Char ',')),(Literal (Char ';')),(Literal (Char ':'))]))))) (Variable (QualIdent Nothing (Ident "s" 8)))) (InfixApply (Literal (Char '"')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 11))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 11))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"'))) (List [(Variable (QualIdent Nothing (Ident "c" 11))),(Variable (QualIdent Nothing (Ident "c" 11)))]) (List [(Variable (QualIdent Nothing (Ident "c" 11)))]))))) (Variable (QualIdent Nothing (Ident "s" 8)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\"")))) (Variable (QualIdent Nothing (Ident "s" 8)))) []))])]))])+,(TypeSig (41,1) [(Ident "readCSVFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))])))+,(FunctionDecl (42,1) (Ident "readCSVFile" 0) [(Equation (42,1) (FunLhs (Ident "readCSVFile" 0) []) (SimpleRhs (42,15) (Apply (Variable (QualIdent (Just "CSV") (Ident "readCSVFileWithDelims" 0))) (List [(Literal (Char ','))])) []))])+,(TypeSig (48,1) [(Ident "readCSVFileWithDelims" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))]))))+,(FunctionDecl (49,1) (Ident "readCSVFileWithDelims" 0) [(Equation (49,1) (FunLhs (Ident "readCSVFileWithDelims" 0) [(VariablePattern (Ident "delims" 14)),(VariablePattern (Ident "fname" 14))]) (SimpleRhs (49,38) (Do [(StmtBind (VariablePattern (Ident "contents" 16)) (Apply (Variable (QualIdent (Just "Prelude") (Ident "readFile" 0))) (Variable (QualIdent Nothing (Ident "fname" 14)))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "CSV") (Ident "readCSVWithDelims" 0))) (Variable (QualIdent Nothing (Ident "delims" 14)))) (Variable (QualIdent Nothing (Ident "contents" 16))))))) []))])+,(TypeSig (56,1) [(Ident "readCSV" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))))+,(FunctionDecl (57,1) (Ident "readCSV" 0) [(Equation (57,1) (FunLhs (Ident "readCSV" 0) []) (SimpleRhs (57,11) (Apply (Variable (QualIdent (Just "CSV") (Ident "readCSVWithDelims" 0))) (List [(Literal (Char ','))])) []))])+,(TypeSig (63,1) [(Ident "readCSVWithDelims" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))))+,(FunctionDecl (64,1) (Ident "readCSVWithDelims" 0) [(Equation (64,1) (FunLhs (Ident "readCSVWithDelims" 0) [(VariablePattern (Ident "delims" 19)),(VariablePattern (Ident "str" 19))]) (SimpleRhs (64,32) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Variable (QualIdent (Just "CSV") (Ident "components" 0))) (Variable (QualIdent Nothing (Ident "delims" 19)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "lines" 0))) (Variable (QualIdent Nothing (Ident "str" 19)))))) []))])+,(TypeSig (67,1) [(Ident "components" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))))+,(FunctionDecl (68,1) (Ident "components" 0) [(Equation (68,1) (FunLhs (Ident "components" 0) [(VariablePattern (Ident "_" 22)),(ListPattern [])]) (SimpleRhs (68,19) (List [(List [])]) [])),(Equation (69,1) (FunLhs (Ident "components" 0) [(VariablePattern (Ident "delims" 24)),(ParenPattern (InfixPattern (VariablePattern (Ident "c" 24)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 24))))]) (SimpleRhs (70,3) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 24))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"'))) (Apply (Variable (QualIdent Nothing (Ident "breakString" 25))) (Variable (QualIdent Nothing (Ident "cs" 24)))) (Let [(PatternDecl (71,22) (TuplePattern [(VariablePattern (Ident "e" 37)),(VariablePattern (Ident "s" 37))]) (SimpleRhs (71,30) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent Nothing (Ident "delims" 24))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "c" 24))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "cs" 24)))))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "e" 37))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Paren (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "s" 37)))) (List []) (Apply (Apply (Variable (QualIdent (Just "CSV") (Ident "components" 0))) (Variable (QualIdent Nothing (Ident "delims" 24)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "s" 37))))))))))) [(FunctionDecl (74,4) (Ident "breakString" 25) [(Equation (74,4) (FunLhs (Ident "breakString" 25) [(ListPattern [])]) (SimpleRhs (74,21) (Variable (QualIdent Nothing (Ident "delimError" 25))) [])),(Equation (75,4) (FunLhs (Ident "breakString" 25) [(ListPattern [(VariablePattern (Ident "x" 28))])]) (SimpleRhs (75,22) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "x" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"'))) (List [(List [])]) (Variable (QualIdent Nothing (Ident "delimError" 25)))) [])),(Equation (77,4) (FunLhs (Ident "breakString" 25) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 30)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "y" 30)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "zs" 30)))))]) (GuardedRhs [(CondExpr (77,25) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "x" 30))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"'))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 30))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"')))) (Let [(PatternDecl (77,50) (ParenPattern (InfixPattern (VariablePattern (Ident "b" 32)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "bs" 32)))) (SimpleRhs (77,59) (Apply (Variable (QualIdent Nothing (Ident "breakString" 25))) (Variable (QualIdent Nothing (Ident "zs" 30)))) []))] (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 30))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "b" 32))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "bs" 32)))))),(CondExpr (79,25) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "x" 30))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '"'))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 30))) (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent Nothing (Ident "delims" 24))))) (InfixApply (List []) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "CSV") (Ident "components" 0))) (Variable (QualIdent Nothing (Ident "delims" 24)))) (Variable (QualIdent Nothing (Ident "zs" 30)))))),(CondExpr (80,25) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Let [(PatternDecl (80,43) (ParenPattern (InfixPattern (VariablePattern (Ident "b" 34)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "bs" 34)))) (SimpleRhs (80,52) (Apply (Variable (QualIdent Nothing (Ident "breakString" 25))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 30))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "zs" 30)))))) []))] (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 30))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "b" 34))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "bs" 34))))))] []))]),(PatternDecl (83,4) (VariablePattern (Ident "delimError" 25)) (SimpleRhs (83,18) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Missing closing delimiter in CSV record!"))) []))]))])+]
+ src/lib/Curry/Module/.curry/CSV.efc view
@@ -0,0 +1,1 @@+Prog "CSV" ["List","Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"CSV","writeCSVFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","writeFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSV")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSV")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSVLine")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSVLine")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","concat")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"List","intersperse")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSVLine.convert.7")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))]]],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSVLine.convert.7")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","any")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"CSV","showCSVLine.convert.7._#lambda2")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '"'),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSVLine.convert.7._#lambda3")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '"'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"CSV","showCSVLine.convert.7._#lambda2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '"'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ';'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","showCSVLine.convert.7._#lambda3")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '"')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"CSV","readCSVFile")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"CSV","readCSVFileWithDelims")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"CSV","readCSVFileWithDelims")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","readFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"CSV","readCSVFileWithDelims._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"CSV","readCSVFileWithDelims._#lambda4")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Prelude","return")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"CSV","readCSVWithDelims")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"CSV","readCSV")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"CSV","readCSVWithDelims")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"CSV","readCSVWithDelims")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"CSV","components")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"CSV","components")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 55)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 54) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 54]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 54]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TVar 53) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 52) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 52]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 52]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TVar 51) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 51]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 51]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TVar 50) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 49) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TVar 48) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 48]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 48]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TVar 47) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TVar 46) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 46]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 46]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TVar 45) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TVar 44) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 44]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 44]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TVar 43) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TVar 42) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 41) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 41]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 41]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TVar 40) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 40]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 40]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TVar 39) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TVar 38) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 38]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 38]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TVar 37) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 36) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 36]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 36]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TVar 35) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 35]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 35]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 34) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 34]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 34]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TVar 33) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 33]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 33]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 32) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 32]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 32]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TVar 31) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 31]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 31]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 30) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 30]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 30]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 29) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 29]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 29]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TVar 28) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 28]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 28]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 27) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TVar 26) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 26]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 26]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TVar 25) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 25]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 25]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TVar 24) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 24]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 24]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TVar 23) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]))),"Prelude",":")) [Lit (Charc  'V'),Comb ConsCall ((Nothing,Just (FuncType (TVar 22) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 22]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 22]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TVar 21) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 21]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 21]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 20) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 20]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 20]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 19) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 19]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 19]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TVar 18) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 17]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 17]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 16) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 16]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 16]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TVar 15) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]))),"Prelude",":")) [Lit (Charc  '!'),Comb ConsCall ((Nothing,Just (TVar 14),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3)),Lit (Charc  '"')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"CSV","components.breakString.25")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 9),6),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 63) (TVar 64)) (FuncType (TVar 63) (TVar 64))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 61) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 61]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 61],TCons (Nothing,Nothing,"Prelude","[]") [TVar 61]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 58) (FuncType (TVar 59) (TVar 60))) (FuncType (TVar 59) (FuncType (TVar 58) (TVar 60)))),"Prelude","flip")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 57) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 57]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Comb ConsCall ((Nothing,Just (FuncType (TVar 62) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 62]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 62]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components._#selFP9#e")) [Var ((Just (TVar 9),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components._#selFP10#s")) [Var ((Just (TVar 9),6))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7)),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),8))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"CSV","components")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),8))]])]]))))]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"CSV","components.breakString.25")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),4)),Lit (Charc  '"')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),4)),Lit (Charc  '"')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),6)),Lit (Charc  '"')]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 10),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"CSV","components.breakString.25")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components.breakString.25._#selFP3#b")) [Var ((Just (TVar 10),8))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"CSV","components.breakString.25._#selFP4#bs")) [Var ((Just (TVar 10),8))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),10))])))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),4)),Lit (Charc  '"')],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"CSV","components")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 12),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"CSV","components.breakString.25")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb ConsCall ((Nothing,Just (FuncType (TVar 27) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components.breakString.25._#selFP6#b")) [Var ((Just (TVar 12),11))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),13),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"CSV","components.breakString.25._#selFP7#bs")) [Var ((Just (TVar 12),11))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),12))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),13))])))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","failed")) [])])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components.breakString.25._#selFP3#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"CSV","components.breakString.25._#selFP4#bs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components.breakString.25._#selFP6#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"CSV","components.breakString.25._#selFP7#bs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components._#selFP9#e")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"CSV","components._#selFP10#s")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))]))] []
+ src/lib/Curry/Module/.curry/CSV.fcy view
@@ -0,0 +1,1 @@+Prog "CSV" ["List","Prelude"] [] [Func ("CSV","writeCSVFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","writeFile") [Var 1,Comb FuncCall ("CSV","showCSV") [Var 2]])),Func ("CSV","showCSV") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("CSV","showCSVLine") []],Var 1])),Func ("CSV","showCSVLine") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","concat") [Comb FuncCall ("List","intersperse") [Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("CSV","showCSVLine.convert.7") [],Var 1]]],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]])),Func ("CSV","showCSVLine.convert.7") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","any") [Comb (FuncPartCall 1) ("CSV","showCSVLine.convert.7._#lambda2") []],Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '"'),Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("CSV","showCSVLine.convert.7._#lambda3") []],Var 1],Comb ConsCall ("Prelude",":") [Lit (Charc  '"'),Comb ConsCall ("Prelude","[]") []]]]),Branch (Pattern ("Prelude","False") []) (Var 1)])),Func ("CSV","showCSVLine.convert.7._#lambda2") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Var 1],Comb ConsCall ("Prelude",":") [Lit (Charc  '"'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ';'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude","[]") []]]]]])),Func ("CSV","showCSVLine.convert.7._#lambda3") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '"')]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude","[]") []])])),Func ("CSV","readCSVFile") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]])) (Rule [] (Comb (FuncPartCall 1) ("CSV","readCSVFileWithDelims") [Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude","[]") []]])),Func ("CSV","readCSVFileWithDelims") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","readFile") [Var 2],Comb (FuncPartCall 1) ("CSV","readCSVFileWithDelims._#lambda4") [Var 1]])),Func ("CSV","readCSVFileWithDelims._#lambda4") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]]))) (Rule [1,2] (Comb FuncCall ("Prelude","return") [Comb FuncCall ("CSV","readCSVWithDelims") [Var 1,Var 2]])),Func ("CSV","readCSV") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Comb (FuncPartCall 1) ("CSV","readCSVWithDelims") [Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude","[]") []]])),Func ("CSV","readCSVWithDelims") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [1,2] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("CSV","components") [Var 1],Comb FuncCall ("Prelude","lines") [Var 2]])),Func ("CSV","components") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'V'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  '!'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Charc  '"')]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("CSV","components.breakString.25") [Var 5,Var 1,Var 4]),Branch (Pattern ("Prelude","False") []) (Let [(6,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 1) ("Prelude","elem") [],Var 1]],Comb ConsCall ("Prelude",":") [Var 3,Var 4]])] (Let [(7,Comb FuncCall ("CSV","components._#selFP9#e") [Var 6])] (Let [(8,Comb FuncCall ("CSV","components._#selFP10#s") [Var 6])] (Comb ConsCall ("Prelude",":") [Var 7,Case  Rigid (Comb FuncCall ("Prelude","null") [Var 8]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("CSV","components") [Var 1,Comb FuncCall ("Prelude","tail") [Var 8]])]]))))]))])),Func ("CSV","components.breakString.25") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Var 1),Branch (Pattern ("Prelude",":") [4,5]) (Case  Flex (Var 5) [Branch (Pattern ("Prelude","[]") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 4,Lit (Charc  '"')]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Var 1)]),Branch (Pattern ("Prelude",":") [6,7]) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 4,Lit (Charc  '"')],Comb FuncCall ("Prelude","==") [Var 6,Lit (Charc  '"')]]) [Branch (Pattern ("Prelude","True") []) (Let [(8,Comb FuncCall ("CSV","components.breakString.25") [Var 1,Var 2,Var 7])] (Let [(9,Comb FuncCall ("CSV","components.breakString.25._#selFP3#b") [Var 8])] (Let [(10,Comb FuncCall ("CSV","components.breakString.25._#selFP4#bs") [Var 8])] (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 4,Var 9],Var 10])))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 4,Lit (Charc  '"')],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Var 6],Var 2]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb FuncCall ("CSV","components") [Var 2,Var 7]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Let [(11,Comb FuncCall ("CSV","components.breakString.25") [Var 1,Var 2,Comb ConsCall ("Prelude",":") [Var 6,Var 7]])] (Let [(12,Comb FuncCall ("CSV","components.breakString.25._#selFP6#b") [Var 11])] (Let [(13,Comb FuncCall ("CSV","components.breakString.25._#selFP7#bs") [Var 11])] (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 4,Var 12],Var 13])))),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])])),Func ("CSV","components.breakString.25._#selFP3#b") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 2)])),Func ("CSV","components.breakString.25._#selFP4#bs") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 3)])),Func ("CSV","components.breakString.25._#selFP6#b") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 2)])),Func ("CSV","components.breakString.25._#selFP7#bs") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 3)])),Func ("CSV","components._#selFP9#e") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("CSV","components._#selFP10#s") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)]))] []
+ src/lib/Curry/Module/.curry/CSV.fint view
@@ -0,0 +1,1 @@+Prog "CSV" ["List","Prelude"] [] [Func ("CSV","writeCSVFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("CSV","showCSV") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("CSV","readCSVFile") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]])) (Rule [] (Var 0)),Func ("CSV","readCSVFileWithDelims") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]]))) (Rule [] (Var 0)),Func ("CSV","readCSV") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Var 0)),Func ("CSV","readCSVWithDelims") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/CSV.uacy view
@@ -0,0 +1,12 @@+CurryProg "CSV"+ ["Prelude","List"]+ []+ [CFunc ("CSV","components") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (1,"delims"),CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CLit (CCharc '"')))) (CApply (CSymbol ("CSV","breakString")) (CVar (3,"cs")))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (5,"e"),CPVar (6,"s")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (7,"x0")] (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (7,"x0"))) (CVar (1,"delims"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"c"))) (CVar (3,"cs")))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"e"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (6,"s")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("CSV","components")) (CVar (1,"delims"))) (CApply (CSymbol ("Prelude","tail")) (CVar (6,"s"))))))))] [CLocalFunc (CFunc ("CSV","breakString") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CVar (4,"delimError"))] [],CRule [CPComb ("Prelude",":") [CPVar (5,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (5,"x"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))) (CVar (4,"delimError")))] [],CRule [CPComb ("Prelude",":") [CPVar (6,"x"),CPComb ("Prelude",":") [CPVar (7,"y"),CPVar (8,"zs")]]] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"y"))) (CLit (CCharc '"'))),CLetDecl [CLocalPat (CPComb ("Prelude",":") [CPVar (9,"b"),CPVar (10,"bs")]) (CApply (CSymbol ("CSV","breakString")) (CVar (8,"zs"))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CVar (9,"b")))) (CVar (10,"bs")))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (7,"y"))) (CVar (1,"delims"))),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("CSV","components")) (CVar (1,"delims"))) (CVar (8,"zs")))),(CSymbol ("Prelude","otherwise"),CLetDecl [CLocalPat (CPComb ("Prelude",":") [CPVar (11,"b"),CPVar (12,"bs")]) (CApply (CSymbol ("CSV","breakString")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (7,"y"))) (CVar (8,"zs")))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CVar (11,"b")))) (CVar (12,"bs"))))] []])),CLocalPat (CPVar (4,"delimError")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'V'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '!'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))) []]]),+  CFunc ("CSV","readCSV") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("CSV","readCSVWithDelims")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("CSV","readCSVFile") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("CSV","readCSVFileWithDelims")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("CSV","readCSVFileWithDelims") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]]))) (CRules CFlex [CRule [CPVar (0,"delims"),CPVar (1,"fname")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"contents")) (CApply (CSymbol ("Prelude","readFile")) (CVar (1,"fname"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("CSV","readCSVWithDelims")) (CVar (0,"delims"))) (CVar (2,"contents"))))])] []]),+  CFunc ("CSV","readCSVWithDelims") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]))) (CRules CFlex [CRule [CPVar (0,"delims"),CPVar (1,"str")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CApply (CSymbol ("CSV","components")) (CVar (0,"delims")))) (CApply (CSymbol ("Prelude","lines")) (CVar (1,"str"))))] []]),+  CFunc ("CSV","showCSV") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"rows")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("CSV","showCSVLine"))) (CVar (0,"rows")))] []]),+  CFunc ("CSV","showCSVLine") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"row")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CSymbol ("List","intersperse")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("CSV","convert"))) (CVar (0,"row")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))] [CLocalFunc (CFunc ("CSV","convert") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","any")) (CLambda [CPVar (2,"c")] (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (2,"c"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '"'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]"))))))))) (CVar (1,"s")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '"'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CLambda [CPVar (3,"c")] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"c"))) (CLit (CCharc '"')))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"c"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"c"))) (CSymbol ("Prelude","[]"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"c"))) (CSymbol ("Prelude","[]")))))) (CVar (1,"s")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '"'))) (CSymbol ("Prelude","[]")))))) (CVar (1,"s")))] []]))]]),+  CFunc ("CSV","writeCSVFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"fname"),CPVar (1,"rows")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (0,"fname"))) (CApply (CSymbol ("CSV","showCSV")) (CVar (1,"rows"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Char.acy view
@@ -0,0 +1,16 @@+CurryProg "Char"+ ["Prelude"]+ []+ [CFunc ("Char","digitToInt") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CApply (CSymbol ("Char","isDigit")) (CVar (0,"c")),CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'F')))),CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CLit (CIntc 10))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'f')))),CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CLit (CIntc 10))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))] []]),+  CFunc ("Char","intToDigit") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"i")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"i"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"i"))) (CLit (CIntc 9))),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))) (CVar (0,"i")))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"i"))) (CLit (CIntc 10)))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"i"))) (CLit (CIntc 15))),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A')))) (CVar (0,"i")))) (CLit (CIntc 10)))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))] []]),+  CFunc ("Char","isAlpha") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Char","isUpper")) (CVar (0,"c")))) (CApply (CSymbol ("Char","isLower")) (CVar (0,"c"))))] []]),+  CFunc ("Char","isAlphaNum") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Char","isAlpha")) (CVar (0,"c")))) (CApply (CSymbol ("Char","isDigit")) (CVar (0,"c"))))] []]),+  CFunc ("Char","isDigit") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c"))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '9')))))] []]),+  CFunc ("Char","isHexDigit") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Char","isDigit")) (CVar (0,"c")))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'F')))))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'f')))))))] []]),+  CFunc ("Char","isLower") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'z')))))] []]),+  CFunc ("Char","isOctDigit") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '7')))))] []]),+  CFunc ("Char","isSpace") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc ' ')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\t')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\n')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\r')))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CLit (CIntc 12)))))))] []]),+  CFunc ("Char","isUpper") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'Z')))))] []]),+  CFunc ("Char","toLower") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CApply (CSymbol ("Char","isUpper")) (CVar (0,"c")),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))),(CSymbol ("Prelude","otherwise"),CVar (0,"c"))] []]),+  CFunc ("Char","toUpper") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CApply (CSymbol ("Char","isLower")) (CVar (0,"c")),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))),(CSymbol ("Prelude","otherwise"),CVar (0,"c"))] []])]+ []
+ src/lib/Curry/Module/.curry/Char.cy view
@@ -0,0 +1,28 @@+Module "Char"+(Just (Exporting (8,12) [(Export (QualIdent Nothing (Ident "isUpper" 0))),(Export (QualIdent Nothing (Ident "isLower" 0))),(Export (QualIdent Nothing (Ident "isAlpha" 0))),(Export (QualIdent Nothing (Ident "isDigit" 0))),(Export (QualIdent Nothing (Ident "isAlphaNum" 0))),(Export (QualIdent Nothing (Ident "isOctDigit" 0))),(Export (QualIdent Nothing (Ident "isHexDigit" 0))),(Export (QualIdent Nothing (Ident "isSpace" 0))),(Export (QualIdent Nothing (Ident "toUpper" 0))),(Export (QualIdent Nothing (Ident "toLower" 0))),(Export (QualIdent Nothing (Ident "digitToInt" 0))),(Export (QualIdent Nothing (Ident "intToDigit" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(TypeSig (12,1) [(Ident "isUpper" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (13,1) (Ident "isUpper" 0) [(Equation (13,1) (FunLhs (Ident "isUpper" 0) [(VariablePattern (Ident "c" 2))]) (SimpleRhs (13,18) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'Z'))))) []))])+,(TypeSig (16,1) [(Ident "isLower" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (17,1) (Ident "isLower" 0) [(Equation (17,1) (FunLhs (Ident "isLower" 0) [(VariablePattern (Ident "c" 4))]) (SimpleRhs (17,18) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 4)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 4)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'z'))))) []))])+,(TypeSig (20,1) [(Ident "isAlpha" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (21,1) (Ident "isAlpha" 0) [(Equation (21,1) (FunLhs (Ident "isAlpha" 0) [(VariablePattern (Ident "c" 6))]) (SimpleRhs (21,18) (InfixApply (Apply (Variable (QualIdent (Just "Char") (Ident "isUpper" 0))) (Variable (QualIdent Nothing (Ident "c" 6)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Apply (Variable (QualIdent (Just "Char") (Ident "isLower" 0))) (Variable (QualIdent Nothing (Ident "c" 6))))) []))])+,(TypeSig (24,1) [(Ident "isDigit" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (25,1) (Ident "isDigit" 0) [(Equation (25,1) (FunLhs (Ident "isDigit" 0) [(VariablePattern (Ident "c" 8))]) (SimpleRhs (25,18) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0'))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 8))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 8)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '9'))))) []))])+,(TypeSig (28,1) [(Ident "isAlphaNum" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (29,1) (Ident "isAlphaNum" 0) [(Equation (29,1) (FunLhs (Ident "isAlphaNum" 0) [(VariablePattern (Ident "c" 10))]) (SimpleRhs (29,18) (InfixApply (Apply (Variable (QualIdent (Just "Char") (Ident "isAlpha" 0))) (Variable (QualIdent Nothing (Ident "c" 10)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Apply (Variable (QualIdent (Just "Char") (Ident "isDigit" 0))) (Variable (QualIdent Nothing (Ident "c" 10))))) []))])+,(TypeSig (32,1) [(Ident "isOctDigit" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (33,1) (Ident "isOctDigit" 0) [(Equation (33,1) (FunLhs (Ident "isOctDigit" 0) [(VariablePattern (Ident "c" 12))]) (SimpleRhs (33,18) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 12)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 12)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '7'))))) []))])+,(TypeSig (36,1) [(Ident "isHexDigit" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (37,1) (Ident "isHexDigit" 0) [(Equation (37,1) (FunLhs (Ident "isHexDigit" 0) [(VariablePattern (Ident "c" 14))]) (SimpleRhs (37,18) (InfixApply (Apply (Variable (QualIdent (Just "Char") (Ident "isDigit" 0))) (Variable (QualIdent Nothing (Ident "c" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'F'))))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 14)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'f'))))))) []))])+,(TypeSig (41,1) [(Ident "isSpace" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (42,1) (Ident "isSpace" 0) [(Equation (42,1) (FunLhs (Ident "isSpace" 0) [(VariablePattern (Ident "c" 16))]) (SimpleRhs (42,18) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 16))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 16))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\t'))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 16))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\n'))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 16))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\r'))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 18) 12))))))) []))])+,(TypeSig (46,1) [(Ident "toUpper" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])))+,(FunctionDecl (47,1) (Ident "toUpper" 0) [(Equation (47,1) (FunLhs (Ident "toUpper" 0) [(VariablePattern (Ident "c" 19))]) (GuardedRhs [(CondExpr (47,11) (Apply (Variable (QualIdent (Just "Char") (Ident "isLower" 0))) (Variable (QualIdent Nothing (Ident "c" 19)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 19)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A'))))))),(CondExpr (48,11) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Variable (QualIdent Nothing (Ident "c" 19))))] []))])+,(TypeSig (51,1) [(Ident "toLower" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])))+,(FunctionDecl (52,1) (Ident "toLower" 0) [(Equation (52,1) (FunLhs (Ident "toLower" 0) [(VariablePattern (Ident "c" 21))]) (GuardedRhs [(CondExpr (52,11) (Apply (Variable (QualIdent (Just "Char") (Ident "isUpper" 0))) (Variable (QualIdent Nothing (Ident "c" 21)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 21)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a'))))))),(CondExpr (53,11) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Variable (QualIdent Nothing (Ident "c" 21))))] []))])+,(TypeSig (56,1) [(Ident "digitToInt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (57,1) (Ident "digitToInt" 0) [(Equation (57,1) (FunLhs (Ident "digitToInt" 0) [(VariablePattern (Ident "c" 23))]) (GuardedRhs [(CondExpr (58,3) (Apply (Variable (QualIdent (Just "Char") (Ident "isDigit" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0'))))),(CondExpr (59,3) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'F'))))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 25) 10)))),(CondExpr (60,3) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'f'))))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 23)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 26) 10)))),(CondExpr (61,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Char.digitToInt: argument is not a digit"))))] []))])+,(TypeSig (64,1) [(Ident "intToDigit" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])))+,(FunctionDecl (65,1) (Ident "intToDigit" 0) [(Equation (65,1) (FunLhs (Ident "intToDigit" 0) [(VariablePattern (Ident "i" 27))]) (GuardedRhs [(CondExpr (66,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "i" 27))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 29) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "i" 27))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Literal (Int (Ident "_" 30) 9)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0'))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 27))))))),(CondExpr (67,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "i" 27))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 31) 10))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "i" 27))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Literal (Int (Ident "_" 32) 15)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A'))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 27)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 33) 10)))))),(CondExpr (68,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Char.intToDigit: argument not a digit value"))))] []))])+]
+ src/lib/Curry/Module/.curry/Char.efc view
@@ -0,0 +1,1 @@+Prog "Char" ["Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isUpper")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'Z')]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isLower")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'z')]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isAlpha")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isUpper")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isLower")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isDigit")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '9')]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isAlphaNum")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isAlpha")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isDigit")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isOctDigit")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '7')]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isHexDigit")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isDigit")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'F')]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'f')]]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isSpace")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  ' ')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\t')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\n')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\r')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Lit (Intc  12)]]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Char","toUpper")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Char")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isLower")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"Prelude","failed")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Char","toLower")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Char")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isUpper")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"Prelude","failed")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Char","digitToInt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isDigit")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'F')]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Lit (Intc  10)]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'f')]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]],Lit (Intc  10)]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Char","intToDigit")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Char")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  9)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  10)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  15)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Lit (Intc  10)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'D'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"Prelude","failed")) [])])])]))] []
+ src/lib/Curry/Module/.curry/Char.fcy view
@@ -0,0 +1,1 @@+Prog "Char" ["Prelude"] [] [Func ("Char","isUpper") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'Z')]]])),Func ("Char","isLower") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'z')]]])),Func ("Char","isAlpha") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Char","isUpper") [Var 1],Comb FuncCall ("Char","isLower") [Var 1]])),Func ("Char","isDigit") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')],Comb FuncCall ("Prelude","ord") [Var 1]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  '9')]]])),Func ("Char","isAlphaNum") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Char","isAlpha") [Var 1],Comb FuncCall ("Char","isDigit") [Var 1]])),Func ("Char","isOctDigit") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  '7')]]])),Func ("Char","isHexDigit") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Char","isDigit") [Var 1],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'F')]]],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'f')]]]]])),Func ("Char","isSpace") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  ' ')],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\t')],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\n')],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\r')],Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","ord") [Var 1],Lit (Intc  12)]]]]])),Func ("Char","toUpper") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Char") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Char","isLower") [Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","chr") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])),Func ("Char","toLower") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Char") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Char","isUpper") [Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","chr") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])),Func ("Char","digitToInt") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Char","isDigit") [Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'F')]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Lit (Intc  10)]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'f')]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]],Lit (Intc  10)]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Char","intToDigit") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Char") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Var 1,Lit (Intc  0)],Comb FuncCall ("Prelude","<=") [Var 1,Lit (Intc  9)]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","chr") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')],Var 1]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Var 1,Lit (Intc  10)],Comb FuncCall ("Prelude","<=") [Var 1,Lit (Intc  15)]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","chr") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')],Var 1],Lit (Intc  10)]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'D'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])]))] []
+ src/lib/Curry/Module/.curry/Char.fint view
@@ -0,0 +1,1 @@+Prog "Char" ["Prelude"] [] [Func ("Char","isUpper") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isLower") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isAlpha") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isDigit") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isAlphaNum") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isOctDigit") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isHexDigit") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","isSpace") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Char","toUpper") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Char") [])) (Rule [] (Var 0)),Func ("Char","toLower") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Char") [])) (Rule [] (Var 0)),Func ("Char","digitToInt") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Char","intToDigit") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Char") [])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Char.uacy view
@@ -0,0 +1,16 @@+CurryProg "Char"+ ["Prelude"]+ []+ [CFunc ("Char","digitToInt") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CApply (CSymbol ("Char","isDigit")) (CVar (0,"c")),CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'F')))),CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CLit (CIntc 10))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'f')))),CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CLit (CIntc 10))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))] []]),+  CFunc ("Char","intToDigit") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"i")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"i"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"i"))) (CLit (CIntc 9))),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))) (CVar (0,"i")))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"i"))) (CLit (CIntc 10)))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"i"))) (CLit (CIntc 15))),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A')))) (CVar (0,"i")))) (CLit (CIntc 10)))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))] []]),+  CFunc ("Char","isAlpha") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Char","isUpper")) (CVar (0,"c")))) (CApply (CSymbol ("Char","isLower")) (CVar (0,"c"))))] []]),+  CFunc ("Char","isAlphaNum") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Char","isAlpha")) (CVar (0,"c")))) (CApply (CSymbol ("Char","isDigit")) (CVar (0,"c"))))] []]),+  CFunc ("Char","isDigit") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c"))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '9')))))] []]),+  CFunc ("Char","isHexDigit") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Char","isDigit")) (CVar (0,"c")))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'F')))))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'f')))))))] []]),+  CFunc ("Char","isLower") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'z')))))] []]),+  CFunc ("Char","isOctDigit") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '7')))))] []]),+  CFunc ("Char","isSpace") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc ' ')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\t')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\n')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\r')))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CLit (CIntc 12)))))))] []]),+  CFunc ("Char","isUpper") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'Z')))))] []]),+  CFunc ("Char","toLower") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CApply (CSymbol ("Char","isUpper")) (CVar (0,"c")),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))),(CSymbol ("Prelude","otherwise"),CVar (0,"c"))] []]),+  CFunc ("Char","toUpper") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CApply (CSymbol ("Char","isLower")) (CVar (0,"c")),CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))),(CSymbol ("Prelude","otherwise"),CVar (0,"c"))] []])]+ []
+ src/lib/Curry/Module/.curry/Dequeue.acy view
@@ -0,0 +1,20 @@+CurryProg "Dequeue"+ ["Prelude"]+ [CType ("Dequeue","Queue") Public [(0,"a")] [CCons ("Dequeue","S") 4 Private [CTCons ("Prelude","Int") [],CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","Int") [],CTCons ("Prelude","[]") [CTVar (0,"a")]]]]+ [CFunc ("Dequeue","check") 4 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"lenf"),CPVar (1,"f"),CPVar (2,"lenr"),CPVar (3,"r")] [(CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"lenf"))) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 3))) (CVar (2,"lenr")))) (CLit (CIntc 1))),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CVar (0,"lenf"))) (CVar (1,"f"))) (CVar (2,"lenr"))) (CVar (3,"r"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CVar (5,"lenf'"))) (CVar (7,"f'"))) (CVar (6,"lenr'"))) (CVar (9,"r'")))] [CLocalPat (CPVar (4,"len")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"lenf"))) (CVar (2,"lenr"))) [],CLocalPat (CPVar (5,"lenf'")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (4,"len"))) (CLit (CIntc 2))) [],CLocalPat (CPVar (6,"lenr'")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"len"))) (CVar (5,"lenf'"))) [],CLocalPat (CPComb ("Prelude","(,)") [CPVar (7,"f'"),CPVar (8,"rf'")]) (CApply (CApply (CSymbol ("Prelude","splitAt")) (CVar (5,"lenf'"))) (CVar (1,"f"))) [],CLocalPat (CPVar (9,"r'")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (3,"r"))) (CApply (CSymbol ("Prelude","reverse")) (CVar (8,"rf'")))) []]]),+  CFunc ("Dequeue","cons") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"x"),CPComb ("Dequeue","S") [CPVar (1,"lenf"),CPVar (2,"f"),CPVar (3,"lenr"),CPVar (4,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"lenf"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (2,"f")))) (CVar (3,"lenr"))) (CVar (4,"r")))] []]),+  CFunc ("Dequeue","deqHead") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"f"),CPVar (2,"_"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","head")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"lenf"))) (CLit (CIntc 0)))) (CVar (3,"r"))) (CVar (1,"f"))))] []]),+  CFunc ("Dequeue","deqInit") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CSymbol ("Dequeue","empty"))] [],CRule [CPComb ("Dequeue","S") [CPVar (3,"lenf"),CPVar (4,"f"),CPVar (5,"lenr"),CPComb ("Prelude",":") [CPVar (6,"_"),CPVar (7,"rs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (3,"lenf"))) (CVar (4,"f"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (5,"lenr"))) (CLit (CIntc 1)))) (CVar (7,"rs")))] []]),+  CFunc ("Dequeue","deqLast") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPVar (1,"f"),CPVar (2,"lenr"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","head")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"lenr"))) (CLit (CIntc 0)))) (CVar (1,"f"))) (CVar (3,"r"))))] []]),+  CFunc ("Dequeue","deqLength") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"_"),CPVar (2,"lenr"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"lenf"))) (CVar (2,"lenr")))] []]),+  CFunc ("Dequeue","deqReverse") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"f"),CPVar (2,"lenr"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CVar (2,"lenr"))) (CVar (3,"r"))) (CVar (0,"lenf"))) (CVar (1,"f")))] []]),+  CFunc ("Dequeue","deqTail") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Dequeue","empty"))] [],CRule [CPComb ("Dequeue","S") [CPVar (3,"lenf"),CPComb ("Prelude",":") [CPVar (4,"_"),CPVar (5,"fs")],CPVar (6,"lenr"),CPVar (7,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Dequeue","deqReverse")) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (6,"lenr"))) (CVar (7,"r"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"lenf"))) (CLit (CIntc 1)))) (CVar (5,"fs"))))] []]),+  CFunc ("Dequeue","deqToList") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPVar (1,"xs"),CPVar (2,"_"),CPVar (3,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"xs"))) (CApply (CSymbol ("Prelude","reverse")) (CVar (3,"ys"))))] []]),+  CFunc ("Dequeue","empty") 0 Public (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CLit (CIntc 0))) (CSymbol ("Prelude","[]"))) (CLit (CIntc 0))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Dequeue","isEmpty") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"_"),CPVar (2,"lenr"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"lenf"))) (CVar (2,"lenr")))) (CLit (CIntc 0)))] []]),+  CFunc ("Dequeue","listToDeq") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"xs")))) (CVar (0,"xs"))) (CLit (CIntc 0))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Dequeue","matchHead") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Dequeue","Queue") [CTVar (0,"a")]]])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Dequeue","S") [CPVar (2,"_"),CPComb ("Prelude","[]") [],CPVar (3,"_"),CPComb ("Prelude",":") [CPVar (4,"x"),CPComb ("Prelude","[]") []]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (4,"x"))) (CSymbol ("Dequeue","empty"))))] [],CRule [CPComb ("Dequeue","S") [CPVar (5,"lenf"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPVar (8,"lenr"),CPVar (9,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (6,"x"))) (CApply (CSymbol ("Dequeue","deqReverse")) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (8,"lenr"))) (CVar (9,"r"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (5,"lenf"))) (CLit (CIntc 1)))) (CVar (7,"xs"))))))] []]),+  CFunc ("Dequeue","matchLast") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Dequeue","Queue") [CTVar (0,"a")]]])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Dequeue","S") [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"x"),CPComb ("Prelude","[]") []],CPVar (4,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"x"))) (CSymbol ("Dequeue","empty"))))] [],CRule [CPComb ("Dequeue","S") [CPVar (5,"lenf"),CPVar (6,"f"),CPVar (7,"lenr"),CPComb ("Prelude",":") [CPVar (8,"x"),CPVar (9,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (8,"x"))) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (5,"lenf"))) (CVar (6,"f"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (7,"lenr"))) (CLit (CIntc 1)))) (CVar (9,"xs")))))] []]),+  CFunc ("Dequeue","rotate") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"q")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Dequeue","snoc")) (CApply (CSymbol ("Dequeue","deqHead")) (CVar (0,"q")))) (CApply (CSymbol ("Dequeue","deqTail")) (CVar (0,"q"))))] []]),+  CFunc ("Dequeue","snoc") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"x"),CPComb ("Dequeue","S") [CPVar (1,"lenf"),CPVar (2,"f"),CPVar (3,"lenr"),CPVar (4,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Dequeue","deqReverse")) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"lenr"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (4,"r")))) (CVar (1,"lenf"))) (CVar (2,"f"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Dequeue.cy view
@@ -0,0 +1,37 @@+Module "Dequeue"+(Just (Exporting (9,15) [(Export (QualIdent Nothing (Ident "Queue" 0))),(Export (QualIdent Nothing (Ident "empty" 0))),(Export (QualIdent Nothing (Ident "isEmpty" 0))),(Export (QualIdent Nothing (Ident "deqHead" 0))),(Export (QualIdent Nothing (Ident "deqLast" 0))),(Export (QualIdent Nothing (Ident "cons" 0))),(Export (QualIdent Nothing (Ident "deqTail" 0))),(Export (QualIdent Nothing (Ident "snoc" 0))),(Export (QualIdent Nothing (Ident "deqInit" 0))),(Export (QualIdent Nothing (Ident "listToDeq" 0))),(Export (QualIdent Nothing (Ident "deqToList" 0))),(Export (QualIdent Nothing (Ident "deqReverse" 0))),(Export (QualIdent Nothing (Ident "deqLength" 0))),(Export (QualIdent Nothing (Ident "rotate" 0))),(Export (QualIdent Nothing (Ident "matchHead" 0))),(Export (QualIdent Nothing (Ident "matchLast" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(DataDecl (15,1) (Ident "Queue" 0) [(Ident "a" 0)] [(ConstrDecl (15,16) [] (Ident "S" 0) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ListType (VariableType (Ident "a" 0))),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ListType (VariableType (Ident "a" 0)))])])+,(TypeSig (18,1) [(Ident "empty" 0)] (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "_" 0))]))+,(FunctionDecl (19,1) (Ident "empty" 0) [(Equation (19,1) (FunLhs (Ident "empty" 0) []) (SimpleRhs (19,9) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Dequeue") (Ident "S" 0))) (Literal (Int (Ident "_" 4) 0))) (List [])) (Literal (Int (Ident "_" 5) 0))) (List [])) []))])+,(TypeSig (22,1) [(Ident "isEmpty" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (23,1) (Ident "isEmpty" 0) [(Equation (23,1) (FunLhs (Ident "isEmpty" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 6)),(VariablePattern (Ident "_" 7)),(VariablePattern (Ident "lenr" 6)),(VariablePattern (Ident "_" 8))]))]) (SimpleRhs (23,29) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 6))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lenr" 6)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 10) 0))) []))])+,(TypeSig (26,1) [(Ident "deqHead" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (27,1) (Ident "deqHead" 0) [(Equation (27,1) (FunLhs (Ident "deqHead" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 11)),(VariablePattern (Ident "f" 11)),(VariablePattern (Ident "_" 12)),(VariablePattern (Ident "r" 11))]))]) (SimpleRhs (27,26) (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 11))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 14) 0))) (Variable (QualIdent Nothing (Ident "r" 11))) (Variable (QualIdent Nothing (Ident "f" 11)))))) []))])+,(TypeSig (30,1) [(Ident "deqLast" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (31,1) (Ident "deqLast" 0) [(Equation (31,1) (FunLhs (Ident "deqLast" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 16)),(VariablePattern (Ident "f" 15)),(VariablePattern (Ident "lenr" 15)),(VariablePattern (Ident "r" 15))]))]) (SimpleRhs (31,26) (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "lenr" 15))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 18) 0))) (Variable (QualIdent Nothing (Ident "f" 15))) (Variable (QualIdent Nothing (Ident "r" 15)))))) []))])+,(TypeSig (34,1) [(Ident "cons" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (35,1) (Ident "cons" 0) [(Equation (35,1) (FunLhs (Ident "cons" 0) [(VariablePattern (Ident "x" 19)),(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 19)),(VariablePattern (Ident "f" 19)),(VariablePattern (Ident "lenr" 19)),(VariablePattern (Ident "r" 19))]))]) (SimpleRhs (35,28) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 19))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 21) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 19))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "f" 19)))))) (Variable (QualIdent Nothing (Ident "lenr" 19)))) (Variable (QualIdent Nothing (Ident "r" 19)))) []))])+,(TypeSig (38,1) [(Ident "deqTail" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (39,1) (Ident "deqTail" 0) [(Equation (39,1) (FunLhs (Ident "deqTail" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 23)),(ListPattern []),(VariablePattern (Ident "_" 24)),(VariablePattern (Ident "_" 25))]))]) (SimpleRhs (39,24) (Variable (QualIdent (Just "Dequeue") (Ident "empty" 0))) [])),(Equation (40,1) (FunLhs (Ident "deqTail" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 27)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 28)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "fs" 27)))),(VariablePattern (Ident "lenr" 27)),(VariablePattern (Ident "r" 27))]))]) (SimpleRhs (40,34) (Apply (Variable (QualIdent (Just "Dequeue") (Ident "deqReverse" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Variable (QualIdent Nothing (Ident "lenr" 27)))) (Variable (QualIdent Nothing (Ident "r" 27)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 27))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 30) 1))))) (Variable (QualIdent Nothing (Ident "fs" 27)))))) []))])+,(TypeSig (43,1) [(Ident "snoc" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (44,1) (Ident "snoc" 0) [(Equation (44,1) (FunLhs (Ident "snoc" 0) [(VariablePattern (Ident "x" 31)),(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 31)),(VariablePattern (Ident "f" 31)),(VariablePattern (Ident "lenr" 31)),(VariablePattern (Ident "r" 31))]))]) (SimpleRhs (44,28) (Apply (Variable (QualIdent (Just "Dequeue") (Ident "deqReverse" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "lenr" 31))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 33) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 31))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "r" 31)))))) (Variable (QualIdent Nothing (Ident "lenf" 31)))) (Variable (QualIdent Nothing (Ident "f" 31)))))) []))])+,(TypeSig (47,1) [(Ident "deqInit" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (48,1) (Ident "deqInit" 0) [(Equation (48,1) (FunLhs (Ident "deqInit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 35)),(VariablePattern (Ident "_" 36)),(VariablePattern (Ident "_" 37)),(ListPattern [])]))]) (SimpleRhs (48,24) (Variable (QualIdent (Just "Dequeue") (Ident "empty" 0))) [])),(Equation (49,1) (FunLhs (Ident "deqInit" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 39)),(VariablePattern (Ident "f" 39)),(VariablePattern (Ident "lenr" 39)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 40)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "rs" 39))))]))]) (SimpleRhs (49,34) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Variable (QualIdent Nothing (Ident "lenf" 39)))) (Variable (QualIdent Nothing (Ident "f" 39)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "lenr" 39))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 42) 1))))) (Variable (QualIdent Nothing (Ident "rs" 39)))) []))])+,(TypeSig (52,1) [(Ident "deqReverse" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (53,1) (Ident "deqReverse" 0) [(Equation (53,1) (FunLhs (Ident "deqReverse" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 43)),(VariablePattern (Ident "f" 43)),(VariablePattern (Ident "lenr" 43)),(VariablePattern (Ident "r" 43))]))]) (SimpleRhs (53,32) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Dequeue") (Ident "S" 0))) (Variable (QualIdent Nothing (Ident "lenr" 43)))) (Variable (QualIdent Nothing (Ident "r" 43)))) (Variable (QualIdent Nothing (Ident "lenf" 43)))) (Variable (QualIdent Nothing (Ident "f" 43)))) []))])+,(TypeSig (55,1) [(Ident "check" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]))))))+,(FunctionDecl (56,1) (Ident "check" 0) [(Equation (56,1) (FunLhs (Ident "check" 0) [(VariablePattern (Ident "lenf" 45)),(VariablePattern (Ident "f" 45)),(VariablePattern (Ident "lenr" 45)),(VariablePattern (Ident "r" 45))]) (GuardedRhs [(CondExpr (57,3) (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 45))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (InfixApply (InfixApply (Literal (Int (Ident "_" 53) 3)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "lenr" 45)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 54) 1)))) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Dequeue") (Ident "S" 0))) (Variable (QualIdent Nothing (Ident "lenf" 45)))) (Variable (QualIdent Nothing (Ident "f" 45)))) (Variable (QualIdent Nothing (Ident "lenr" 45)))) (Variable (QualIdent Nothing (Ident "r" 45))))),(CondExpr (58,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Dequeue") (Ident "S" 0))) (Variable (QualIdent Nothing (Ident "lenf'" 46)))) (Variable (QualIdent Nothing (Ident "f'" 46)))) (Variable (QualIdent Nothing (Ident "lenr'" 46)))) (Variable (QualIdent Nothing (Ident "r'" 46)))))] [(PatternDecl (60,5) (VariablePattern (Ident "len" 46)) (SimpleRhs (60,11) (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 45))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lenr" 45)))) [])),(PatternDecl (61,5) (VariablePattern (Ident "lenf'" 46)) (SimpleRhs (61,13) (InfixApply (Variable (QualIdent Nothing (Ident "len" 46))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 49) 2))) [])),(PatternDecl (62,5) (VariablePattern (Ident "lenr'" 46)) (SimpleRhs (62,13) (InfixApply (Variable (QualIdent Nothing (Ident "len" 46))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "lenf'" 46)))) [])),(PatternDecl (63,5) (TuplePattern [(VariablePattern (Ident "f'" 46)),(VariablePattern (Ident "rf'" 46))]) (SimpleRhs (63,16) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "splitAt" 0))) (Variable (QualIdent Nothing (Ident "lenf'" 46)))) (Variable (QualIdent Nothing (Ident "f" 45)))) [])),(PatternDecl (64,5) (VariablePattern (Ident "r'" 46)) (SimpleRhs (64,10) (InfixApply (Variable (QualIdent Nothing (Ident "r" 45))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "rf'" 46))))) []))]))])+,(TypeSig (67,1) [(Ident "listToDeq" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (68,1) (Ident "listToDeq" 0) [(Equation (68,1) (FunLhs (Ident "listToDeq" 0) [(VariablePattern (Ident "xs" 55))]) (SimpleRhs (68,16) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "xs" 55)))))) (Variable (QualIdent Nothing (Ident "xs" 55)))) (Literal (Int (Ident "_" 57) 0))) (List [])) []))])+,(TypeSig (71,1) [(Ident "deqToList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (72,1) (Ident "deqToList" 0) [(Equation (72,1) (FunLhs (Ident "deqToList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 59)),(VariablePattern (Ident "xs" 58)),(VariablePattern (Ident "_" 60)),(VariablePattern (Ident "ys" 58))]))]) (SimpleRhs (72,27) (InfixApply (Variable (QualIdent Nothing (Ident "xs" 58))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "ys" 58))))) []))])+,(TypeSig (75,1) [(Ident "deqLength" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (76,1) (Ident "deqLength" 0) [(Equation (76,1) (FunLhs (Ident "deqLength" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 62)),(VariablePattern (Ident "_" 63)),(VariablePattern (Ident "lenr" 62)),(VariablePattern (Ident "_" 64))]))]) (SimpleRhs (76,31) (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 62))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lenr" 62)))) []))])+,(TypeSig (79,1) [(Ident "rotate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (80,1) (Ident "rotate" 0) [(Equation (80,1) (FunLhs (Ident "rotate" 0) [(VariablePattern (Ident "q" 66))]) (SimpleRhs (80,12) (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "snoc" 0))) (Paren (Apply (Variable (QualIdent (Just "Dequeue") (Ident "deqHead" 0))) (Variable (QualIdent Nothing (Ident "q" 66)))))) (Paren (Apply (Variable (QualIdent (Just "Dequeue") (Ident "deqTail" 0))) (Variable (QualIdent Nothing (Ident "q" 66)))))) []))])+,(TypeSig (86,1) [(Ident "matchHead" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(VariableType (Ident "a" 0)),(ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])])])))+,(FunctionDecl (87,1) (Ident "matchHead" 0) [(Equation (87,1) (FunLhs (Ident "matchHead" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 69)),(ListPattern []),(VariablePattern (Ident "_" 70)),(ListPattern [])]))]) (SimpleRhs (87,27) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (88,1) (FunLhs (Ident "matchHead" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 73)),(ListPattern []),(VariablePattern (Ident "_" 74)),(ListPattern [(VariablePattern (Ident "x" 72))])]))]) (SimpleRhs (88,28) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "x" 72))),(Variable (QualIdent (Just "Dequeue") (Ident "empty" 0)))])) [])),(Equation (89,1) (FunLhs (Ident "matchHead" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 76)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 76)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 76)))),(VariablePattern (Ident "lenr" 76)),(VariablePattern (Ident "r" 76))]))]) (SimpleRhs (90,5) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "x" 76))),(Apply (Variable (QualIdent (Just "Dequeue") (Ident "deqReverse" 0))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Variable (QualIdent Nothing (Ident "lenr" 76)))) (Variable (QualIdent Nothing (Ident "r" 76)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "lenf" 76))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 78) 1))))) (Variable (QualIdent Nothing (Ident "xs" 76))))))])) []))])+,(TypeSig (96,1) [(Ident "matchLast" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(VariableType (Ident "a" 0)),(ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(VariableType (Ident "a" 0))])])])))+,(FunctionDecl (97,1) (Ident "matchLast" 0) [(Equation (97,1) (FunLhs (Ident "matchLast" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 80)),(ListPattern []),(VariablePattern (Ident "_" 81)),(ListPattern [])]))]) (SimpleRhs (97,27) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (98,1) (FunLhs (Ident "matchLast" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "_" 84)),(ListPattern [(VariablePattern (Ident "x" 83))]),(VariablePattern (Ident "_" 85)),(ListPattern [])]))]) (SimpleRhs (98,28) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "x" 83))),(Variable (QualIdent (Just "Dequeue") (Ident "empty" 0)))])) [])),(Equation (99,1) (FunLhs (Ident "matchLast" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Dequeue") (Ident "S" 0)) [(VariablePattern (Ident "lenf" 87)),(VariablePattern (Ident "f" 87)),(VariablePattern (Ident "lenr" 87)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 87)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 87))))]))]) (SimpleRhs (99,36) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "x" 87))),(Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "check" 0))) (Variable (QualIdent Nothing (Ident "lenf" 87)))) (Variable (QualIdent Nothing (Ident "f" 87)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "lenr" 87))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 89) 1))))) (Variable (QualIdent Nothing (Ident "xs" 87))))])) []))])+]
+ src/lib/Curry/Module/.curry/Dequeue.efc view
@@ -0,0 +1,1 @@+Prog "Dequeue" ["Prelude"] [Type ((Nothing,Nothing,"Dequeue","Queue")) Public [0] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) 4 Private [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]]] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),"Dequeue","empty")) 0 Public (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (Rule [] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [Lit (Intc  0),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Lit (Intc  0),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Dequeue","isEmpty")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Lit (Intc  0)])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TVar 0)),"Dequeue","deqHead")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"Prelude","head")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TVar 0)),"Dequeue","deqLast")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"Prelude","head")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))),"Dequeue","cons")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqTail")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),"Dequeue","empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqReverse")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]])])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))),"Dequeue","snoc")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqReverse")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Lit (Intc  1)],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqInit")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),"Dequeue","empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqReverse")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Lit (Intc  2)])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))])] (Let [((Just (TVar 46),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 47],TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]]))),"Prelude","splitAt")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 48],TCons (Nothing,Nothing,"Prelude","[]") [TVar 48]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 48])),"Dequeue","check._#selFP3#f'")) [Var ((Just (TVar 46),8))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 49],TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49])),"Dequeue","check._#selFP4#rf'")) [Var ((Just (TVar 46),8))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 51) (TVar 52)) (FuncType (TVar 51) (TVar 52))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),10))]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  3),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))],Lit (Intc  1)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),11))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),"Prelude","failed")) [])])]))))))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45])),"Dequeue","check._#selFP3#f'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 45],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 45]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 45])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]) (FuncType (TVar 48) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]),2),(Just (TVar 48),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45])),"Dequeue","check._#selFP4#rf'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 45],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 45]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 45])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 47) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]))),"Prelude","(,)")) [(Just (TVar 47),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","listToDeq")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Lit (Intc  0),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Dequeue","deqToList")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Dequeue","deqLength")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","rotate")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))),"Dequeue","snoc")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TVar 0)),"Dequeue","deqHead")) [Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqTail")) [Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]])),"Dequeue","matchHead")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]]])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 15]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]))),"Prelude","(,)")) [Var ((Just (TVar 0),6)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 15]),"Dequeue","empty")) []]])])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]))),"Prelude","(,)")) [Var ((Just (TVar 0),8)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0])),"Dequeue","deqReverse")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9))]]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]])),"Dequeue","matchLast")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Dequeue","Queue")) [TVar 0]]])) (Rule [(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","S")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 15]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]))),"Prelude","(,)")) [Var ((Just (TVar 0),6)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 15]),"Dequeue","empty")) []]])])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]]))),"Prelude","(,)")) [Var ((Just (TVar 0),8)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TVar 0]))))),"Dequeue","check")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9))]]])])]))] []
+ src/lib/Curry/Module/.curry/Dequeue.fcy view
@@ -0,0 +1,1 @@+Prog "Dequeue" ["Prelude"] [Type ("Dequeue","Queue") Public [0] [Cons ("Dequeue","S") 4 Private [TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TVar 0]]]] [Func ("Dequeue","empty") 0 Public (TCons ("Dequeue","Queue") [TVar 0]) (Rule [] (Comb ConsCall ("Dequeue","S") [Lit (Intc  0),Comb ConsCall ("Prelude","[]") [],Lit (Intc  0),Comb ConsCall ("Prelude","[]") []])),Func ("Dequeue","isEmpty") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","+") [Var 2,Var 4],Lit (Intc  0)])])),Func ("Dequeue","deqHead") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Comb FuncCall ("Prelude","head") [Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 5),Branch (Pattern ("Prelude","False") []) (Var 3)]])])),Func ("Dequeue","deqLast") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Comb FuncCall ("Prelude","head") [Case  Rigid (Comb FuncCall ("Prelude","==") [Var 4,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Var 5)]])])),Func ("Dequeue","cons") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Dequeue","S") [3,4,5,6]) (Comb FuncCall ("Dequeue","check") [Comb FuncCall ("Prelude","+") [Var 3,Lit (Intc  1)],Comb ConsCall ("Prelude",":") [Var 1,Var 4],Var 5,Var 6])])),Func ("Dequeue","deqTail") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Dequeue","empty") []),Branch (Pattern ("Prelude",":") [6,7]) (Comb FuncCall ("Dequeue","deqReverse") [Comb FuncCall ("Dequeue","check") [Var 4,Var 5,Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  1)],Var 7]])])])),Func ("Dequeue","snoc") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Dequeue","S") [3,4,5,6]) (Comb FuncCall ("Dequeue","deqReverse") [Comb FuncCall ("Dequeue","check") [Comb FuncCall ("Prelude","+") [Var 5,Lit (Intc  1)],Comb ConsCall ("Prelude",":") [Var 1,Var 6],Var 3,Var 4]])])),Func ("Dequeue","deqInit") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Dequeue","empty") []),Branch (Pattern ("Prelude",":") [6,7]) (Comb FuncCall ("Dequeue","check") [Var 2,Var 3,Comb FuncCall ("Prelude","-") [Var 4,Lit (Intc  1)],Var 7])])])),Func ("Dequeue","deqReverse") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Comb ConsCall ("Dequeue","S") [Var 4,Var 5,Var 2,Var 3])])),Func ("Dequeue","check") 4 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0]))))) (Rule [1,2,3,4] (Let [(5,Comb FuncCall ("Prelude","+") [Var 1,Var 3])] (Let [(6,Comb FuncCall ("Prelude","div") [Var 5,Lit (Intc  2)])] (Let [(7,Comb FuncCall ("Prelude","-") [Var 5,Var 6])] (Let [(8,Comb FuncCall ("Prelude","splitAt") [Var 6,Var 2])] (Let [(9,Comb FuncCall ("Dequeue","check._#selFP3#f'") [Var 8])] (Let [(10,Comb FuncCall ("Dequeue","check._#selFP4#rf'") [Var 8])] (Let [(11,Comb FuncCall ("Prelude","++") [Var 4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 10]])] (Case  Rigid (Comb FuncCall ("Prelude","<=") [Var 1,Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","*") [Lit (Intc  3),Var 3],Lit (Intc  1)]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Dequeue","S") [Var 1,Var 2,Var 3,Var 4]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Dequeue","S") [Var 6,Var 9,Var 7,Var 11]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])]))))))))),Func ("Dequeue","check._#selFP3#f'") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 45],TCons ("Prelude","[]") [TVar 45]]) (TCons ("Prelude","[]") [TVar 45])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Dequeue","check._#selFP4#rf'") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 45],TCons ("Prelude","[]") [TVar 45]]) (TCons ("Prelude","[]") [TVar 45])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Dequeue","listToDeq") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [1] (Comb FuncCall ("Dequeue","check") [Comb FuncCall ("Prelude","length") [Var 1],Var 1,Lit (Intc  0),Comb ConsCall ("Prelude","[]") []])),Func ("Dequeue","deqToList") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Comb FuncCall ("Prelude","++") [Var 3,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 5]])])),Func ("Dequeue","deqLength") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Comb FuncCall ("Prelude","+") [Var 2,Var 4])])),Func ("Dequeue","rotate") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [1] (Comb FuncCall ("Dequeue","snoc") [Comb FuncCall ("Dequeue","deqHead") [Var 1],Comb FuncCall ("Dequeue","deqTail") [Var 1]])),Func ("Dequeue","matchHead") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TCons ("Dequeue","Queue") [TVar 0]]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Case  Flex (Var 5) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("Prelude",":") [6,7]) (Case  Flex (Var 7) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Var 6,Comb FuncCall ("Dequeue","empty") []]])])]),Branch (Pattern ("Prelude",":") [8,9]) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Var 8,Comb FuncCall ("Dequeue","deqReverse") [Comb FuncCall ("Dequeue","check") [Var 4,Var 5,Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  1)],Var 9]]]])])])),Func ("Dequeue","matchLast") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TCons ("Dequeue","Queue") [TVar 0]]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Dequeue","S") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("Prelude","[]") []) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("Prelude",":") [6,7]) (Case  Flex (Var 7) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Var 6,Comb FuncCall ("Dequeue","empty") []]])])]),Branch (Pattern ("Prelude",":") [8,9]) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Var 8,Comb FuncCall ("Dequeue","check") [Var 2,Var 3,Comb FuncCall ("Prelude","-") [Var 4,Lit (Intc  1)],Var 9]]])])]))] []
+ src/lib/Curry/Module/.curry/Dequeue.fint view
@@ -0,0 +1,1 @@+Prog "Dequeue" ["Prelude"] [Type ("Dequeue","Queue") Public [0] []] [Func ("Dequeue","empty") 0 Public (TCons ("Dequeue","Queue") [TVar 0]) (Rule [] (Var 0)),Func ("Dequeue","isEmpty") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Dequeue","deqHead") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TVar 0)) (Rule [] (Var 0)),Func ("Dequeue","deqLast") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TVar 0)) (Rule [] (Var 0)),Func ("Dequeue","cons") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0]))) (Rule [] (Var 0)),Func ("Dequeue","deqTail") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [] (Var 0)),Func ("Dequeue","snoc") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0]))) (Rule [] (Var 0)),Func ("Dequeue","deqInit") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [] (Var 0)),Func ("Dequeue","deqReverse") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [] (Var 0)),Func ("Dequeue","listToDeq") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [] (Var 0)),Func ("Dequeue","deqToList") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Dequeue","deqLength") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Dequeue","rotate") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Dequeue","Queue") [TVar 0])) (Rule [] (Var 0)),Func ("Dequeue","matchHead") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TCons ("Dequeue","Queue") [TVar 0]]])) (Rule [] (Var 0)),Func ("Dequeue","matchLast") 1 Public (FuncType (TCons ("Dequeue","Queue") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TCons ("Dequeue","Queue") [TVar 0]]])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Dequeue.uacy view
@@ -0,0 +1,20 @@+CurryProg "Dequeue"+ ["Prelude"]+ [CType ("Dequeue","Queue") Public [(0,"a")] [CCons ("Dequeue","S") 4 Private [CTCons ("Prelude","Int") [],CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","Int") [],CTCons ("Prelude","[]") [CTVar (0,"a")]]]]+ [CFunc ("Dequeue","check") 4 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"lenf"),CPVar (1,"f"),CPVar (2,"lenr"),CPVar (3,"r")] [(CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"lenf"))) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 3))) (CVar (2,"lenr")))) (CLit (CIntc 1))),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CVar (0,"lenf"))) (CVar (1,"f"))) (CVar (2,"lenr"))) (CVar (3,"r"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CVar (5,"lenf'"))) (CVar (7,"f'"))) (CVar (6,"lenr'"))) (CVar (9,"r'")))] [CLocalPat (CPVar (4,"len")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"lenf"))) (CVar (2,"lenr"))) [],CLocalPat (CPVar (5,"lenf'")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (4,"len"))) (CLit (CIntc 2))) [],CLocalPat (CPVar (6,"lenr'")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"len"))) (CVar (5,"lenf'"))) [],CLocalPat (CPComb ("Prelude","(,)") [CPVar (7,"f'"),CPVar (8,"rf'")]) (CApply (CApply (CSymbol ("Prelude","splitAt")) (CVar (5,"lenf'"))) (CVar (1,"f"))) [],CLocalPat (CPVar (9,"r'")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (3,"r"))) (CApply (CSymbol ("Prelude","reverse")) (CVar (8,"rf'")))) []]]),+  CFunc ("Dequeue","cons") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"x"),CPComb ("Dequeue","S") [CPVar (1,"lenf"),CPVar (2,"f"),CPVar (3,"lenr"),CPVar (4,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"lenf"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (2,"f")))) (CVar (3,"lenr"))) (CVar (4,"r")))] []]),+  CFunc ("Dequeue","deqHead") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"f"),CPVar (2,"_"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","head")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"lenf"))) (CLit (CIntc 0)))) (CVar (3,"r"))) (CVar (1,"f"))))] []]),+  CFunc ("Dequeue","deqInit") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CSymbol ("Dequeue","empty"))] [],CRule [CPComb ("Dequeue","S") [CPVar (3,"lenf"),CPVar (4,"f"),CPVar (5,"lenr"),CPComb ("Prelude",":") [CPVar (6,"_"),CPVar (7,"rs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (3,"lenf"))) (CVar (4,"f"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (5,"lenr"))) (CLit (CIntc 1)))) (CVar (7,"rs")))] []]),+  CFunc ("Dequeue","deqLast") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPVar (1,"f"),CPVar (2,"lenr"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","head")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"lenr"))) (CLit (CIntc 0)))) (CVar (1,"f"))) (CVar (3,"r"))))] []]),+  CFunc ("Dequeue","deqLength") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"_"),CPVar (2,"lenr"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"lenf"))) (CVar (2,"lenr")))] []]),+  CFunc ("Dequeue","deqReverse") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"f"),CPVar (2,"lenr"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CVar (2,"lenr"))) (CVar (3,"r"))) (CVar (0,"lenf"))) (CVar (1,"f")))] []]),+  CFunc ("Dequeue","deqTail") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Dequeue","empty"))] [],CRule [CPComb ("Dequeue","S") [CPVar (3,"lenf"),CPComb ("Prelude",":") [CPVar (4,"_"),CPVar (5,"fs")],CPVar (6,"lenr"),CPVar (7,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Dequeue","deqReverse")) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (6,"lenr"))) (CVar (7,"r"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"lenf"))) (CLit (CIntc 1)))) (CVar (5,"fs"))))] []]),+  CFunc ("Dequeue","deqToList") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPVar (1,"xs"),CPVar (2,"_"),CPVar (3,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"xs"))) (CApply (CSymbol ("Prelude","reverse")) (CVar (3,"ys"))))] []]),+  CFunc ("Dequeue","empty") 0 Public (CTCons ("Dequeue","Queue") [CTVar (0,"_")]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","S")) (CLit (CIntc 0))) (CSymbol ("Prelude","[]"))) (CLit (CIntc 0))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Dequeue","isEmpty") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"lenf"),CPVar (1,"_"),CPVar (2,"lenr"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"lenf"))) (CVar (2,"lenr")))) (CLit (CIntc 0)))] []]),+  CFunc ("Dequeue","listToDeq") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"xs")))) (CVar (0,"xs"))) (CLit (CIntc 0))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Dequeue","matchHead") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Dequeue","Queue") [CTVar (0,"a")]]])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Dequeue","S") [CPVar (2,"_"),CPComb ("Prelude","[]") [],CPVar (3,"_"),CPComb ("Prelude",":") [CPVar (4,"x"),CPComb ("Prelude","[]") []]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (4,"x"))) (CSymbol ("Dequeue","empty"))))] [],CRule [CPComb ("Dequeue","S") [CPVar (5,"lenf"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPVar (8,"lenr"),CPVar (9,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (6,"x"))) (CApply (CSymbol ("Dequeue","deqReverse")) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (8,"lenr"))) (CVar (9,"r"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (5,"lenf"))) (CLit (CIntc 1)))) (CVar (7,"xs"))))))] []]),+  CFunc ("Dequeue","matchLast") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Dequeue","Queue") [CTVar (0,"a")]]])) (CRules CFlex [CRule [CPComb ("Dequeue","S") [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Dequeue","S") [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"x"),CPComb ("Prelude","[]") []],CPVar (4,"_"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"x"))) (CSymbol ("Dequeue","empty"))))] [],CRule [CPComb ("Dequeue","S") [CPVar (5,"lenf"),CPVar (6,"f"),CPVar (7,"lenr"),CPComb ("Prelude",":") [CPVar (8,"x"),CPVar (9,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (8,"x"))) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CVar (5,"lenf"))) (CVar (6,"f"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (7,"lenr"))) (CLit (CIntc 1)))) (CVar (9,"xs")))))] []]),+  CFunc ("Dequeue","rotate") 1 Public (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"q")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Dequeue","snoc")) (CApply (CSymbol ("Dequeue","deqHead")) (CVar (0,"q")))) (CApply (CSymbol ("Dequeue","deqTail")) (CVar (0,"q"))))] []]),+  CFunc ("Dequeue","snoc") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Dequeue","Queue") [CTVar (0,"a")]) (CTCons ("Dequeue","Queue") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"x"),CPComb ("Dequeue","S") [CPVar (1,"lenf"),CPVar (2,"f"),CPVar (3,"lenr"),CPVar (4,"r")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Dequeue","deqReverse")) (CApply (CApply (CApply (CApply (CSymbol ("Dequeue","check")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"lenr"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (4,"r")))) (CVar (1,"lenf"))) (CVar (2,"f"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Directory.acy view
@@ -0,0 +1,27 @@+CurryProg "Directory"+ ["Prelude","Time"]+ []+ [CFunc ("Directory","createDirectory") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_createDirectory"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","doesDirectoryExist") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_doesDirectoryExist"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","doesFileExist") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"fname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_doesFileExist"))) (CVar (0,"fname")))] []]),+  CFunc ("Directory","fileSize") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"fname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_fileSize"))) (CVar (0,"fname")))] []]),+  CFunc ("Directory","getCurrentDirectory") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CExternal "getCurrentDirectory"),+  CFunc ("Directory","getDirectoryContents") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_getDirectoryContents"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","getModificationTime") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Time","ClockTime") []])) (CRules CFlex [CRule [CPVar (0,"fname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_getModificationTime"))) (CVar (0,"fname")))] []]),+  CFunc ("Directory","prim_createDirectory") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_createDirectory"),+  CFunc ("Directory","prim_doesDirectoryExist") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_doesDirectoryExist"),+  CFunc ("Directory","prim_doesFileExist") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_doesFileExist"),+  CFunc ("Directory","prim_fileSize") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CExternal "prim_fileSize"),+  CFunc ("Directory","prim_getDirectoryContents") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CExternal "prim_getDirectoryContents"),+  CFunc ("Directory","prim_getModificationTime") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Time","ClockTime") []])) (CExternal "prim_getModificationTime"),+  CFunc ("Directory","prim_removeDirectory") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_removeDirectory"),+  CFunc ("Directory","prim_removeFile") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_removeFile"),+  CFunc ("Directory","prim_renameDirectory") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_renameDirectory"),+  CFunc ("Directory","prim_renameFile") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_renameFile"),+  CFunc ("Directory","prim_setCurrentDirectory") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_setCurrentDirectory"),+  CFunc ("Directory","removeDirectory") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_removeDirectory"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","removeFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_removeFile"))) (CVar (0,"file")))] []]),+  CFunc ("Directory","renameDirectory") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"dir1"),CPVar (1,"dir2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_renameDirectory"))) (CVar (0,"dir1")))) (CVar (1,"dir2")))] []]),+  CFunc ("Directory","renameFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"file1"),CPVar (1,"file2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_renameFile"))) (CVar (0,"file1")))) (CVar (1,"file2")))] []]),+  CFunc ("Directory","setCurrentDirectory") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_setCurrentDirectory"))) (CVar (0,"dir")))] []])]+ []
+ src/lib/Curry/Module/.curry/Directory.cy view
@@ -0,0 +1,51 @@+Module "Directory"+(Just (Exporting (7,17) [(Export (QualIdent Nothing (Ident "doesFileExist" 0))),(Export (QualIdent Nothing (Ident "doesDirectoryExist" 0))),(Export (QualIdent Nothing (Ident "fileSize" 0))),(Export (QualIdent Nothing (Ident "getModificationTime" 0))),(Export (QualIdent Nothing (Ident "getCurrentDirectory" 0))),(Export (QualIdent Nothing (Ident "setCurrentDirectory" 0))),(Export (QualIdent Nothing (Ident "getDirectoryContents" 0))),(Export (QualIdent Nothing (Ident "createDirectory" 0))),(Export (QualIdent Nothing (Ident "removeFile" 0))),(Export (QualIdent Nothing (Ident "removeDirectory" 0))),(Export (QualIdent Nothing (Ident "renameFile" 0))),(Export (QualIdent Nothing (Ident "renameDirectory" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "Time" False Nothing (Just (Importing (13,12) [(Import (Ident "ClockTime" 0))])))+,(TypeSig (17,1) [(Ident "doesFileExist" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FunctionDecl (18,1) (Ident "doesFileExist" 0) [(Equation (18,1) (FunLhs (Ident "doesFileExist" 0) [(VariablePattern (Ident "fname" 2))]) (SimpleRhs (18,23) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_doesFileExist" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "fname" 2)))) []))])+,(TypeSig (20,1) [(Ident "prim_doesFileExist" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FlatExternalDecl (21,1) [(Ident "prim_doesFileExist" 0)])+,(TypeSig (24,1) [(Ident "doesDirectoryExist" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FunctionDecl (25,1) (Ident "doesDirectoryExist" 0) [(Equation (25,1) (FunLhs (Ident "doesDirectoryExist" 0) [(VariablePattern (Ident "dir" 4))]) (SimpleRhs (25,26) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_doesDirectoryExist" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir" 4)))) []))])+,(TypeSig (27,1) [(Ident "prim_doesDirectoryExist" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FlatExternalDecl (28,1) [(Ident "prim_doesDirectoryExist" 0)])+,(TypeSig (31,1) [(Ident "fileSize" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])))+,(FunctionDecl (32,1) (Ident "fileSize" 0) [(Equation (32,1) (FunLhs (Ident "fileSize" 0) [(VariablePattern (Ident "fname" 6))]) (SimpleRhs (32,18) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_fileSize" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "fname" 6)))) []))])+,(TypeSig (34,1) [(Ident "prim_fileSize" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])))+,(FlatExternalDecl (35,1) [(Ident "prim_fileSize" 0)])+,(TypeSig (38,1) [(Ident "getModificationTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) [])])))+,(FunctionDecl (39,1) (Ident "getModificationTime" 0) [(Equation (39,1) (FunLhs (Ident "getModificationTime" 0) [(VariablePattern (Ident "fname" 8))]) (SimpleRhs (39,29) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_getModificationTime" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "fname" 8)))) []))])+,(TypeSig (41,1) [(Ident "prim_getModificationTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) [])])))+,(FlatExternalDecl (42,1) [(Ident "prim_getModificationTime" 0)])+,(TypeSig (45,1) [(Ident "getCurrentDirectory" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))+,(FlatExternalDecl (46,1) [(Ident "getCurrentDirectory" 0)])+,(TypeSig (49,1) [(Ident "setCurrentDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (50,1) (Ident "setCurrentDirectory" 0) [(Equation (50,1) (FunLhs (Ident "setCurrentDirectory" 0) [(VariablePattern (Ident "dir" 10))]) (SimpleRhs (50,27) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_setCurrentDirectory" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir" 10)))) []))])+,(TypeSig (52,1) [(Ident "prim_setCurrentDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (53,1) [(Ident "prim_setCurrentDirectory" 0)])+,(TypeSig (56,1) [(Ident "getDirectoryContents" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))])))+,(FunctionDecl (57,1) (Ident "getDirectoryContents" 0) [(Equation (57,1) (FunLhs (Ident "getDirectoryContents" 0) [(VariablePattern (Ident "dir" 12))]) (SimpleRhs (57,28) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_getDirectoryContents" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir" 12)))) []))])+,(TypeSig (59,1) [(Ident "prim_getDirectoryContents" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))])))+,(FlatExternalDecl (60,1) [(Ident "prim_getDirectoryContents" 0)])+,(TypeSig (63,1) [(Ident "createDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (64,1) (Ident "createDirectory" 0) [(Equation (64,1) (FunLhs (Ident "createDirectory" 0) [(VariablePattern (Ident "dir" 14))]) (SimpleRhs (64,23) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_createDirectory" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir" 14)))) []))])+,(TypeSig (66,1) [(Ident "prim_createDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (67,1) [(Ident "prim_createDirectory" 0)])+,(TypeSig (70,1) [(Ident "removeFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (71,1) (Ident "removeFile" 0) [(Equation (71,1) (FunLhs (Ident "removeFile" 0) [(VariablePattern (Ident "file" 16))]) (SimpleRhs (71,19) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_removeFile" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "file" 16)))) []))])+,(TypeSig (73,1) [(Ident "prim_removeFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (74,1) [(Ident "prim_removeFile" 0)])+,(TypeSig (77,1) [(Ident "removeDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (78,1) (Ident "removeDirectory" 0) [(Equation (78,1) (FunLhs (Ident "removeDirectory" 0) [(VariablePattern (Ident "dir" 18))]) (SimpleRhs (78,23) (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_removeDirectory" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir" 18)))) []))])+,(TypeSig (80,1) [(Ident "prim_removeDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (81,1) [(Ident "prim_removeDirectory" 0)])+,(TypeSig (84,1) [(Ident "renameFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (85,1) (Ident "renameFile" 0) [(Equation (85,1) (FunLhs (Ident "renameFile" 0) [(VariablePattern (Ident "file1" 20)),(VariablePattern (Ident "file2" 20))]) (SimpleRhs (85,26) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_renameFile" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "file1" 20))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "file2" 20)))) []))])+,(TypeSig (87,1) [(Ident "prim_renameFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (88,1) [(Ident "prim_renameFile" 0)])+,(TypeSig (91,1) [(Ident "renameDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (92,1) (Ident "renameDirectory" 0) [(Equation (92,1) (FunLhs (Ident "renameDirectory" 0) [(VariablePattern (Ident "dir1" 22)),(VariablePattern (Ident "dir2" 22))]) (SimpleRhs (92,29) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Directory") (Ident "prim_renameDirectory" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir1" 22))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "dir2" 22)))) []))])+,(TypeSig (94,1) [(Ident "prim_renameDirectory" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (95,1) [(Ident "prim_renameDirectory" 0)])+]
+ src/lib/Curry/Module/.curry/Directory.efc view
@@ -0,0 +1,1 @@+Prog "Directory" ["Prelude","Time"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","doesFileExist")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","prim_doesFileExist")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","prim_doesFileExist")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (External "Directory.prim_doesFileExist"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","doesDirectoryExist")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","prim_doesDirectoryExist")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","prim_doesDirectoryExist")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (External "Directory.prim_doesDirectoryExist"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Directory","fileSize")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Directory","prim_fileSize")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Directory","prim_fileSize")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (External "Directory.prim_fileSize"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []])),"Directory","getModificationTime")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","ClockTime")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []])),"Directory","prim_getModificationTime")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []])),"Directory","prim_getModificationTime")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","ClockTime")) []])) (External "Directory.prim_getModificationTime"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Directory","getCurrentDirectory")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (External "Directory.getCurrentDirectory"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","setCurrentDirectory")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_setCurrentDirectory")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_setCurrentDirectory")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "Directory.prim_setCurrentDirectory"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Directory","getDirectoryContents")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Directory","prim_getDirectoryContents")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Directory","prim_getDirectoryContents")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (External "Directory.prim_getDirectoryContents"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","createDirectory")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_createDirectory")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_createDirectory")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "Directory.prim_createDirectory"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","removeFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_removeFile")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_removeFile")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "Directory.prim_removeFile"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","removeDirectory")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_removeDirectory")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Directory","prim_removeDirectory")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "Directory.prim_removeDirectory"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Directory","renameFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Directory","prim_renameFile")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Directory","prim_renameFile")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "Directory.prim_renameFile"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Directory","renameDirectory")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Directory","prim_renameDirectory")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Directory","prim_renameDirectory")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "Directory.prim_renameDirectory")] []
+ src/lib/Curry/Module/.curry/Directory.fcy view
@@ -0,0 +1,1 @@+Prog "Directory" ["Prelude","Time"] [] [Func ("Directory","doesFileExist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_doesFileExist") [],Var 1])),Func ("Directory","prim_doesFileExist") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (External "Directory.prim_doesFileExist"),Func ("Directory","doesDirectoryExist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_doesDirectoryExist") [],Var 1])),Func ("Directory","prim_doesDirectoryExist") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (External "Directory.prim_doesDirectoryExist"),Func ("Directory","fileSize") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_fileSize") [],Var 1])),Func ("Directory","prim_fileSize") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (External "Directory.prim_fileSize"),Func ("Directory","getModificationTime") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Time","ClockTime") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_getModificationTime") [],Var 1])),Func ("Directory","prim_getModificationTime") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Time","ClockTime") []])) (External "Directory.prim_getModificationTime"),Func ("Directory","getCurrentDirectory") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (External "Directory.getCurrentDirectory"),Func ("Directory","setCurrentDirectory") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_setCurrentDirectory") [],Var 1])),Func ("Directory","prim_setCurrentDirectory") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Directory.prim_setCurrentDirectory"),Func ("Directory","getDirectoryContents") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_getDirectoryContents") [],Var 1])),Func ("Directory","prim_getDirectoryContents") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (External "Directory.prim_getDirectoryContents"),Func ("Directory","createDirectory") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_createDirectory") [],Var 1])),Func ("Directory","prim_createDirectory") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Directory.prim_createDirectory"),Func ("Directory","removeFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_removeFile") [],Var 1])),Func ("Directory","prim_removeFile") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Directory.prim_removeFile"),Func ("Directory","removeDirectory") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Directory","prim_removeDirectory") [],Var 1])),Func ("Directory","prim_removeDirectory") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Directory.prim_removeDirectory"),Func ("Directory","renameFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Directory","prim_renameFile") [],Var 1],Var 2])),Func ("Directory","prim_renameFile") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Directory.prim_renameFile"),Func ("Directory","renameDirectory") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Directory","prim_renameDirectory") [],Var 1],Var 2])),Func ("Directory","prim_renameDirectory") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Directory.prim_renameDirectory")] []
+ src/lib/Curry/Module/.curry/Directory.fint view
@@ -0,0 +1,1 @@+Prog "Directory" ["Prelude","Time"] [] [Func ("Directory","doesFileExist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("Directory","doesDirectoryExist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("Directory","fileSize") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("Directory","getModificationTime") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Time","ClockTime") []])) (Rule [] (Var 0)),Func ("Directory","getCurrentDirectory") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (External "Directory.getCurrentDirectory"),Func ("Directory","setCurrentDirectory") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Directory","getDirectoryContents") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Var 0)),Func ("Directory","createDirectory") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Directory","removeFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Directory","removeDirectory") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Directory","renameFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("Directory","renameDirectory") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Directory.uacy view
@@ -0,0 +1,27 @@+CurryProg "Directory"+ ["Prelude","Time"]+ []+ [CFunc ("Directory","createDirectory") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_createDirectory"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","doesDirectoryExist") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_doesDirectoryExist"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","doesFileExist") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"fname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_doesFileExist"))) (CVar (0,"fname")))] []]),+  CFunc ("Directory","fileSize") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"fname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_fileSize"))) (CVar (0,"fname")))] []]),+  CFunc ("Directory","getCurrentDirectory") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CExternal "getCurrentDirectory"),+  CFunc ("Directory","getDirectoryContents") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_getDirectoryContents"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","getModificationTime") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Time","ClockTime") []])) (CRules CFlex [CRule [CPVar (0,"fname")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_getModificationTime"))) (CVar (0,"fname")))] []]),+  CFunc ("Directory","prim_createDirectory") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_createDirectory"),+  CFunc ("Directory","prim_doesDirectoryExist") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_doesDirectoryExist"),+  CFunc ("Directory","prim_doesFileExist") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_doesFileExist"),+  CFunc ("Directory","prim_fileSize") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CExternal "prim_fileSize"),+  CFunc ("Directory","prim_getDirectoryContents") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]])) (CExternal "prim_getDirectoryContents"),+  CFunc ("Directory","prim_getModificationTime") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Time","ClockTime") []])) (CExternal "prim_getModificationTime"),+  CFunc ("Directory","prim_removeDirectory") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_removeDirectory"),+  CFunc ("Directory","prim_removeFile") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_removeFile"),+  CFunc ("Directory","prim_renameDirectory") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_renameDirectory"),+  CFunc ("Directory","prim_renameFile") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_renameFile"),+  CFunc ("Directory","prim_setCurrentDirectory") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_setCurrentDirectory"),+  CFunc ("Directory","removeDirectory") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_removeDirectory"))) (CVar (0,"dir")))] []]),+  CFunc ("Directory","removeFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_removeFile"))) (CVar (0,"file")))] []]),+  CFunc ("Directory","renameDirectory") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"dir1"),CPVar (1,"dir2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_renameDirectory"))) (CVar (0,"dir1")))) (CVar (1,"dir2")))] []]),+  CFunc ("Directory","renameFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"file1"),CPVar (1,"file2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_renameFile"))) (CVar (0,"file1")))) (CVar (1,"file2")))] []]),+  CFunc ("Directory","setCurrentDirectory") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"dir")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Directory","prim_setCurrentDirectory"))) (CVar (0,"dir")))] []])]+ []
+ src/lib/Curry/Module/.curry/EasyCheck.acy view
@@ -0,0 +1,79 @@+CurryProg "EasyCheck"+ ["Prelude","List","Sort","Meta","Integer","Read","RandomExternal"]+ [CType ("EasyCheck","Test") Private [] [CCons ("EasyCheck","Test") 3 Private [CTCons ("EasyCheck","Result") [],CTCons ("Prelude","[]") [CTCons ("Prelude","String") []],CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]],+  CType ("EasyCheck","Result") Public [] [CCons ("EasyCheck","Undef") 0 Public [],CCons ("EasyCheck","Ok") 0 Public [],CCons ("EasyCheck","Falsified") 1 Public [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]],CCons ("EasyCheck","Ambigious") 2 Public [CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []],CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]],+  CTypeSyn ("EasyCheck","Prop") Public [] (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]),+  CType ("EasyCheck","Config") Private [] [CCons ("EasyCheck","Config") 3 Private [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") []))]]]+ [CFunc ("EasyCheck","#") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"n"))) (CVar (2,"x0"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","length"))) (CSymbol ("List","nub")))))] []]),+  CFunc ("EasyCheck","-=-") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","is")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"x"))) (CVar (1,"y")))) (CApply (CSymbol ("Prelude","uncurry")) (CSymbol ("Prelude","=="))))] []]),+  CFunc ("EasyCheck","<~") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("EasyCheck","isSubsetOf")) (CVar (2,"x0"))) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"y"))))))] []]),+  CFunc ("EasyCheck","<~>") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CSymbol ("EasyCheck","isSameSet")) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"y")))))] []]),+  CFunc ("EasyCheck","==>") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"p")] [(CSymbol ("Prelude","success"),CVar (0,"p"))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("EasyCheck","notest"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("EasyCheck","always") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","isAlways")) (CVar (0,"x0"))) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","args") 1 Private (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPComb ("EasyCheck","Test") [CPVar (0,"_"),CPVar (1,"a"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"a"))] []]),+  CFunc ("EasyCheck","check") 2 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"config"),CPVar (1,"p")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"isOrBased")) (CSymbol ("EasyCheck","evalModeIsOrBased")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (2,"isOrBased"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("EasyCheck","tests")) (CVar (0,"config"))) (CVar (1,"p"))) (CLit (CIntc 0))) (CLit (CIntc 0))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStrLn"))) (CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'P'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'B'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '~'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '/'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CSymbol ("Prelude","[]"))))))))))))))])] []]),+  CFunc ("EasyCheck","classify") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","label")) (CVar (0,"name")))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","id"))] []]),+  CFunc ("EasyCheck","collect") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","label"))) (CSymbol ("Prelude","show")))] []]),+  CFunc ("EasyCheck","collectAs") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","label"))) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))) (CVar (1,"x0"))))) (CSymbol ("Prelude","show"))))] []]),+  CFunc ("EasyCheck","deterministic") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","is")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","const")) (CSymbol ("Prelude","True"))))] []]),+  CFunc ("EasyCheck","diagonal") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","concat"))) (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("EasyCheck","diags"))) (CSymbol ("Prelude","[]"))))] [CLocalFunc (CFunc ("EasyCheck","diags") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("EasyCheck","merge")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []])),CLocalFunc (CFunc ("EasyCheck","merge") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPAs (3,"xs") (CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")]),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (4,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x0"))) (CSymbol ("Prelude","[]"))))) (CVar (3,"xs")))] [],CRule [CPComb ("Prelude",":") [CPVar (5,"x"),CPVar (6,"xs")],CPComb ("Prelude",":") [CPVar (7,"y"),CPVar (8,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x"))) (CVar (7,"y")))) (CApply (CApply (CSymbol ("EasyCheck","merge")) (CVar (6,"xs"))) (CVar (8,"ys"))))] []]))]]),+  CFunc ("EasyCheck","done") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"mesg"),CPVar (1,"ntest"),CPVar (2,"stamps")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStr"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"mesg"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"ntest")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (1,"ntest"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]")))) (CVar (3,"table"))))))))])] [CLocalPat (CPVar (3,"table")) (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","display"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("EasyCheck","entry")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","reverse"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Sort","mergeSort")) (CApply (CApply (CSymbol ("EasyCheck","leqPair")) (CSymbol ("Prelude","<="))) (CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqString")))))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("EasyCheck","pairLength")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("List","group"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Sort","mergeSort")) (CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqString"))))) (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CSymbol ("Prelude","null")))))))))))) (CVar (2,"stamps"))) [],CLocalFunc (CFunc ("EasyCheck","display") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))] [],CRule [CPComb ("Prelude",":") [CPVar (4,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"x"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))] [],CRule [CPAs (8,"xs") (CPComb ("Prelude",":") [CPVar (5,"_"),CPComb ("Prelude",":") [CPVar (6,"_"),CPVar (7,"_")]])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (9,"x0")] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (9,"x0"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))))) (CVar (8,"xs")))))] []])),CLocalFunc (CFunc ("EasyCheck","pairLength") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")])) (CRules CFlex [CRule [CPAs (6,"xss") (CPComb ("Prelude",":") [CPVar (4,"xs"),CPVar (5,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","length")) (CVar (6,"xss")))) (CVar (4,"xs")))] []])),CLocalFunc (CFunc ("EasyCheck","entry") 1 Private (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (4,"n"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("EasyCheck","percentage")) (CVar (4,"n"))) (CVar (1,"ntest")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CSymbol ("List","intersperse")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))) (CVar (5,"xs"))))))] []])),CLocalFunc (CFunc ("EasyCheck","percentage") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (4,"n"),CPVar (5,"m")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (6,"s")) (CApply (CSymbol ("Prelude","show")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 100))) (CVar (4,"n")))) (CVar (5,"m")))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CApply (CApply (CSymbol ("Prelude","-")) (CLit (CIntc 3))) (CApply (CSymbol ("Prelude","length")) (CVar (6,"s"))))) (CLit (CCharc ' ')))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (6,"s"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '%'))) (CSymbol ("Prelude","[]"))))))] []]))]]),+  CFunc ("EasyCheck","easy") 0 Private (CTCons ("EasyCheck","Config") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Config")) (CLit (CIntc 100))) (CLit (CIntc 1000))) (CLambda [CPVar (0,"n"),CPVar (1,"_")] (CLetDecl [CLocalPat (CPVar (2,"s")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CSymbol ("Prelude","show")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"n"))) (CLit (CIntc 1))))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"s"))) (CListComp (CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 8))) [CSPat (CPVar (3,"_")) (CVar (2,"s"))])))))] []]),+  CFunc ("EasyCheck","easyCheck") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","check")) (CSymbol ("EasyCheck","easy")))] []]),+  CFunc ("EasyCheck","easyCheck1") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","easyCheck2") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))] []]),+  CFunc ("EasyCheck","easyCheck3") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))] []]),+  CFunc ("EasyCheck","easyCheck4") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))))] []]),+  CFunc ("EasyCheck","easyCheck5") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CFuncType (CTVar (4,"e")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))))] []]),+  CFunc ("EasyCheck","evalModeIsOrBased") 0 Private (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Prelude","getSearchTree")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Prelude","id"))) (CSymbol ("Prelude","unknown"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x0"))) (CApply (CSymbol ("Prelude","Value")) (CSymbol ("Prelude","()")))))))] []]),+  CFunc ("EasyCheck","eventually") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","isEventually")) (CVar (0,"x0"))) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","every") 1 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))) (CRules CFlex [CRule [CPComb ("EasyCheck","Config") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"f")]] [(CSymbol ("Prelude","success"),CVar (2,"f"))] []]),+  CFunc ("EasyCheck","failing") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CSymbol ("Prelude","null")))] []]),+  CFunc ("EasyCheck","flat") 1 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPVar (0,"t")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"t")) [CBranch (CPComb ("Prelude","Value") [CPVar (1,"_")]) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"t"))) (CSymbol ("Prelude","[]"))),CBranch (CPComb ("Prelude","Choice") [CPVar (2,"ts")]) (CVar (2,"ts")),CBranch (CPVar (3,"_")) (CSymbol ("Prelude","[]"))])] []]),+  CFunc ("EasyCheck","flatRep") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"ts")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)),CVar (1,"ts")),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("EasyCheck","flatRep")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (0,"n"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("EasyCheck","flat"))) (CVar (1,"ts"))))] []]),+  CFunc ("EasyCheck","for") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","forAll")) (CSymbol ("Prelude","id")))] []]),+  CFunc ("EasyCheck","forAll") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CFuncType (CTVar (1,"b")) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (0,"a"))) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"x"),CPVar (2,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","forAllValues")) (CVar (0,"c"))) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"x")))) (CVar (2,"f")))] []]),+  CFunc ("EasyCheck","forAllValues") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (0,"a"))) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"xs"),CPVar (2,"f")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","diagonal")) (CListComp (CListComp (CApply (CApply (CSymbol ("EasyCheck","updArgs")) (CLambda [CPVar (5,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"y")))) (CVar (5,"x0"))))) (CVar (4,"t"))) [CSPat (CPVar (4,"t")) (CApply (CVar (0,"c")) (CApply (CVar (2,"f")) (CVar (3,"y"))))]) [CSPat (CPVar (3,"y")) (CVar (1,"xs"))]))] []]),+  CFunc ("EasyCheck","forValues") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","forAllValues")) (CSymbol ("Prelude","id")))] []]),+  CFunc ("EasyCheck","is") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CLambda [CPVar (2,"xs")] (CCase (CVar (2,"xs")) [CBranch (CPComb ("Prelude",":") [CPVar (3,"y"),CPComb ("Prelude","[]") []]) (CApply (CVar (1,"f")) (CVar (3,"y"))),CBranch (CPVar (4,"_")) (CSymbol ("Prelude","False"))])))] []]),+  CFunc ("EasyCheck","isAlways") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x")))) (CSymbol ("Prelude","all")))] []]),+  CFunc ("EasyCheck","isEventually") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x")))) (CSymbol ("Prelude","any")))] []]),+  CFunc ("EasyCheck","isSameSet") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("EasyCheck","subset")) (CVar (2,"xs'"))) (CVar (3,"ys'")))) (CApply (CApply (CSymbol ("EasyCheck","subset")) (CVar (3,"ys'"))) (CVar (2,"xs'"))))] [CLocalPat (CPVar (2,"xs'")) (CApply (CSymbol ("List","nub")) (CVar (0,"xs"))) [],CLocalPat (CPVar (3,"ys'")) (CApply (CSymbol ("List","nub")) (CVar (1,"ys"))) []]]),+  CFunc ("EasyCheck","isSubsetOf") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","subset")) (CApply (CSymbol ("List","nub")) (CVar (0,"xs")))) (CVar (1,"ys")))] []]),+  CFunc ("EasyCheck","label") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","map"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","updStamp"))) (CSymbol ("Prelude",":"))))] []]),+  CFunc ("EasyCheck","leList") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPVar (4,"_"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPVar (7,"le"),CPComb ("Prelude",":") [CPVar (8,"x"),CPVar (9,"xs")],CPComb ("Prelude",":") [CPVar (10,"y"),CPVar (11,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CVar (7,"le")) (CVar (8,"x"))) (CVar (10,"y")))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"x"))) (CVar (10,"y")))) (CApply (CApply (CApply (CSymbol ("EasyCheck","leList")) (CVar (7,"le"))) (CVar (9,"xs"))) (CVar (11,"ys")))))] []]),+  CFunc ("EasyCheck","leqPair") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))))) (CRules CFlex [CRule [CPVar (0,"leqa"),CPVar (1,"leqb"),CPComb ("Prelude","(,)") [CPVar (2,"x1"),CPVar (3,"y1")],CPComb ("Prelude","(,)") [CPVar (4,"x2"),CPVar (5,"y2")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"x1"))) (CVar (4,"x2")),CApply (CApply (CVar (1,"leqb")) (CVar (3,"y1"))) (CVar (5,"y2"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (0,"leqa")) (CVar (2,"x1"))) (CVar (4,"x2")))] []]),+  CFunc ("EasyCheck","maxFail") 1 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("EasyCheck","Config") [CPVar (0,"_"),CPVar (1,"n"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"n"))] []]),+  CFunc ("EasyCheck","maxTest") 1 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("EasyCheck","Config") [CPVar (0,"n"),CPVar (1,"_"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"n"))] []]),+  CFunc ("EasyCheck","notest") 0 Private (CTCons ("EasyCheck","Test") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CSymbol ("EasyCheck","Undef"))) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("EasyCheck","nth") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"n")) [CBranch (CPLit (CIntc 1)) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]"))))))),CBranch (CPLit (CIntc 2)) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]")))))))),CBranch (CPLit (CIntc 3)) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]"))))))),CBranch (CPVar (1,"_")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CSymbol ("Prelude","[]")))))])] []]),+  CFunc ("EasyCheck","prop") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("EasyCheck","uniquely"))] []]),+  CFunc ("EasyCheck","result") 1 Public (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Result") [])) (CRules CFlex [CRule [CPComb ("EasyCheck","Test") [CPVar (0,"r"),CPVar (1,"_"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"r"))] []]),+  CFunc ("EasyCheck","rndLevelDiag") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"rnd"),CPVar (1,"t")] [(CSymbol ("Prelude","success"),CListComp (CVar (2,"x")) [CSPat (CPComb ("Prelude","Value") [CPVar (2,"x")]) (CApply (CSymbol ("EasyCheck","diagonal")) (CApply (CApply (CSymbol ("EasyCheck","rndLevels")) (CVar (0,"rnd"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"t"))) (CSymbol ("Prelude","[]")))))])] []]),+  CFunc ("EasyCheck","rndLevelDiagFlat") 3 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"d"),CPVar (1,"rnd"),CPVar (2,"t")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","concat"))) (CApply (CSymbol ("EasyCheck","transpose")) (CApply (CApply (CApply (CSymbol ("Prelude","zipWith")) (CSymbol ("EasyCheck","rndLevelDiag"))) (CVar (3,"rs"))) (CApply (CApply (CSymbol ("EasyCheck","flatRep")) (CVar (0,"d"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"t"))) (CSymbol ("Prelude","[]")))))))] [CLocalPat (CPVar (3,"rs")) (CApply (CSymbol ("RandomExternal","split")) (CVar (1,"rnd"))) []]]),+  CFunc ("EasyCheck","rndLevels") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]]))) (CRules CFlex [CRule [CPVar (0,"rnd"),CPVar (1,"ts")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (1,"ts")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"ts"))) (CApply (CApply (CSymbol ("EasyCheck","rndLevels")) (CVar (2,"r"))) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CApply (CSymbol ("Prelude","zipWith")) (CSymbol ("EasyCheck","shuffle"))) (CVar (3,"rs"))) (CListComp (CVar (4,"us")) [CSPat (CPComb ("Prelude","Choice") [CPVar (4,"us")]) (CVar (1,"ts"))]))))))] [CLocalPat (CPComb ("Prelude",":") [CPVar (2,"r"),CPVar (3,"rs")]) (CApply (CSymbol ("RandomExternal","split")) (CVar (0,"rnd"))) []]]),+  CFunc ("EasyCheck","setEvery") 2 Private (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("EasyCheck","Config") []) (CTCons ("EasyCheck","Config") []))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("EasyCheck","Config") [CPVar (1,"n"),CPVar (2,"m"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Config")) (CVar (1,"n"))) (CVar (2,"m"))) (CVar (0,"f")))] []]),+  CFunc ("EasyCheck","setResult") 2 Private (CFuncType (CTCons ("EasyCheck","Result") []) (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Test") []))) (CRules CFlex [CRule [CPVar (0,"res"),CPComb ("EasyCheck","Test") [CPVar (1,"_"),CPVar (2,"s"),CPVar (3,"a")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CVar (0,"res"))) (CVar (3,"a"))) (CVar (2,"s")))] []]),+  CFunc ("EasyCheck","shuffle") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"rnd"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","shuffleWithLen")) (CApply (CSymbol ("RandomExternal","nextInt")) (CVar (0,"rnd")))) (CApply (CSymbol ("Prelude","length")) (CVar (1,"l")))) (CVar (1,"l")))] []]),+  CFunc ("EasyCheck","shuffleWithLen") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"r"),CPVar (1,"rs")],CPVar (2,"len"),CPVar (3,"xs")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"len"))) (CLit (CIntc 0)),CSymbol ("Prelude","[]")),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"z"))) (CApply (CApply (CApply (CSymbol ("EasyCheck","shuffleWithLen")) (CVar (1,"rs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (2,"len"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"ys"))) (CVar (6,"zs")))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ys"),CPComb ("Prelude",":") [CPVar (5,"z"),CPVar (6,"zs")]]) (CApply (CApply (CSymbol ("Prelude","splitAt")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CSymbol ("Integer","abs")) (CVar (0,"r")))) (CVar (2,"len")))) (CVar (3,"xs"))) []]]),+  CFunc ("EasyCheck","stamp") 1 Private (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPComb ("EasyCheck","Test") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"s")]] [(CSymbol ("Prelude","success"),CVar (2,"s"))] []]),+  CFunc ("EasyCheck","subset") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (0,"xs"))) (CVar (1,"ys"))))] []]),+  CFunc ("EasyCheck","suc") 1 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (0,"a"))) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","forAll")) (CVar (0,"n"))) (CSymbol ("Prelude","unknown")))] []]),+  CFunc ("EasyCheck","successful") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CSymbol ("Prelude","null"))))] []]),+  CFunc ("EasyCheck","test") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("EasyCheck","setResult")) (CVar (3,"res"))) (CSymbol ("EasyCheck","notest")))) (CSymbol ("Prelude","[]")))] [CLocalPat (CPVar (2,"xs")) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (0,"x"))) [],CLocalPat (CPVar (3,"res")) (CCase (CApply (CSymbol ("EasyCheck","valuesOf")) (CApply (CVar (1,"f")) (CVar (2,"xs")))) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","True") [],CPComb ("Prelude","[]") []]) (CSymbol ("EasyCheck","Ok")),CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","False") [],CPComb ("Prelude","[]") []]) (CApply (CSymbol ("EasyCheck","Falsified")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","show"))) (CVar (2,"xs")))),CBranch (CPVar (4,"bs")) (CApply (CApply (CSymbol ("EasyCheck","Ambigious")) (CVar (4,"bs"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","show"))) (CVar (2,"xs"))))]) []]]),+  CFunc ("EasyCheck","tests") 5 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"ntest"),CPVar (2,"_"),CPVar (3,"stamps")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","done")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'P'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]"))))))))) (CVar (1,"ntest"))) (CVar (3,"stamps")))] [],CRule [CPVar (4,"config"),CPComb ("Prelude",":") [CPVar (5,"t"),CPVar (6,"ts")],CPVar (7,"ntest"),CPVar (8,"nfail"),CPVar (9,"stamps")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"ntest"))) (CApply (CSymbol ("EasyCheck","maxTest")) (CVar (4,"config"))),CApply (CApply (CApply (CSymbol ("EasyCheck","done")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]"))))))))))))) (CVar (7,"ntest"))) (CVar (9,"stamps"))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"nfail"))) (CApply (CSymbol ("EasyCheck","maxFail")) (CVar (4,"config"))),CApply (CApply (CApply (CSymbol ("EasyCheck","done")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CVar (7,"ntest"))) (CVar (9,"stamps"))),(CSymbol ("Prelude","otherwise"),CDoExpr [CSExpr (CApply (CSymbol ("Prelude","putStr")) (CApply (CApply (CApply (CSymbol ("EasyCheck","every")) (CVar (4,"config"))) (CVar (7,"ntest"))) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))),CSExpr (CCase (CApply (CSymbol ("EasyCheck","result")) (CVar (5,"t"))) [CBranch (CPComb ("EasyCheck","Undef") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("EasyCheck","tests")) (CVar (4,"config"))) (CVar (6,"ts"))) (CVar (7,"ntest"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (8,"nfail"))) (CLit (CIntc 1)))) (CVar (9,"stamps"))),CBranch (CPComb ("EasyCheck","Ok") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("EasyCheck","tests")) (CVar (4,"config"))) (CVar (6,"ts"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"ntest"))) (CLit (CIntc 1)))) (CVar (8,"nfail"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("EasyCheck","stamp")) (CVar (5,"t")))) (CVar (9,"stamps")))),CBranch (CPComb ("EasyCheck","Falsified") [CPVar (10,"results")]) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStr"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("EasyCheck","nth")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"ntest"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","unlines")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (10,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CApply (CSymbol ("Prelude","unlines")) (CVar (10,"results")))))))))))),CBranch (CPComb ("EasyCheck","Ambigious") [CPVar (11,"bs"),CPVar (12,"results")]) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStr"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (11,"bs")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("EasyCheck","nth")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"ntest"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","unlines")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (12,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CApply (CSymbol ("Prelude","unlines")) (CVar (12,"results"))))))))))))))])])] []]),+  CFunc ("EasyCheck","transpose") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","[]") [],CPVar (0,"xss")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","transpose")) (CVar (0,"xss")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"xss")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CListComp (CVar (4,"h")) [CSPat (CPComb ("Prelude",":") [CPVar (4,"h"),CPVar (5,"_")]) (CVar (3,"xss"))]))) (CApply (CSymbol ("EasyCheck","transpose")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"xs"))) (CListComp (CVar (7,"t")) [CSPat (CPComb ("Prelude",":") [CPVar (6,"_"),CPVar (7,"t")]) (CVar (3,"xss"))]))))] []]),+  CFunc ("EasyCheck","trivial") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","classify")) (CVar (0,"x0"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CSymbol ("Prelude","[]")))))))))))] []]),+  CFunc ("EasyCheck","uniquely") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","is")) (CVar (0,"x0"))) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","updArgs") 2 Private (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Test") []))) (CRules CFlex [CRule [CPVar (0,"upd"),CPComb ("EasyCheck","Test") [CPVar (1,"r"),CPVar (2,"a"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CVar (1,"r"))) (CApply (CVar (0,"upd")) (CVar (2,"a")))) (CVar (3,"s")))] []]),+  CFunc ("EasyCheck","updStamp") 2 Private (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Test") []))) (CRules CFlex [CRule [CPVar (0,"upd"),CPComb ("EasyCheck","Test") [CPVar (1,"r"),CPVar (2,"a"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CVar (1,"r"))) (CVar (2,"a"))) (CApply (CVar (0,"upd")) (CVar (3,"s"))))] []]),+  CFunc ("EasyCheck","valuesOf") 0 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CApply (CSymbol ("EasyCheck","rndLevelDiagFlat")) (CLit (CIntc 3))) (CLit (CIntc 2008)))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Meta","searchTree"))) (CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","id"))) (CVar (0,"x0"))))))] []]),+  CFunc ("EasyCheck","verbose") 0 Private (CTCons ("EasyCheck","Config") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","setEvery")) (CLambda [CPVar (0,"n"),CPVar (1,"xs")] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","unlines")) (CVar (1,"xs"))))))) (CSymbol ("EasyCheck","easy")))] []]),+  CFunc ("EasyCheck","verboseCheck") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","check")) (CSymbol ("EasyCheck","verbose")))] []]),+  CFunc ("EasyCheck","verboseCheck1") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","verboseCheck2") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))] []]),+  CFunc ("EasyCheck","verboseCheck3") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))] []]),+  CFunc ("EasyCheck","verboseCheck4") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))))] []]),+  CFunc ("EasyCheck","verboseCheck5") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CFuncType (CTVar (4,"e")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []])))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))))] []]),+  CFunc ("EasyCheck","~>") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CSymbol ("EasyCheck","isSubsetOf")) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"y")))))] []])]+ [COp ("EasyCheck","isSubsetOf") CInfixOp 4,COp ("EasyCheck","isSameSet") CInfixOp 4,COp ("EasyCheck","trivial") CInfixOp 1,COp ("EasyCheck","<~") CInfixOp 1,COp ("EasyCheck","~>") CInfixOp 1,COp ("EasyCheck","<~>") CInfixOp 1,COp ("EasyCheck","#") CInfixOp 1,COp ("EasyCheck","-=-") CInfixOp 1,COp ("EasyCheck","isEventually") CInfixOp 1,COp ("EasyCheck","isAlways") CInfixOp 1,COp ("EasyCheck","is") CInfixOp 1,COp ("EasyCheck","==>") CInfixrOp 0]
+ src/lib/Curry/Module/.curry/EasyCheck.cy view
@@ -0,0 +1,146 @@+Module "EasyCheck"+(Just (Exporting (11,18) [(Export (QualIdent Nothing (Ident "Prop" 0))),(Export (QualIdent Nothing (Ident "==>" 0))),(Export (QualIdent Nothing (Ident "for" 0))),(Export (QualIdent Nothing (Ident "forValues" 0))),(Export (QualIdent Nothing (Ident "test" 0))),(Export (QualIdent Nothing (Ident "is" 0))),(Export (QualIdent Nothing (Ident "isAlways" 0))),(Export (QualIdent Nothing (Ident "isEventually" 0))),(Export (QualIdent Nothing (Ident "prop" 0))),(Export (QualIdent Nothing (Ident "uniquely" 0))),(Export (QualIdent Nothing (Ident "always" 0))),(Export (QualIdent Nothing (Ident "eventually" 0))),(Export (QualIdent Nothing (Ident "failing" 0))),(Export (QualIdent Nothing (Ident "successful" 0))),(Export (QualIdent Nothing (Ident "deterministic" 0))),(Export (QualIdent Nothing (Ident "-=-" 0))),(Export (QualIdent Nothing (Ident "#" 0))),(Export (QualIdent Nothing (Ident "<~>" 0))),(Export (QualIdent Nothing (Ident "~>" 0))),(Export (QualIdent Nothing (Ident "<~" 0))),(Export (QualIdent Nothing (Ident "isSameSet" 0))),(Export (QualIdent Nothing (Ident "isSubsetOf" 0))),(Export (QualIdent Nothing (Ident "label" 0))),(Export (QualIdent Nothing (Ident "trivial" 0))),(Export (QualIdent Nothing (Ident "classify" 0))),(Export (QualIdent Nothing (Ident "collect" 0))),(Export (QualIdent Nothing (Ident "collectAs" 0))),(Export (QualIdent Nothing (Ident "easyCheck" 0))),(Export (QualIdent Nothing (Ident "easyCheck1" 0))),(Export (QualIdent Nothing (Ident "easyCheck2" 0))),(Export (QualIdent Nothing (Ident "easyCheck3" 0))),(Export (QualIdent Nothing (Ident "easyCheck4" 0))),(Export (QualIdent Nothing (Ident "easyCheck5" 0))),(Export (QualIdent Nothing (Ident "verboseCheck" 0))),(Export (QualIdent Nothing (Ident "verboseCheck1" 0))),(Export (QualIdent Nothing (Ident "verboseCheck2" 0))),(Export (QualIdent Nothing (Ident "verboseCheck3" 0))),(Export (QualIdent Nothing (Ident "verboseCheck4" 0))),(Export (QualIdent Nothing (Ident "verboseCheck5" 0))),(Export (QualIdent Nothing (Ident "valuesOf" 0))),(ExportTypeAll (QualIdent Nothing (Ident "Result" 0))),(Export (QualIdent Nothing (Ident "result" 0))),(Export (QualIdent Nothing (Ident "diagonal" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (37,1) "List" False Nothing (Just (Importing (37,25) [(Import (Ident "nub" 0)),(Import (Ident "group" 0)),(Import (Ident "intersperse" 0)),(Import (Ident "\\\\" 0))])))+,(ImportDecl (38,1) "Sort" False Nothing (Just (Importing (38,25) [(Import (Ident "leqList" 0)),(Import (Ident "leqString" 0)),(Import (Ident "mergeSort" 0))])))+,(ImportDecl (39,1) "Meta" False Nothing (Just (Importing (39,25) [(Import (Ident "searchTree" 0))])))+,(ImportDecl (40,1) "Integer" False Nothing (Just (Importing (40,25) [(Import (Ident "abs" 0))])))+,(ImportDecl (41,1) "Read" False Nothing (Just (Importing (41,25) [(Import (Ident "readNat" 0))])))+,(ImportDecl (42,1) "RandomExternal" False Nothing (Just (Importing (42,25) [(Import (Ident "split" 0)),(Import (Ident "nextInt" 0))])))+,(DataDecl (49,1) (Ident "Test" 0) [] [(ConstrDecl (49,13) [] (Ident "Test" 0) [(ConstructorType (QualIdent Nothing (Ident "Result" 0)) []),(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])),(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))])])+,(DataDecl (51,1) (Ident "Result" 0) [] [(ConstrDecl (51,15) [] (Ident "Undef" 0) []),(ConstrDecl (51,23) [] (Ident "Ok" 0) []),(ConstrDecl (51,28) [] (Ident "Falsified" 0) [(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))]),(ConstrDecl (51,49) [] (Ident "Ambigious" 0) [(ListType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])),(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))])])+,(TypeDecl (53,1) (Ident "Prop" 0) [] (ListType (ConstructorType (QualIdent Nothing (Ident "Test" 0)) [])))+,(DataDecl (169,1) (Ident "Config" 0) [] [(ConstrDecl (169,15) [] (Ident "Config" 0) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))])])+,(InfixDecl (44,1) Infix 4 [(Ident "isSameSet" 0),(Ident "isSubsetOf" 0)])+,(InfixDecl (45,1) Infix 1 [(Ident "is" 0),(Ident "isAlways" 0),(Ident "isEventually" 0),(Ident "-=-" 0),(Ident "#" 0),(Ident "<~>" 0),(Ident "~>" 0),(Ident "<~" 0),(Ident "trivial" 0)])+,(InfixDecl (46,1) InfixR 0 [(Ident "==>" 0)])+,(TypeSig (55,1) [(Ident "notest" 0)] (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []))+,(FunctionDecl (56,1) (Ident "notest" 0) [(Equation (56,1) (FunLhs (Ident "notest" 0) []) (SimpleRhs (56,10) (Apply (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Test" 0))) (Constructor (QualIdent (Just "EasyCheck") (Ident "Undef" 0)))) (List [])) (List [])) []))])+,(TypeSig (58,1) [(Ident "result" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Result" 0)) [])))+,(FunctionDecl (59,1) (Ident "result" 0) [(Equation (59,1) (FunLhs (Ident "result" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Test" 0)) [(VariablePattern (Ident "r" 4)),(VariablePattern (Ident "_" 5)),(VariablePattern (Ident "_" 6))]))]) (SimpleRhs (59,23) (Variable (QualIdent Nothing (Ident "r" 4))) []))])+,(TypeSig (61,1) [(Ident "setResult" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Result" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []))))+,(FunctionDecl (62,1) (Ident "setResult" 0) [(Equation (62,1) (FunLhs (Ident "setResult" 0) [(VariablePattern (Ident "res" 8)),(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Test" 0)) [(VariablePattern (Ident "_" 9)),(VariablePattern (Ident "s" 8)),(VariablePattern (Ident "a" 8))]))]) (SimpleRhs (62,30) (Apply (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Test" 0))) (Variable (QualIdent Nothing (Ident "res" 8)))) (Variable (QualIdent Nothing (Ident "a" 8)))) (Variable (QualIdent Nothing (Ident "s" 8)))) []))])+,(TypeSig (64,1) [(Ident "args" 0),(Ident "stamp" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (65,1) (Ident "args" 0) [(Equation (65,1) (FunLhs (Ident "args" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Test" 0)) [(VariablePattern (Ident "_" 12)),(VariablePattern (Ident "a" 11)),(VariablePattern (Ident "_" 13))]))]) (SimpleRhs (65,22) (Variable (QualIdent Nothing (Ident "a" 11))) []))])+,(FunctionDecl (66,1) (Ident "stamp" 0) [(Equation (66,1) (FunLhs (Ident "stamp" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Test" 0)) [(VariablePattern (Ident "_" 16)),(VariablePattern (Ident "_" 17)),(VariablePattern (Ident "s" 15))]))]) (SimpleRhs (66,22) (Variable (QualIdent Nothing (Ident "s" 15))) []))])+,(TypeSig (68,1) [(Ident "updArgs" 0),(Ident "updStamp" 0)] (ArrowType (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Test" 0)) []))))+,(FunctionDecl (69,1) (Ident "updArgs" 0) [(Equation (69,1) (FunLhs (Ident "updArgs" 0) [(VariablePattern (Ident "upd" 19)),(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Test" 0)) [(VariablePattern (Ident "r" 19)),(VariablePattern (Ident "a" 19)),(VariablePattern (Ident "s" 19))]))]) (SimpleRhs (69,29) (Apply (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Test" 0))) (Variable (QualIdent Nothing (Ident "r" 19)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 19))) (Variable (QualIdent Nothing (Ident "a" 19)))))) (Variable (QualIdent Nothing (Ident "s" 19)))) []))])+,(FunctionDecl (70,1) (Ident "updStamp" 0) [(Equation (70,1) (FunLhs (Ident "updStamp" 0) [(VariablePattern (Ident "upd" 21)),(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Test" 0)) [(VariablePattern (Ident "r" 21)),(VariablePattern (Ident "a" 21)),(VariablePattern (Ident "s" 21))]))]) (SimpleRhs (70,29) (Apply (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Test" 0))) (Variable (QualIdent Nothing (Ident "r" 21)))) (Variable (QualIdent Nothing (Ident "a" 21)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 21))) (Variable (QualIdent Nothing (Ident "s" 21)))))) []))])+,(TypeSig (75,1) [(Ident "test" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (76,1) (Ident "test" 0) [(Equation (76,1) (FunLhs (Ident "test" 0) [(VariablePattern (Ident "x" 23)),(VariablePattern (Ident "f" 23))]) (SimpleRhs (76,12) (List [(Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "setResult" 0))) (Variable (QualIdent Nothing (Ident "res" 24)))) (Variable (QualIdent (Just "EasyCheck") (Ident "notest" 0))))]) [(PatternDecl (78,3) (VariablePattern (Ident "xs" 24)) (SimpleRhs (78,9) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "valuesOf" 0))) (Variable (QualIdent Nothing (Ident "x" 23)))) [])),(PatternDecl (79,3) (VariablePattern (Ident "res" 24)) (SimpleRhs (79,9) (Case (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "valuesOf" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 23))) (Variable (QualIdent Nothing (Ident "xs" 24)))))) [(Alt (80,11) (ListPattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) [])]) (SimpleRhs (80,22) (Constructor (QualIdent (Just "EasyCheck") (Ident "Ok" 0))) [])),(Alt (81,11) (ListPattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) [])]) (SimpleRhs (81,22) (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Falsified" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "xs" 24)))))) [])),(Alt (82,11) (VariablePattern (Ident "bs" 31)) (SimpleRhs (82,22) (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Ambigious" 0))) (Variable (QualIdent Nothing (Ident "bs" 31)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) (Variable (QualIdent Nothing (Ident "xs" 24)))))) []))]) []))]))])+,(TypeSig (86,1) [(Ident "is" 0),(Ident "isAlways" 0),(Ident "isEventually" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (87,1) (Ident "is" 0) [(Equation (87,1) (FunLhs (Ident "is" 0) [(VariablePattern (Ident "x" 33)),(VariablePattern (Ident "f" 33))]) (SimpleRhs (87,10) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 33)))) (Paren (Lambda [(VariablePattern (Ident "xs" 35))] (Case (Variable (QualIdent Nothing (Ident "xs" 35))) [(Alt (87,36) (ListPattern [(VariablePattern (Ident "y" 36))]) (SimpleRhs (87,43) (Apply (Variable (QualIdent Nothing (Ident "f" 33))) (Variable (QualIdent Nothing (Ident "y" 36)))) [])),(Alt (87,48) (VariablePattern (Ident "_" 39)) (SimpleRhs (87,53) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])))) []))])+,(FunctionDecl (88,1) (Ident "isAlways" 0) [(Equation (88,1) (FunLhs (Ident "isAlways" 0) [(VariablePattern (Ident "x" 41))]) (SimpleRhs (88,15) (InfixApply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 41)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "all" 0)))) []))])+,(FunctionDecl (89,1) (Ident "isEventually" 0) [(Equation (89,1) (FunLhs (Ident "isEventually" 0) [(VariablePattern (Ident "x" 43))]) (SimpleRhs (89,18) (InfixApply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 43)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "any" 0)))) []))])+,(TypeSig (92,1) [(Ident "prop" 0),(Ident "uniquely" 0),(Ident "always" 0),(Ident "eventually" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))+,(FunctionDecl (93,1) (Ident "prop" 0) [(Equation (93,1) (FunLhs (Ident "prop" 0) []) (SimpleRhs (93,14) (Variable (QualIdent (Just "EasyCheck") (Ident "uniquely" 0))) []))])+,(FunctionDecl (94,1) (Ident "uniquely" 0) [(Equation (94,1) (FunLhs (Ident "uniquely" 0) []) (SimpleRhs (94,14) (RightSection (InfixOp (QualIdent (Just "EasyCheck") (Ident "is" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) []))])+,(FunctionDecl (95,1) (Ident "always" 0) [(Equation (95,1) (FunLhs (Ident "always" 0) []) (SimpleRhs (95,14) (RightSection (InfixOp (QualIdent (Just "EasyCheck") (Ident "isAlways" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) []))])+,(FunctionDecl (96,1) (Ident "eventually" 0) [(Equation (96,1) (FunLhs (Ident "eventually" 0) []) (SimpleRhs (96,14) (RightSection (InfixOp (QualIdent (Just "EasyCheck") (Ident "isEventually" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) []))])+,(TypeSig (99,1) [(Ident "failing" 0),(Ident "successful" 0),(Ident "deterministic" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))+,(FunctionDecl (100,1) (Ident "failing" 0) [(Equation (100,1) (FunLhs (Ident "failing" 0) [(VariablePattern (Ident "x" 53))]) (SimpleRhs (100,13) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 53)))) (Variable (QualIdent (Just "Prelude") (Ident "null" 0)))) []))])+,(FunctionDecl (101,1) (Ident "successful" 0) [(Equation (101,1) (FunLhs (Ident "successful" 0) [(VariablePattern (Ident "x" 55))]) (SimpleRhs (101,16) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 55)))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "null" 0)))))) []))])+,(FunctionDecl (102,1) (Ident "deterministic" 0) [(Equation (102,1) (FunLhs (Ident "deterministic" 0) [(VariablePattern (Ident "x" 57))]) (SimpleRhs (102,19) (InfixApply (Variable (QualIdent Nothing (Ident "x" 57))) (InfixOp (QualIdent (Just "EasyCheck") (Ident "is" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))))) []))])+,(TypeSig (105,1) [(Ident "#" 0)] (ArrowType (VariableType (Ident "_" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (106,1) (Ident "#" 0) [(Equation (106,1) (OpLhs (VariablePattern (Ident "x" 59)) (Ident "#" 0) (VariablePattern (Ident "n" 59))) (SimpleRhs (106,9) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 59)))) (Paren (InfixApply (LeftSection (Variable (QualIdent Nothing (Ident "n" 59))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "List") (Ident "nub" 0))))))) []))])+,(TypeSig (110,1) [(Ident "-=-" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (111,1) (Ident "-=-" 0) [(Equation (111,1) (OpLhs (VariablePattern (Ident "x" 61)) (Ident "-=-" 0) (VariablePattern (Ident "y" 61))) (SimpleRhs (111,11) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "x" 61))),(Variable (QualIdent Nothing (Ident "y" 61)))]) (InfixOp (QualIdent (Just "EasyCheck") (Ident "is" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "uncurry" 0))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0))))) []))])+,(TypeSig (114,1) [(Ident "<~>" 0),(Ident "~>" 0),(Ident "<~" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (115,1) (Ident "<~>" 0) [(Equation (115,1) (OpLhs (VariablePattern (Ident "x" 63)) (Ident "<~>" 0) (VariablePattern (Ident "y" 63))) (SimpleRhs (115,11) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 63)))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "isSameSet" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "valuesOf" 0))) (Variable (QualIdent Nothing (Ident "y" 63)))))))) []))])+,(FunctionDecl (116,1) (Ident "~>" 0) [(Equation (116,1) (OpLhs (VariablePattern (Ident "x" 65)) (Ident "~>" 0) (VariablePattern (Ident "y" 65))) (SimpleRhs (116,11) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 65)))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "isSubsetOf" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "valuesOf" 0))) (Variable (QualIdent Nothing (Ident "y" 65)))))))) []))])+,(FunctionDecl (117,1) (Ident "<~" 0) [(Equation (117,1) (OpLhs (VariablePattern (Ident "x" 67)) (Ident "<~" 0) (VariablePattern (Ident "y" 67))) (SimpleRhs (117,11) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "test" 0))) (Variable (QualIdent Nothing (Ident "x" 67)))) (RightSection (InfixOp (QualIdent (Just "EasyCheck") (Ident "isSubsetOf" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "valuesOf" 0))) (Variable (QualIdent Nothing (Ident "y" 67))))))) []))])+,(TypeSig (119,1) [(Ident "isSameSet" 0),(Ident "isSubsetOf" 0),(Ident "subset" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (120,1) (Ident "isSameSet" 0) [(Equation (120,1) (OpLhs (VariablePattern (Ident "xs" 69)) (Ident "isSameSet" 0) (VariablePattern (Ident "ys" 69))) (SimpleRhs (120,21) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "xs'" 70))) (InfixOp (QualIdent (Just "EasyCheck") (Ident "subset" 0))) (Variable (QualIdent Nothing (Ident "ys'" 70)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "ys'" 70))) (InfixOp (QualIdent (Just "EasyCheck") (Ident "subset" 0))) (Variable (QualIdent Nothing (Ident "xs'" 70))))) [(PatternDecl (121,8) (VariablePattern (Ident "xs'" 70)) (SimpleRhs (121,14) (Apply (Variable (QualIdent (Just "List") (Ident "nub" 0))) (Variable (QualIdent Nothing (Ident "xs" 69)))) [])),(PatternDecl (121,22) (VariablePattern (Ident "ys'" 70)) (SimpleRhs (121,28) (Apply (Variable (QualIdent (Just "List") (Ident "nub" 0))) (Variable (QualIdent Nothing (Ident "ys" 69)))) []))]))])+,(FunctionDecl (122,1) (Ident "isSubsetOf" 0) [(Equation (122,1) (OpLhs (VariablePattern (Ident "xs" 73)) (Ident "isSubsetOf" 0) (VariablePattern (Ident "ys" 73))) (SimpleRhs (122,22) (InfixApply (Apply (Variable (QualIdent (Just "List") (Ident "nub" 0))) (Variable (QualIdent Nothing (Ident "xs" 73)))) (InfixOp (QualIdent (Just "EasyCheck") (Ident "subset" 0))) (Variable (QualIdent Nothing (Ident "ys" 73)))) []))])+,(FunctionDecl (123,1) (Ident "subset" 0) [(Equation (123,1) (OpLhs (VariablePattern (Ident "xs" 75)) (Ident "subset" 0) (VariablePattern (Ident "ys" 75))) (SimpleRhs (123,18) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "xs" 75))) (InfixOp (QualIdent (Just "List") (Ident "\\\\" 0))) (Variable (QualIdent Nothing (Ident "ys" 75)))))) []))])+,(TypeSig (126,1) [(Ident "==>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (127,1) (Ident "==>" 0) [(Equation (127,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) []) (Ident "==>" 0) (VariablePattern (Ident "p" 77))) (SimpleRhs (127,15) (Variable (QualIdent Nothing (Ident "p" 77))) [])),(Equation (128,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) []) (Ident "==>" 0) (VariablePattern (Ident "_" 80))) (SimpleRhs (128,15) (List [(Variable (QualIdent (Just "EasyCheck") (Ident "notest" 0)))]) []))])+,(TypeSig (130,1) [(Ident "forAll" 0)] (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))))+,(FunctionDecl (131,1) (Ident "forAll" 0) [(Equation (131,1) (FunLhs (Ident "forAll" 0) [(VariablePattern (Ident "c" 82)),(VariablePattern (Ident "x" 82)),(VariablePattern (Ident "f" 82))]) (SimpleRhs (131,16) (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "forAllValues" 0))) (Variable (QualIdent Nothing (Ident "c" 82)))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "valuesOf" 0))) (Variable (QualIdent Nothing (Ident "x" 82)))))) (Variable (QualIdent Nothing (Ident "f" 82)))) []))])+,(TypeSig (133,1) [(Ident "forAllValues" 0)] (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))))+,(FunctionDecl (134,1) (Ident "forAllValues" 0) [(Equation (134,1) (FunLhs (Ident "forAllValues" 0) [(VariablePattern (Ident "c" 84)),(VariablePattern (Ident "xs" 84)),(VariablePattern (Ident "f" 84))]) (SimpleRhs (135,5) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "diagonal" 0))) (ListCompr (ListCompr (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "updArgs" 0))) (LeftSection (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "y" 86)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))))) (Variable (QualIdent Nothing (Ident "t" 87)))) [(StmtBind (VariablePattern (Ident "t" 87)) (Apply (Variable (QualIdent Nothing (Ident "c" 84))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 84))) (Variable (QualIdent Nothing (Ident "y" 86)))))))]) [(StmtBind (VariablePattern (Ident "y" 86)) (Variable (QualIdent Nothing (Ident "xs" 84))))])) []))])+,(TypeSig (138,1) [(Ident "for" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (139,1) (Ident "for" 0) [(Equation (139,1) (FunLhs (Ident "for" 0) []) (SimpleRhs (139,7) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "forAll" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) []))])+,(TypeSig (141,1) [(Ident "forValues" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (142,1) (Ident "forValues" 0) [(Equation (142,1) (FunLhs (Ident "forValues" 0) []) (SimpleRhs (142,13) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "forAllValues" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) []))])+,(TypeSig (147,1) [(Ident "label" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (148,1) (Ident "label" 0) [(Equation (148,1) (FunLhs (Ident "label" 0) []) (SimpleRhs (148,9) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "updStamp" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent Nothing (Ident ":" 0))))) []))])+,(TypeSig (151,1) [(Ident "classify" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))))+,(FunctionDecl (152,1) (Ident "classify" 0) [(Equation (152,1) (FunLhs (Ident "classify" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) []),(VariablePattern (Ident "name" 94))]) (SimpleRhs (152,23) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "label" 0))) (Variable (QualIdent Nothing (Ident "name" 94)))) [])),(Equation (153,1) (FunLhs (Ident "classify" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) []),(VariablePattern (Ident "_" 97))]) (SimpleRhs (153,23) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))) []))])+,(TypeSig (156,1) [(Ident "trivial" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (157,1) (Ident "trivial" 0) [(Equation (157,1) (FunLhs (Ident "trivial" 0) []) (SimpleRhs (157,11) (RightSection (InfixOp (QualIdent (Just "EasyCheck") (Ident "classify" 0))) (Literal (String "trivial"))) []))])+,(TypeSig (160,1) [(Ident "collect" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (161,1) (Ident "collect" 0) [(Equation (161,1) (FunLhs (Ident "collect" 0) []) (SimpleRhs (161,11) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "label" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) []))])+,(TypeSig (164,1) [(Ident "collectAs" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))))+,(FunctionDecl (165,1) (Ident "collectAs" 0) [(Equation (165,1) (FunLhs (Ident "collectAs" 0) [(VariablePattern (Ident "name" 103))]) (SimpleRhs (165,18) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "label" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (LeftSection (Paren (InfixApply (Variable (QualIdent Nothing (Ident "name" 103))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ": ")))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0))))) []))])+,(TypeSig (171,1) [(Ident "maxTest" 0),(Ident "maxFail" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (172,1) (Ident "maxTest" 0) [(Equation (172,1) (FunLhs (Ident "maxTest" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Config" 0)) [(VariablePattern (Ident "n" 105)),(VariablePattern (Ident "_" 106)),(VariablePattern (Ident "_" 107))]))]) (SimpleRhs (172,26) (Variable (QualIdent Nothing (Ident "n" 105))) []))])+,(FunctionDecl (173,1) (Ident "maxFail" 0) [(Equation (173,1) (FunLhs (Ident "maxFail" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Config" 0)) [(VariablePattern (Ident "_" 110)),(VariablePattern (Ident "n" 109)),(VariablePattern (Ident "_" 111))]))]) (SimpleRhs (173,26) (Variable (QualIdent Nothing (Ident "n" 109))) []))])+,(TypeSig (175,1) [(Ident "every" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))))+,(FunctionDecl (176,1) (Ident "every" 0) [(Equation (176,1) (FunLhs (Ident "every" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Config" 0)) [(VariablePattern (Ident "_" 114)),(VariablePattern (Ident "_" 115)),(VariablePattern (Ident "f" 113))]))]) (SimpleRhs (176,24) (Variable (QualIdent Nothing (Ident "f" 113))) []))])+,(TypeSig (178,1) [(Ident "setEvery" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []))))+,(FunctionDecl (179,1) (Ident "setEvery" 0) [(Equation (179,1) (FunLhs (Ident "setEvery" 0) [(VariablePattern (Ident "f" 117)),(ParenPattern (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Config" 0)) [(VariablePattern (Ident "n" 117)),(VariablePattern (Ident "m" 117)),(VariablePattern (Ident "_" 118))]))]) (SimpleRhs (179,29) (Apply (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Config" 0))) (Variable (QualIdent Nothing (Ident "n" 117)))) (Variable (QualIdent Nothing (Ident "m" 117)))) (Variable (QualIdent Nothing (Ident "f" 117)))) []))])+,(TypeSig (181,1) [(Ident "easy" 0)] (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []))+,(FunctionDecl (182,1) (Ident "easy" 0) [(Equation (182,1) (FunLhs (Ident "easy" 0) []) (SimpleRhs (182,8) (Apply (Apply (Apply (Constructor (QualIdent (Just "EasyCheck") (Ident "Config" 0))) (Literal (Int (Ident "_" 122) 100))) (Literal (Int (Ident "_" 123) 1000))) (Paren (Lambda [(VariablePattern (Ident "n" 124)),(VariablePattern (Ident "_" 125))] (Let [(PatternDecl (183,22) (VariablePattern (Ident "s" 126)) (SimpleRhs (183,26) (InfixApply (Literal (Char ' ')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 124))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 128) 1)))))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "s" 126))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (ListCompr (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 131) 8))) [(StmtBind (VariablePattern (Ident "_" 130)) (Variable (QualIdent Nothing (Ident "s" 126))))])))))) []))])+,(TypeSig (185,1) [(Ident "verbose" 0)] (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []))+,(FunctionDecl (186,1) (Ident "verbose" 0) [(Equation (186,1) (FunLhs (Ident "verbose" 0) []) (SimpleRhs (186,11) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "setEvery" 0))) (Paren (Lambda [(VariablePattern (Ident "n" 134)),(VariablePattern (Ident "xs" 134))] (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 134)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ":\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Variable (QualIdent Nothing (Ident "xs" 134))))))))) (Variable (QualIdent (Just "EasyCheck") (Ident "easy" 0)))) []))])+,(TypeSig (189,1) [(Ident "easyCheck" 0),(Ident "verboseCheck" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (190,1) (Ident "easyCheck" 0) [(Equation (190,1) (FunLhs (Ident "easyCheck" 0) []) (SimpleRhs (190,16) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "check" 0))) (Variable (QualIdent (Just "EasyCheck") (Ident "easy" 0)))) []))])+,(FunctionDecl (191,1) (Ident "verboseCheck" 0) [(Equation (191,1) (FunLhs (Ident "verboseCheck" 0) []) (SimpleRhs (191,16) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "check" 0))) (Variable (QualIdent (Just "EasyCheck") (Ident "verbose" 0)))) []))])+,(TypeSig (193,1) [(Ident "suc" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))+,(FunctionDecl (194,1) (Ident "suc" 0) [(Equation (194,1) (FunLhs (Ident "suc" 0) [(VariablePattern (Ident "n" 139))]) (SimpleRhs (194,9) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "forAll" 0))) (Variable (QualIdent Nothing (Ident "n" 139)))) (Variable (QualIdent (Just "Prelude") (Ident "unknown" 0)))) []))])+,(TypeSig (196,1) [(Ident "easyCheck1" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (197,1) (Ident "easyCheck1" 0) [(Equation (197,1) (FunLhs (Ident "easyCheck1" 0) []) (SimpleRhs (197,14) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "easyCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))) []))])+,(TypeSig (199,1) [(Ident "easyCheck2" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (200,1) (Ident "easyCheck2" 0) [(Equation (200,1) (FunLhs (Ident "easyCheck2" 0) []) (SimpleRhs (200,14) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "easyCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))) []))])+,(TypeSig (202,1) [(Ident "easyCheck3" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (203,1) (Ident "easyCheck3" 0) [(Equation (203,1) (FunLhs (Ident "easyCheck3" 0) []) (SimpleRhs (203,14) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "easyCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))))) []))])+,(TypeSig (205,1) [(Ident "easyCheck4" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (206,1) (Ident "easyCheck4" 0) [(Equation (206,1) (FunLhs (Ident "easyCheck4" 0) []) (SimpleRhs (206,14) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "easyCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))))))) []))])+,(TypeSig (208,1) [(Ident "easyCheck5" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (209,1) (Ident "easyCheck5" 0) [(Equation (209,1) (FunLhs (Ident "easyCheck5" 0) []) (SimpleRhs (209,14) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "easyCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))))))))) []))])+,(TypeSig (211,1) [(Ident "verboseCheck1" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (212,1) (Ident "verboseCheck1" 0) [(Equation (212,1) (FunLhs (Ident "verboseCheck1" 0) []) (SimpleRhs (212,17) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "verboseCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))) []))])+,(TypeSig (214,1) [(Ident "verboseCheck2" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (215,1) (Ident "verboseCheck2" 0) [(Equation (215,1) (FunLhs (Ident "verboseCheck2" 0) []) (SimpleRhs (215,17) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "verboseCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))) []))])+,(TypeSig (217,1) [(Ident "verboseCheck3" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (218,1) (Ident "verboseCheck3" 0) [(Equation (218,1) (FunLhs (Ident "verboseCheck3" 0) []) (SimpleRhs (218,17) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "verboseCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))))) []))])+,(TypeSig (220,1) [(Ident "verboseCheck4" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []))))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (221,1) (Ident "verboseCheck4" 0) [(Equation (221,1) (FunLhs (Ident "verboseCheck4" 0) []) (SimpleRhs (221,17) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "verboseCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))))))) []))])+,(TypeSig (223,1) [(Ident "verboseCheck5" 0)] (ArrowType (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) [])))))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (224,1) (Ident "verboseCheck5" 0) [(Equation (224,1) (FunLhs (Ident "verboseCheck5" 0) []) (SimpleRhs (224,17) (InfixApply (Variable (QualIdent (Just "EasyCheck") (Ident "verboseCheck" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "suc" 0))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0))))))))))))) []))])+,(TypeSig (227,1) [(Ident "check" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Prop" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (228,1) (Ident "check" 0) [(Equation (228,1) (FunLhs (Ident "check" 0) [(VariablePattern (Ident "config" 161)),(VariablePattern (Ident "p" 161))]) (SimpleRhs (228,18) (Do [(StmtBind (VariablePattern (Ident "isOrBased" 163)) (Variable (QualIdent (Just "EasyCheck") (Ident "evalModeIsOrBased" 0))))] (IfThenElse (Variable (QualIdent Nothing (Ident "isOrBased" 163))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "tests" 0))) (Variable (QualIdent Nothing (Ident "config" 161)))) (Variable (QualIdent Nothing (Ident "p" 161)))) (Literal (Int (Ident "_" 164) 0))) (Literal (Int (Ident "_" 165) 0))) (List [])) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (List [(Literal (String "")),(Literal (String "EasyCheck must be run without suspending computations.")),(Literal (String "")),(Literal (String "Please")),(Literal (String "")),(Literal (String " - type ':set or' at the command prompt in kicsi or")),(Literal (String " - put 'ChoiceMode=OrBased' in your ~/.kicsrc file")),(Literal (String "")),(Literal (String "to enable this mode for this session or for all sessions respectively."))]))))) []))])+,(TypeSig (238,1) [(Ident "tests" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Config" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Test" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))))))+,(FunctionDecl (239,1) (Ident "tests" 0) [(Equation (239,1) (FunLhs (Ident "tests" 0) [(VariablePattern (Ident "_" 167)),(ListPattern []),(VariablePattern (Ident "ntest" 166)),(VariablePattern (Ident "_" 168)),(VariablePattern (Ident "stamps" 166))]) (SimpleRhs (239,29) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "done" 0))) (Literal (String "Passed"))) (Variable (QualIdent Nothing (Ident "ntest" 166)))) (Variable (QualIdent Nothing (Ident "stamps" 166)))) [])),(Equation (240,1) (FunLhs (Ident "tests" 0) [(VariablePattern (Ident "config" 170)),(ParenPattern (InfixPattern (VariablePattern (Ident "t" 170)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ts" 170)))),(VariablePattern (Ident "ntest" 170)),(VariablePattern (Ident "nfail" 170)),(VariablePattern (Ident "stamps" 170))]) (GuardedRhs [(CondExpr (241,3) (InfixApply (Variable (QualIdent Nothing (Ident "ntest" 170))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "maxTest" 0))) (Variable (QualIdent Nothing (Ident "config" 170))))) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "done" 0))) (Literal (String "OK, passed"))) (Variable (QualIdent Nothing (Ident "ntest" 170)))) (Variable (QualIdent Nothing (Ident "stamps" 170))))),(CondExpr (242,3) (InfixApply (Variable (QualIdent Nothing (Ident "nfail" 170))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "maxFail" 0))) (Variable (QualIdent Nothing (Ident "config" 170))))) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "done" 0))) (Literal (String "Arguments exhausted after"))) (Variable (QualIdent Nothing (Ident "ntest" 170)))) (Variable (QualIdent Nothing (Ident "stamps" 170))))),(CondExpr (243,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Do [(StmtExpr (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "every" 0))) (Variable (QualIdent Nothing (Ident "config" 170)))) (Variable (QualIdent Nothing (Ident "ntest" 170)))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "args" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))))))))] (Case (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "result" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))) [(Alt (246,9) (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Undef" 0)) []) (SimpleRhs (246,18) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "tests" 0))) (Variable (QualIdent Nothing (Ident "config" 170)))) (Variable (QualIdent Nothing (Ident "ts" 170)))) (Variable (QualIdent Nothing (Ident "ntest" 170)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "nfail" 170))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 174) 1))))) (Variable (QualIdent Nothing (Ident "stamps" 170)))) [])),(Alt (247,9) (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Ok" 0)) []) (SimpleRhs (247,18) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "tests" 0))) (Variable (QualIdent Nothing (Ident "config" 170)))) (Variable (QualIdent Nothing (Ident "ts" 170)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ntest" 170))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 177) 1))))) (Variable (QualIdent Nothing (Ident "nfail" 170)))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "stamp" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "stamps" 170)))))) [])),(Alt (248,9) (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Falsified" 0)) [(VariablePattern (Ident "results" 178))]) (SimpleRhs (248,30) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Literal (String "Falsified by ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "nth" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ntest" 170))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 180) 1))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " test")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Paren (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "args" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))))) (Literal (String ".")) (Literal (String ".\nArguments:")))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "args" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "results" 178)))) (Literal (String "no result\n")) (InfixApply (Literal (String "Results:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Variable (QualIdent Nothing (Ident "results" 178))))))))))))) [])),(Alt (254,9) (ConstructorPattern (QualIdent (Just "EasyCheck") (Ident "Ambigious" 0)) [(VariablePattern (Ident "bs" 181)),(VariablePattern (Ident "results" 181))]) (SimpleRhs (254,33) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Literal (String "Ambigious property yields ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "bs" 181)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " for ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "nth" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ntest" 170))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 183) 1))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " test")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Paren (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "args" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))))) (Literal (String ".")) (Literal (String ".\nArguments:")))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Paren (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "args" 0))) (Variable (QualIdent Nothing (Ident "t" 170)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "results" 181)))) (Literal (String "no result\n")) (InfixApply (Literal (String "Results:\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Variable (QualIdent Nothing (Ident "results" 181))))))))))))))) []))])))] []))])+,(TypeSig (262,1) [(Ident "nth" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (263,1) (Ident "nth" 0) [(Equation (263,1) (FunLhs (Ident "nth" 0) [(VariablePattern (Ident "n" 184))]) (SimpleRhs (263,9) (Case (Variable (QualIdent Nothing (Ident "n" 184))) [(Alt (263,19) (LiteralPattern (Int (Ident "_" 187) 1)) (SimpleRhs (263,24) (Literal (String "first")) [])),(Alt (263,33) (LiteralPattern (Int (Ident "_" 190) 2)) (SimpleRhs (263,38) (Literal (String "second")) [])),(Alt (263,48) (LiteralPattern (Int (Ident "_" 193) 3)) (SimpleRhs (263,53) (Literal (String "third")) [])),(Alt (263,62) (VariablePattern (Ident "_" 196)) (SimpleRhs (263,67) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 184)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "th"))) []))]) []))])+,(TypeSig (265,1) [(Ident "done" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))))+,(FunctionDecl (266,1) (Ident "done" 0) [(Equation (266,1) (FunLhs (Ident "done" 0) [(VariablePattern (Ident "mesg" 198)),(VariablePattern (Ident "ntest" 198)),(VariablePattern (Ident "stamps" 198))]) (SimpleRhs (266,26) (Do [] (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "mesg" 198))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "ntest" 198)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " test")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "ntest" 198))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 221) 2))) (Literal (String "s")) (Literal (String "")))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "table" 199)))))))))) [(PatternDecl (270,3) (VariablePattern (Ident "table" 199)) (SimpleRhs (270,11) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "display" 199))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "entry" 199)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Sort") (Ident "mergeSort" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "leqPair" 0))) (Variable (QualIdent (Just "Prelude") (Ident "<=" 0)))) (Paren (Apply (Variable (QualIdent (Just "Sort") (Ident "leqList" 0))) (Variable (QualIdent (Just "Sort") (Ident "leqString" 0)))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "pairLength" 199)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent (Just "List") (Ident "group" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Sort") (Ident "mergeSort" 0))) (Paren (Apply (Variable (QualIdent (Just "Sort") (Ident "leqList" 0))) (Variable (QualIdent (Just "Sort") (Ident "leqString" 0)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "null" 0))))))))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Variable (QualIdent Nothing (Ident "stamps" 198)))) [])),(FunctionDecl (280,3) (Ident "display" 199) [(Equation (280,3) (FunLhs (Ident "display" 199) [(ListPattern [])]) (SimpleRhs (280,24) (Literal (String ".\n")) [])),(Equation (281,3) (FunLhs (Ident "display" 199) [(ListPattern [(VariablePattern (Ident "x" 203))])]) (SimpleRhs (281,24) (InfixApply (Literal (String " - ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 203))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ".\n")))) [])),(Equation (282,3) (FunLhs (Ident "display" 199) [(AsPattern (Ident "xs" 205) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 206)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "_" 207)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 208))))))]) (SimpleRhs (282,24) (InfixApply (Literal (String ".\n")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String ".")))) (Variable (QualIdent Nothing (Ident "xs" 205))))))) []))]),(FunctionDecl (284,3) (Ident "pairLength" 199) [(Equation (284,3) (FunLhs (Ident "pairLength" 199) [(AsPattern (Ident "xss" 210) (ParenPattern (InfixPattern (VariablePattern (Ident "xs" 210)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 211)))))]) (SimpleRhs (284,27) (Tuple [(Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "xss" 210)))),(Variable (QualIdent Nothing (Ident "xs" 210)))]) []))]),(FunctionDecl (286,3) (Ident "entry" 199) [(Equation (286,3) (FunLhs (Ident "entry" 199) [(TuplePattern [(VariablePattern (Ident "n" 213)),(VariablePattern (Ident "xs" 213))])]) (SimpleRhs (286,18) (InfixApply (Apply (Apply (Variable (QualIdent Nothing (Ident "percentage" 199))) (Variable (QualIdent Nothing (Ident "n" 213)))) (Variable (QualIdent Nothing (Ident "ntest" 198)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Literal (String ", "))) (Variable (QualIdent Nothing (Ident "xs" 213)))))))) []))]),(FunctionDecl (288,3) (Ident "percentage" 199) [(Equation (288,3) (FunLhs (Ident "percentage" 199) [(VariablePattern (Ident "n" 215)),(VariablePattern (Ident "m" 215))]) (SimpleRhs (288,20) (Let [(PatternDecl (288,24) (VariablePattern (Ident "s" 217)) (SimpleRhs (288,28) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Paren (InfixApply (Paren (InfixApply (Literal (Int (Ident "_" 219) 100)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "n" 215))))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Variable (QualIdent Nothing (Ident "m" 215)))))) []))] (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Paren (InfixApply (Literal (Int (Ident "_" 220) 3)) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 217))))))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 217))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "%"))))) []))])]))])+,(TypeSig (293,1) [(Ident "leqPair" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))))+,(FunctionDecl (294,1) (Ident "leqPair" 0) [(Equation (294,1) (FunLhs (Ident "leqPair" 0) [(VariablePattern (Ident "leqa" 222)),(VariablePattern (Ident "leqb" 222)),(TuplePattern [(VariablePattern (Ident "x1" 222)),(VariablePattern (Ident "y1" 222))]),(TuplePattern [(VariablePattern (Ident "x2" 222)),(VariablePattern (Ident "y2" 222))])]) (GuardedRhs [(CondExpr (295,3) (InfixApply (Variable (QualIdent Nothing (Ident "x1" 222))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "x2" 222)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "leqb" 222))) (Variable (QualIdent Nothing (Ident "y1" 222)))) (Variable (QualIdent Nothing (Ident "y2" 222))))),(CondExpr (296,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "leqa" 222))) (Variable (QualIdent Nothing (Ident "x1" 222)))) (Variable (QualIdent Nothing (Ident "x2" 222)))))] []))])+,(TypeSig (298,1) [(Ident "leList" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))))+,(FunctionDecl (299,1) (Ident "leList" 0) [(Equation (299,1) (FunLhs (Ident "leList" 0) [(VariablePattern (Ident "_" 225)),(ListPattern []),(ListPattern [])]) (SimpleRhs (299,27) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (300,1) (FunLhs (Ident "leList" 0) [(VariablePattern (Ident "_" 228)),(ListPattern []),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 229)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 230))))]) (SimpleRhs (300,27) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (301,1) (FunLhs (Ident "leList" 0) [(VariablePattern (Ident "_" 233)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 234)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 235)))),(ListPattern [])]) (SimpleRhs (301,27) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (302,1) (FunLhs (Ident "leList" 0) [(VariablePattern (Ident "le" 237)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 237)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 237)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 237)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 237))))]) (SimpleRhs (302,27) (InfixApply (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 237))) (Variable (QualIdent Nothing (Ident "x" 237)))) (Variable (QualIdent Nothing (Ident "y" 237)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "x" 237))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "y" 237)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "leList" 0))) (Variable (QualIdent Nothing (Ident "le" 237)))) (Variable (QualIdent Nothing (Ident "xs" 237)))) (Variable (QualIdent Nothing (Ident "ys" 237)))))) []))])+,(TypeSig (304,1) [(Ident "valuesOf" 0)] (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (305,1) (Ident "valuesOf" 0) [(Equation (305,1) (FunLhs (Ident "valuesOf" 0) []) (SimpleRhs (306,3) (InfixApply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "rndLevelDiagFlat" 0))) (Literal (Int (Ident "_" 241) 3))) (Literal (Int (Ident "_" 242) 2008))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent (Just "Meta") (Ident "searchTree" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (LeftSection (Variable (QualIdent (Just "Prelude") (Ident "id" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0)))))) []))])+,(TypeSig (315,1) [(Ident "rndLevelDiag" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (316,1) (Ident "rndLevelDiag" 0) [(Equation (316,1) (FunLhs (Ident "rndLevelDiag" 0) [(VariablePattern (Ident "rnd" 243)),(VariablePattern (Ident "t" 243))]) (SimpleRhs (317,3) (ListCompr (Variable (QualIdent Nothing (Ident "x" 245))) [(StmtBind (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Value" 0)) [(VariablePattern (Ident "x" 245))]) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "diagonal" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "rndLevels" 0))) (Variable (QualIdent Nothing (Ident "rnd" 243)))) (List [(Variable (QualIdent Nothing (Ident "t" 243)))])))))]) []))])+,(TypeSig (319,1) [(Ident "rndLevels" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))])) (ListType (ListType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]))))))+,(FunctionDecl (320,1) (Ident "rndLevels" 0) [(Equation (320,1) (FunLhs (Ident "rndLevels" 0) [(VariablePattern (Ident "rnd" 246)),(VariablePattern (Ident "ts" 246))]) (SimpleRhs (321,3) (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "ts" 246)))) (List []) (InfixApply (Variable (QualIdent Nothing (Ident "ts" 246))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "rndLevels" 0))) (Variable (QualIdent Nothing (Ident "r" 247)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zipWith" 0))) (Variable (QualIdent (Just "EasyCheck") (Ident "shuffle" 0)))) (Variable (QualIdent Nothing (Ident "rs" 247)))) (ListCompr (Variable (QualIdent Nothing (Ident "us" 249))) [(StmtBind (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Choice" 0)) [(VariablePattern (Ident "us" 249))]) (Variable (QualIdent Nothing (Ident "ts" 246))))])))))))) [(PatternDecl (324,3) (InfixPattern (VariablePattern (Ident "r" 247)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "rs" 247))) (SimpleRhs (324,10) (Apply (Variable (QualIdent (Just "RandomExternal") (Ident "split" 0))) (Variable (QualIdent Nothing (Ident "rnd" 246)))) []))]))])+,(TypeSig (328,1) [(Ident "rndLevelDiagFlat" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))))+,(FunctionDecl (329,1) (Ident "rndLevelDiagFlat" 0) [(Equation (329,1) (FunLhs (Ident "rndLevelDiagFlat" 0) [(VariablePattern (Ident "d" 250)),(VariablePattern (Ident "rnd" 250)),(VariablePattern (Ident "t" 250))]) (SimpleRhs (330,3) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "transpose" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zipWith" 0))) (Variable (QualIdent (Just "EasyCheck") (Ident "rndLevelDiag" 0)))) (Variable (QualIdent Nothing (Ident "rs" 251)))) (Paren (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "flatRep" 0))) (Variable (QualIdent Nothing (Ident "d" 250)))) (List [(Variable (QualIdent Nothing (Ident "t" 250)))]))))))) [(PatternDecl (332,3) (VariablePattern (Ident "rs" 251)) (SimpleRhs (332,8) (Apply (Variable (QualIdent (Just "RandomExternal") (Ident "split" 0))) (Variable (QualIdent Nothing (Ident "rnd" 250)))) []))]))])+,(TypeSig (334,1) [(Ident "flat" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (335,1) (Ident "flat" 0) [(Equation (335,1) (FunLhs (Ident "flat" 0) [(VariablePattern (Ident "t" 253))]) (SimpleRhs (335,10) (Case (Variable (QualIdent Nothing (Ident "t" 253))) [(Alt (336,12) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Value" 0)) [(VariablePattern (Ident "_" 256))]) (SimpleRhs (336,23) (List [(Variable (QualIdent Nothing (Ident "t" 253)))]) [])),(Alt (337,12) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Choice" 0)) [(VariablePattern (Ident "ts" 258))]) (SimpleRhs (337,25) (Variable (QualIdent Nothing (Ident "ts" 258))) [])),(Alt (338,12) (VariablePattern (Ident "_" 261)) (SimpleRhs (338,17) (List []) []))]) []))])+,(TypeSig (340,1) [(Ident "flatRep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))])) (ListType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (341,1) (Ident "flatRep" 0) [(Equation (341,1) (FunLhs (Ident "flatRep" 0) [(VariablePattern (Ident "n" 263)),(VariablePattern (Ident "ts" 263))]) (GuardedRhs [(CondExpr (341,14) (InfixApply (Variable (QualIdent Nothing (Ident "n" 263))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 265) 0))) (Variable (QualIdent Nothing (Ident "ts" 263)))),(CondExpr (342,14) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "flatRep" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 263))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 266) 1))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Variable (QualIdent (Just "EasyCheck") (Ident "flat" 0)))) (Variable (QualIdent Nothing (Ident "ts" 263)))))))] []))])+,(TypeSig (352,1) [(Ident "diagonal" 0)] (ArrowType (ListType (ListType (VariableType (Ident "a" 0)))) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (353,1) (Ident "diagonal" 0) [(Equation (353,1) (FunLhs (Ident "diagonal" 0) []) (SimpleRhs (353,12) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent Nothing (Ident "diags" 268)))) (List []))) [(FunctionDecl (355,3) (Ident "diags" 268) [(Equation (355,3) (FunLhs (Ident "diags" 268) [(ListPattern []),(VariablePattern (Ident "ys" 269))]) (SimpleRhs (355,21) (Variable (QualIdent Nothing (Ident "ys" 269))) [])),(Equation (356,3) (FunLhs (Ident "diags" 268) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 271)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 271)))),(VariablePattern (Ident "ys" 271))]) (SimpleRhs (356,21) (InfixApply (List [(Variable (QualIdent Nothing (Ident "x" 271)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "merge" 268))) (Variable (QualIdent Nothing (Ident "xs" 271)))) (Variable (QualIdent Nothing (Ident "ys" 271))))) []))]),(FunctionDecl (358,3) (Ident "merge" 268) [(Equation (358,3) (FunLhs (Ident "merge" 268) [(ListPattern []),(VariablePattern (Ident "ys" 273))]) (SimpleRhs (358,27) (Variable (QualIdent Nothing (Ident "ys" 273))) [])),(Equation (359,3) (FunLhs (Ident "merge" 268) [(AsPattern (Ident "xs" 275) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 276)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 277))))),(ListPattern [])]) (SimpleRhs (359,27) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (RightSection (InfixConstr (QualIdent Nothing (Ident ":" 0))) (List []))) (Variable (QualIdent Nothing (Ident "xs" 275)))) [])),(Equation (360,3) (FunLhs (Ident "merge" 268) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 279)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 279)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 279)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 279))))]) (SimpleRhs (360,27) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 279))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "y" 279))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "merge" 268))) (Variable (QualIdent Nothing (Ident "xs" 279)))) (Variable (QualIdent Nothing (Ident "ys" 279))))) []))])]))])+,(TypeSig (369,1) [(Ident "shuffle" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (370,1) (Ident "shuffle" 0) [(Equation (370,1) (FunLhs (Ident "shuffle" 0) [(VariablePattern (Ident "rnd" 281)),(VariablePattern (Ident "l" 281))]) (SimpleRhs (370,17) (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "shuffleWithLen" 0))) (Paren (Apply (Variable (QualIdent (Just "RandomExternal") (Ident "nextInt" 0))) (Variable (QualIdent Nothing (Ident "rnd" 281)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "l" 281)))))) (Variable (QualIdent Nothing (Ident "l" 281)))) []))])+,(TypeSig (372,1) [(Ident "shuffleWithLen" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))))+,(FunctionDecl (373,1) (Ident "shuffleWithLen" 0) [(Equation (373,1) (FunLhs (Ident "shuffleWithLen" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "r" 283)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "rs" 283)))),(VariablePattern (Ident "len" 283)),(VariablePattern (Ident "xs" 283))]) (GuardedRhs [(CondExpr (374,3) (InfixApply (Variable (QualIdent Nothing (Ident "len" 283))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 286) 0))) (List [])),(CondExpr (375,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "z" 284))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "shuffleWithLen" 0))) (Variable (QualIdent Nothing (Ident "rs" 283)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "len" 283))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 287) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ys" 284))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "zs" 284))))))))] [(PatternDecl (377,3) (TuplePattern [(VariablePattern (Ident "ys" 284)),(InfixPattern (VariablePattern (Ident "z" 284)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "zs" 284)))]) (SimpleRhs (377,15) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "splitAt" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Integer") (Ident "abs" 0))) (Variable (QualIdent Nothing (Ident "r" 283)))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent Nothing (Ident "len" 283)))))) (Variable (QualIdent Nothing (Ident "xs" 283)))) []))]))])+,(TypeSig (380,1) [(Ident "transpose" 0)] (ArrowType (ListType (ListType (VariableType (Ident "a" 0)))) (ListType (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (381,1) (Ident "transpose" 0) [(Equation (381,1) (FunLhs (Ident "transpose" 0) [(ListPattern [])]) (SimpleRhs (381,16) (List []) [])),(Equation (382,1) (FunLhs (Ident "transpose" 0) [(ParenPattern (InfixPattern (ListPattern []) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xss" 290))))]) (SimpleRhs (382,24) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "transpose" 0))) (Variable (QualIdent Nothing (Ident "xss" 290)))) [])),(Equation (383,1) (FunLhs (Ident "transpose" 0) [(ParenPattern (InfixPattern (ParenPattern (InfixPattern (VariablePattern (Ident "x" 292)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 292)))) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xss" 292))))]) (SimpleRhs (384,5) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 292))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (ListCompr (Variable (QualIdent Nothing (Ident "h" 294))) [(StmtBind (ParenPattern (InfixPattern (VariablePattern (Ident "h" 294)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 295)))) (Variable (QualIdent Nothing (Ident "xss" 292))))]))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "EasyCheck") (Ident "transpose" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "xs" 292))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (ListCompr (Variable (QualIdent Nothing (Ident "t" 296))) [(StmtBind (ParenPattern (InfixPattern (VariablePattern (Ident "_" 297)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "t" 296)))) (Variable (QualIdent Nothing (Ident "xss" 292))))]))))) []))])+,(TypeSig (386,1) [(Ident "evalModeIsOrBased" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]))+,(FunctionDecl (387,1) (Ident "evalModeIsOrBased" 0) [(Equation (387,1) (FunLhs (Ident "evalModeIsOrBased" 0) []) (SimpleRhs (387,21) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "getSearchTree" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "id" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent (Just "Prelude") (Ident "unknown" 0)))))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Value" 0))) (Tuple []))))) []))])+]
+ src/lib/Curry/Module/.curry/EasyCheck.efc view
@@ -0,0 +1,1 @@+Prog "EasyCheck" ["Integer","List","Meta","Prelude","RandomExternal","Sort","Read"] [TypeSyn ((Nothing,Nothing,"EasyCheck","Prop")) Public [] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]),Type ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) Private [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) 3 Private [TCons ((Nothing,Nothing,"EasyCheck","Result")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]],Type ((Nothing,Nothing,"EasyCheck","Result")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),"EasyCheck","Undef")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),"EasyCheck","Ok")) 0 Public [],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") [])),"EasyCheck","Falsified")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") []))),"EasyCheck","Ambigious")) 2 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]],Type ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) Private [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) 3 Private [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))]]] [Func ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),"EasyCheck","notest")) 0 Private (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (Rule [] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),"EasyCheck","Undef")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Result") [])),"EasyCheck","result")) 1 Public (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"EasyCheck","Result")) [])) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","setResult")) 2 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Result")) []) (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"EasyCheck","Test")) []))) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),1),(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","args")) 1 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","stamp")) 1 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","updArgs")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"EasyCheck","Test")) []))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),1),(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5))])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","updStamp")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"EasyCheck","Test")) []))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),1),(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Test") [])))),"EasyCheck","Test")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) 2 Public (FuncType (TVar 0) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 194]),3),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 208) (TVar 209)) (FuncType (TVar 208) (TVar 209))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 207) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 207])),"EasyCheck","valuesOf")) [],Var ((Just (TVar 0),1))])] (Let [((Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),4),Let [((Just (TVar 195),5),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 213) (TVar 214)) (FuncType (TVar 213) (TVar 214))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 210) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 210])),"EasyCheck","valuesOf")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 211) (TVar 212)) (FuncType (TVar 211) (TVar 212))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 194]),3))]])] (Case  Rigid (Var ((Just (TVar 195),5))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 232) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 232]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 232]))),"Prelude",":")) [(Just (TVar 196),6),(Just (TVar 197),7)]) (Case  Rigid (Var ((Just (TVar 196),6))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Var ((Just (TVar 197),7))) [Branch (Pattern ((Nothing,Just (TVar 218),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),"EasyCheck","Ok")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 219) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 219]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 219]))),"Prelude",":")) [(Just (TVar 199),8),(Just (TVar 200),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") []))),"EasyCheck","Ambigious")) [Var ((Just (TVar 195),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 216) (TVar 217)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 216]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 217]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 215) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 194]),3))]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Var ((Just (TVar 197),7))) [Branch (Pattern ((Nothing,Just (TVar 226),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") [])),"EasyCheck","Falsified")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 221) (TVar 222)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 221]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 222]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 220) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 194]),3))]]),Branch (Pattern ((Nothing,Just (FuncType (TVar 227) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 227]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 227]))),"Prelude",":")) [(Just (TVar 202),10),(Just (TVar 203),11)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") []))),"EasyCheck","Ambigious")) [Var ((Just (TVar 195),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 224) (TVar 225)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 224]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 225]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 223) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 194]),3))]])])]),Branch (Pattern ((Nothing,Just (TVar 233),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") []))),"EasyCheck","Ambigious")) [Comb ConsCall ((Nothing,Just (TVar 228),"Prelude","[]")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 230) (TVar 231)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 230]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 231]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 229) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 194]),3))]])]))] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Result") []) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","setResult")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),4)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),"EasyCheck","notest")) []],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),"Prelude","[]")) []])))),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","is")) 2 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","is._#lambda3")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 220) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","is._#lambda3")) 2 Private (FuncType (FuncType (TVar 220) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 220]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (FuncType (TVar 220) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 220) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]))),"Prelude",":")) [(Just (TVar 220),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 220) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 220) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 220) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 220),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 220) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]))),"Prelude",":")) [(Just (TVar 220),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),6)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 220]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","isAlways")) 1 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) []])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","isEventually")) 1 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","any")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","prop")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","uniquely")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","uniquely")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","is")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","id")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","always")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"Prelude","flip")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","isAlways")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","id")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","eventually")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"Prelude","flip")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","isEventually")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","id")) []])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","failing")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) []])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","successful")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) []]])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","deterministic")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","is")) [Var ((Just (TVar 0),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","const")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","#")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"List","nub")) []]]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","-=-")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 5,TVar 5]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 5,TVar 5]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","is")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 5,TVar 5]))),"Prelude","(,)")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 0),2))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 5) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 5,TVar 5]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","uncurry")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) []]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","<~>")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSameSet")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"EasyCheck","valuesOf")) [],Var ((Just (TVar 0),2))]]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","~>")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSubsetOf")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"EasyCheck","valuesOf")) [],Var ((Just (TVar 0),2))]]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","<~")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","test")) [Var ((Just (TVar 0),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSubsetOf")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"EasyCheck","valuesOf")) [],Var ((Just (TVar 0),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSameSet")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 293]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 293])),"List","nub")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 294]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 294])),"List","nub")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","subset")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","subset")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 292]),3))]])))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSubsetOf")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","subset")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"List","nub")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","subset")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","\\\\")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","==>")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),"EasyCheck","notest")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),"Prelude","[]")) []])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TVar 1) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAll")) 3 Private (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (FuncType (TVar 1) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1),(Just (TVar 1),2),(Just (FuncType (TVar 1) (TVar 0)),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAllValues")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),"EasyCheck","valuesOf")) [],Var ((Just (TVar 1),2))],Var ((Just (FuncType (TVar 1) (TVar 0)),3))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAllValues")) 3 Private (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),2),(Just (FuncType (TVar 1) (TVar 0)),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"EasyCheck","diagonal")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAllValues._#lambda5")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1)),Var ((Just (FuncType (TVar 1) (TVar 0)),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 330) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 327) (TVar 330)) (FuncType (TVar 327) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAllValues._#lambda5")) 3 Private (FuncType (FuncType (TVar 330) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (FuncType (FuncType (TVar 327) (TVar 330)) (FuncType (TVar 327) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (Rule [(Just (FuncType (TVar 330) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1),(Just (FuncType (TVar 327) (TVar 330)),2),(Just (TVar 327),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","forAllValues._#lambda5._#lambda6")) [Var ((Just (TVar 327),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 330) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TVar 330) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude","apply")) [Var ((Just (FuncType (TVar 330) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 327) (TVar 330)) (FuncType (TVar 327) (TVar 330))),"Prelude","apply")) [Var ((Just (FuncType (TVar 327) (TVar 330)),2)),Var ((Just (TVar 327),3))]]])),Func ((Nothing,Just (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","forAllValues._#lambda5._#lambda6")) 2 Private (FuncType (TVar 327) (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Test")) []) (TCons ((Nothing,Nothing,"EasyCheck","Test")) []))) (Rule [(Just (TVar 327),1),(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","updArgs")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 327) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 327),1))]],Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),2))])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","for")) 0 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAll")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","forValues")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAllValues")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","label")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude","map")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Test") []))),"EasyCheck","updStamp")) [],Comb (ConsPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","classify")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","label")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","trivial")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","classify")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","collect")) 0 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","label")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","collectAs")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","label")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"EasyCheck","maxTest")) 1 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"EasyCheck","maxFail")) 1 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"EasyCheck","every")) 1 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),4)]) (Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),4)))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (TCons (Nothing,Nothing,"EasyCheck","Config") []))),"EasyCheck","setEvery")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (TCons ((Nothing,Nothing,"EasyCheck","Config")) []))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1))])])),Func ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),"EasyCheck","easy")) 0 Private (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (Rule [] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (TCons (Nothing,Nothing,"EasyCheck","Config") [])))),"EasyCheck","Config")) [Lit (Intc  100),Lit (Intc  1000),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","easy._#lambda7")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","easy._#lambda7")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),Comb ConsCall ((Nothing,Just (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]))),"Prelude",":")) [Lit (Charc  ' '),Comb FuncCall ((Nothing,Just (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]]])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"EasyCheck","easy._#lambda7._#lambda8")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"EasyCheck","easy._#lambda7._#lambda8")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Char")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  8)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),"EasyCheck","verbose")) 0 Private (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (TCons (Nothing,Nothing,"EasyCheck","Config") []))),"EasyCheck","setEvery")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","verbose._#lambda9")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),"EasyCheck","easy")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","verbose._#lambda9")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"EasyCheck","check")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),"EasyCheck","easy")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"EasyCheck","check")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),"EasyCheck","verbose")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) 1 Private (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (TVar 1) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))),"EasyCheck","forAll")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),1)),Comb FuncCall ((Nothing,Just (TVar 1),"Prelude","unknown")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck1")) 0 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck2")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck3")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck4")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck5")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","easyCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]]]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck1")) 0 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck2")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck3")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck4")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]))))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck5")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []])))))) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"EasyCheck","verboseCheck")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (FuncType (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","suc")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []])),"Prelude","id")) []]]]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"EasyCheck","check")) 2 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]),"EasyCheck","evalModeIsOrBased")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"EasyCheck","check._#lambda10")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"EasyCheck","check._#lambda10")) 3 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))))),"EasyCheck","tests")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2)),Lit (Intc  0),Lit (Intc  0),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'k'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'P'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\''),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\''),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'k'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\''),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'C'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '='),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'B'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\''),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '~'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '/'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'k'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []]]]]]]]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))))),"EasyCheck","tests")) 5 Private (FuncType (TCons ((Nothing,Nothing,"EasyCheck","Config")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"EasyCheck","Test")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))))) (Rule [(Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"EasyCheck","done")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'P'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"EasyCheck","maxTest")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"EasyCheck","done")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'K'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"EasyCheck","maxFail")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"EasyCheck","done")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"EasyCheck","every")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","args")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))]]],Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"EasyCheck","Result") [])),"EasyCheck","result")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),"EasyCheck","Undef")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))))),"EasyCheck","tests")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"EasyCheck","Result") []),"EasyCheck","Ok")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Config") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))))),"EasyCheck","tests")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Config") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]),7)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","stamp")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") [])),"EasyCheck","Falsified")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),8)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"EasyCheck","nth")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","args")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]])],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","args")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))]],Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),8))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),8))]])]]]]]]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"EasyCheck","Result") []))),"EasyCheck","Ambigious")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]),9),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),10)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]),9))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"EasyCheck","nth")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","args")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]])],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"EasyCheck","Test") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"EasyCheck","args")) [Var ((Just (TCons (Nothing,Nothing,"EasyCheck","Test") []),6))]],Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),10))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),10))]])]]]]]]]]]])]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"EasyCheck","nth")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  3)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"EasyCheck","done")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),3)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 46) (TVar 47)) (FuncType (TVar 46) (TVar 47))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 43) (TVar 44)) (FuncType (FuncType (TVar 45) (TVar 43)) (FuncType (TVar 45) (TVar 44)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"EasyCheck","done.display.199")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 40) (TVar 41)) (FuncType (FuncType (TVar 42) (TVar 40)) (FuncType (TVar 42) (TVar 41)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 7) (TVar 8)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","done.entry.199")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 37) (TVar 38)) (FuncType (FuncType (TVar 39) (TVar 37)) (FuncType (TVar 39) (TVar 38)))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 9]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 9])),"Prelude","reverse")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 34) (TVar 35)) (FuncType (FuncType (TVar 36) (TVar 34)) (FuncType (TVar 36) (TVar 35)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 13) (FuncType (TVar 13) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 13]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 13]))),"Sort","mergeSort")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 11) (FuncType (TVar 11) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 12) (FuncType (TVar 12) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TVar 12]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TVar 12]) (TCons (Nothing,Nothing,"Prelude","Bool") []))))),"EasyCheck","leqPair")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 10) (FuncType (TVar 10) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Sort","leqList")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqString")) []]]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 31) (TVar 32)) (FuncType (FuncType (TVar 33) (TVar 31)) (FuncType (TVar 33) (TVar 32)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 15) (TVar 16)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 16]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 14]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 14])),"EasyCheck","done.pairLength.199")) []],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 28) (TVar 29)) (FuncType (FuncType (TVar 30) (TVar 28)) (FuncType (TVar 30) (TVar 29)))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 17]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 17]])),"List","group")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 25) (TVar 26)) (FuncType (FuncType (TVar 27) (TVar 25)) (FuncType (TVar 27) (TVar 26)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 19) (FuncType (TVar 19) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 19]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 19]))),"Sort","mergeSort")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 18) (FuncType (TVar 18) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Sort","leqList")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqString")) []]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 24) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 24]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 24]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 21) (TVar 22)) (FuncType (FuncType (TVar 23) (TVar 21)) (FuncType (TVar 23) (TVar 22)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 20]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) []]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),3))])] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) [])],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]]]]]]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"EasyCheck","done.display.199")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])),"EasyCheck","done.pairLength.199")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))],Var ((Just (TVar 0),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","done.percentage.199")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),Comb FuncCall ((Nothing,Just (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  100),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","replicate")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Lit (Intc  3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]],Lit (Charc  ' ')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '%'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","done.entry.199")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"EasyCheck","done.percentage.199")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","concat")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"List","intersperse")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))]]]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))))),"EasyCheck","leqPair")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),3),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 0),5),(Just (TVar 1),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 0),7),(Just (TVar 1),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),5)),Var ((Just (TVar 0),7))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 1),6))],Var ((Just (TVar 1),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),5))],Var ((Just (TVar 0),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"EasyCheck","leList")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),6))],Var ((Just (TVar 0),8))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),6)),Var ((Just (TVar 0),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"EasyCheck","leList")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9))]]])])])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"EasyCheck","valuesOf")) 0 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"EasyCheck","rndLevelDiagFlat")) [Lit (Intc  3),Lit (Intc  2008)],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Meta","searchTree")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TVar 0)),"Prelude","id")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"EasyCheck","rndLevelDiag")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"EasyCheck","rndLevelDiag._#lambda15")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])),"EasyCheck","diagonal")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"EasyCheck","rndLevels")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) []]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]))),"EasyCheck","rndLevelDiag._#lambda15")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 119]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 119]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 119]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 119) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119])),"Prelude","Value")) [(Just (TVar 119),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 119) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]))),"Prelude",":")) [Var ((Just (TVar 119),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]),"Prelude","Fail")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]]),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 119]),"Prelude","Suspend")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"EasyCheck","rndLevels")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2)] (Let [((Just (TVar 69),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"EasyCheck","rndLevels._#selFP3#r")) [Var ((Just (TVar 69),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"EasyCheck","rndLevels._#selFP4#rs")) [Var ((Just (TVar 69),3))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"EasyCheck","rndLevels")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])),"Prelude","concat")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]])))),"Prelude","zipWith")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"EasyCheck","shuffle")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"EasyCheck","rndLevels._#lambda19")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2))]]]]])]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"EasyCheck","rndLevels._#selFP3#r")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"EasyCheck","rndLevels._#selFP4#rs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]))),"EasyCheck","rndLevels._#lambda19")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 68]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 68]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 68]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]),"Prelude","Fail")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 68) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68])),"Prelude","Value")) [(Just (TVar 68),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]),"Prelude","Suspend")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 68]]]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"EasyCheck","rndLevelDiagFlat")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),3)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","concat")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"EasyCheck","transpose")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])))),"Prelude","zipWith")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"EasyCheck","rndLevelDiag")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"EasyCheck","flatRep")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) []]]]]]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])),"EasyCheck","flat")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Value")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Fail")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Suspend")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"EasyCheck","flatRep")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"EasyCheck","flatRep")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])),"EasyCheck","flat")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),2))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","failed")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"EasyCheck","diagonal")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","concat")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"EasyCheck","diagonal.diags.268")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"EasyCheck","diagonal.merge.268")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","flip")) [Comb (ConsPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"EasyCheck","diagonal.merge.268")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),6))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"EasyCheck","diagonal.diags.268")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"EasyCheck","diagonal.merge.268")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"EasyCheck","shuffle")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"EasyCheck","shuffleWithLen")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","nextInt")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"EasyCheck","shuffleWithLen")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)]) (Let [((Just (TVar 42),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 44]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 44],TCons (Nothing,Nothing,"Prelude","[]") [TVar 44]]))),"Prelude","splitAt")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","abs")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 45],TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45])),"EasyCheck","shuffleWithLen._#selFP6#ys")) [Var ((Just (TVar 42),6))])] (Let [((Just (TVar 0),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 46],TCons (Nothing,Nothing,"Prelude","[]") [TVar 46]]) (TVar 46)),"EasyCheck","shuffleWithLen._#selFP7#z")) [Var ((Just (TVar 42),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 47],TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47])),"EasyCheck","shuffleWithLen._#selFP8#zs")) [Var ((Just (TVar 42),6))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),8)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"EasyCheck","shuffleWithLen")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","failed")) [])])])))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39])),"EasyCheck","shuffleWithLen._#selFP6#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 43) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]))),"Prelude",":")) [(Just (TVar 43),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]),5)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),2)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]) (TVar 39)),"EasyCheck","shuffleWithLen._#selFP7#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39]]) (TVar 39)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 41) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]))),"Prelude","(,)")) [(Just (TVar 41),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 39) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]))),"Prelude",":")) [(Just (TVar 39),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),5)]) (Var ((Just (TVar 39),4)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39])),"EasyCheck","shuffleWithLen._#selFP8#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 39])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 41) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 39],TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]]))),"Prelude","(,)")) [(Just (TVar 41),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 39) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]))),"Prelude",":")) [(Just (TVar 39),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),5)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]),5)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"EasyCheck","transpose")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"EasyCheck","transpose")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"EasyCheck","transpose._#lambda24")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"EasyCheck","transpose")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"EasyCheck","transpose._#lambda28")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3))]]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]))),"EasyCheck","transpose._#lambda24")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 151]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 151]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 151]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 151) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]))),"Prelude",":")) [(Just (TVar 151),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 151) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]))),"Prelude",":")) [Var ((Just (TVar 151),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]))),"EasyCheck","transpose._#lambda28")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 151]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 151]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 151]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 151) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]))),"Prelude",":")) [(Just (TVar 151),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 151]]),2)))])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]),"EasyCheck","evalModeIsOrBased")) 0 Private (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]])),"Prelude","getSearchTree")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 4) (TVar 4)) (FuncType (TVar 4) (TVar 4))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 4) (TVar 4)),"Prelude","id")) [],Comb FuncCall ((Nothing,Just (TVar 4),"Prelude","unknown")) []]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Prelude","return")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Comb ConsCall ((Nothing,Just (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 4])),"Prelude","Value")) [Comb ConsCall ((Nothing,Just (TVar 4),"Prelude","()")) []]]]]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSameSet")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"EasyCheck","isSubsetOf")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","is")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","isAlways")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","isEventually")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","-=-")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","#")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","<~>")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","~>")) InfixOp 1,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","<~")) InfixOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","trivial")) InfixOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"EasyCheck","Test") []]))),"EasyCheck","==>")) InfixrOp 0]
+ src/lib/Curry/Module/.curry/EasyCheck.fcy view
@@ -0,0 +1,1 @@+Prog "EasyCheck" ["Integer","List","Meta","Prelude","RandomExternal","Sort","Read"] [TypeSyn ("EasyCheck","Prop") Public [] (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]),Type ("EasyCheck","Test") Private [] [Cons ("EasyCheck","Test") 3 Private [TCons ("EasyCheck","Result") [],TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]],Type ("EasyCheck","Result") Public [] [Cons ("EasyCheck","Undef") 0 Public [],Cons ("EasyCheck","Ok") 0 Public [],Cons ("EasyCheck","Falsified") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]],Cons ("EasyCheck","Ambigious") 2 Public [TCons ("Prelude","[]") [TCons ("Prelude","Bool") []],TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]],Type ("EasyCheck","Config") Private [] [Cons ("EasyCheck","Config") 3 Private [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))]]] [Func ("EasyCheck","notest") 0 Private (TCons ("EasyCheck","Test") []) (Rule [] (Comb ConsCall ("EasyCheck","Test") [Comb ConsCall ("EasyCheck","Undef") [],Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []])),Func ("EasyCheck","result") 1 Public (FuncType (TCons ("EasyCheck","Test") []) (TCons ("EasyCheck","Result") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("EasyCheck","Test") [2,3,4]) (Var 2)])),Func ("EasyCheck","setResult") 2 Private (FuncType (TCons ("EasyCheck","Result") []) (FuncType (TCons ("EasyCheck","Test") []) (TCons ("EasyCheck","Test") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("EasyCheck","Test") [3,4,5]) (Comb ConsCall ("EasyCheck","Test") [Var 1,Var 5,Var 4])])),Func ("EasyCheck","args") 1 Private (FuncType (TCons ("EasyCheck","Test") []) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("EasyCheck","Test") [2,3,4]) (Var 3)])),Func ("EasyCheck","stamp") 1 Private (FuncType (TCons ("EasyCheck","Test") []) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("EasyCheck","Test") [2,3,4]) (Var 4)])),Func ("EasyCheck","updArgs") 2 Private (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (FuncType (TCons ("EasyCheck","Test") []) (TCons ("EasyCheck","Test") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("EasyCheck","Test") [3,4,5]) (Comb ConsCall ("EasyCheck","Test") [Var 3,Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 5])])),Func ("EasyCheck","updStamp") 2 Private (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (FuncType (TCons ("EasyCheck","Test") []) (TCons ("EasyCheck","Test") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("EasyCheck","Test") [3,4,5]) (Comb ConsCall ("EasyCheck","Test") [Var 3,Var 4,Comb FuncCall ("Prelude","apply") [Var 1,Var 5]])])),Func ("EasyCheck","test") 2 Public (FuncType (TVar 0) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","valuesOf") [],Var 1])] (Let [(4,Let [(5,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","valuesOf") [],Comb FuncCall ("Prelude","apply") [Var 2,Var 3]])] (Case  Rigid (Var 5) [Branch (Pattern ("Prelude",":") [6,7]) (Case  Rigid (Var 6) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Var 7) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("EasyCheck","Ok") []),Branch (Pattern ("Prelude",":") [8,9]) (Comb ConsCall ("EasyCheck","Ambigious") [Var 5,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","show") [],Var 3]])]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Var 7) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("EasyCheck","Falsified") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","show") [],Var 3]]),Branch (Pattern ("Prelude",":") [10,11]) (Comb ConsCall ("EasyCheck","Ambigious") [Var 5,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","show") [],Var 3]])])]),Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("EasyCheck","Ambigious") [Comb ConsCall ("Prelude","[]") [],Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","show") [],Var 3]])]))] (Comb ConsCall ("Prelude",":") [Comb FuncCall ("EasyCheck","setResult") [Var 4,Comb FuncCall ("EasyCheck","notest") []],Comb ConsCall ("Prelude","[]") []])))),Func ("EasyCheck","is") 2 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb (FuncPartCall 1) ("EasyCheck","is._#lambda3") [Var 2]])),Func ("EasyCheck","is._#lambda3") 2 Private (FuncType (FuncType (TVar 220) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 220]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","apply") [Var 1,Var 3]),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude","False") [])]),Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","False") [])])),Func ("EasyCheck","isAlways") 1 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("EasyCheck","test") [Var 1],Comb (FuncPartCall 1) ("Prelude","all") []])),Func ("EasyCheck","isEventually") 1 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("EasyCheck","test") [Var 1],Comb (FuncPartCall 1) ("Prelude","any") []])),Func ("EasyCheck","prop") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Comb FuncCall ("EasyCheck","uniquely") [])),Func ("EasyCheck","uniquely") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("EasyCheck","is") [],Comb (FuncPartCall 1) ("Prelude","id") []])),Func ("EasyCheck","always") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 1) ("EasyCheck","isAlways") [],Comb (FuncPartCall 1) ("Prelude","id") []])),Func ("EasyCheck","eventually") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 1) ("EasyCheck","isEventually") [],Comb (FuncPartCall 1) ("Prelude","id") []])),Func ("EasyCheck","failing") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [1] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb (FuncPartCall 1) ("Prelude","null") []])),Func ("EasyCheck","successful") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [1] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","not") [],Comb (FuncPartCall 1) ("Prelude","null") []]])),Func ("EasyCheck","deterministic") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [1] (Comb FuncCall ("EasyCheck","is") [Var 1,Comb (FuncPartCall 1) ("Prelude","const") [Comb ConsCall ("Prelude","True") []]])),Func ("EasyCheck","#") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","==") [Var 2],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","length") [],Comb (FuncPartCall 1) ("List","nub") []]]])),Func ("EasyCheck","-=-") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","is") [Comb ConsCall ("Prelude","(,)") [Var 1,Var 2],Comb (FuncPartCall 1) ("Prelude","uncurry") [Comb (FuncPartCall 2) ("Prelude","==") []]])),Func ("EasyCheck","<~>") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb (FuncPartCall 1) ("EasyCheck","isSameSet") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","valuesOf") [],Var 2]]])),Func ("EasyCheck","~>") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb (FuncPartCall 1) ("EasyCheck","isSubsetOf") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","valuesOf") [],Var 2]]])),Func ("EasyCheck","<~") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","test") [Var 1,Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("EasyCheck","isSubsetOf") [],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","valuesOf") [],Var 2]]])),Func ("EasyCheck","isSameSet") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Let [(3,Comb FuncCall ("List","nub") [Var 1])] (Let [(4,Comb FuncCall ("List","nub") [Var 2])] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("EasyCheck","subset") [Var 3,Var 4],Comb FuncCall ("EasyCheck","subset") [Var 4,Var 3]])))),Func ("EasyCheck","isSubsetOf") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("EasyCheck","subset") [Comb FuncCall ("List","nub") [Var 1],Var 2])),Func ("EasyCheck","subset") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","null") [Comb FuncCall ("List","\\\\") [Var 1,Var 2]])),Func ("EasyCheck","==>") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("EasyCheck","notest") [],Comb ConsCall ("Prelude","[]") []])])),Func ("EasyCheck","forAll") 3 Private (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (FuncType (TVar 1) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [1,2,3] (Comb FuncCall ("EasyCheck","forAllValues") [Var 1,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","valuesOf") [],Var 2],Var 3])),Func ("EasyCheck","forAllValues") 3 Private (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (FuncType (TCons ("Prelude","[]") [TVar 1]) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","diagonal") [],Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("EasyCheck","forAllValues._#lambda5") [Var 1,Var 3],Var 2]])),Func ("EasyCheck","forAllValues._#lambda5") 3 Private (FuncType (FuncType (TVar 330) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (FuncType (FuncType (TVar 327) (TVar 330)) (FuncType (TVar 327) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("EasyCheck","forAllValues._#lambda5._#lambda6") [Var 3],Comb FuncCall ("Prelude","apply") [Var 1,Comb FuncCall ("Prelude","apply") [Var 2,Var 3]]])),Func ("EasyCheck","forAllValues._#lambda5._#lambda6") 2 Private (FuncType (TVar 327) (FuncType (TCons ("EasyCheck","Test") []) (TCons ("EasyCheck","Test") []))) (Rule [1,2] (Comb FuncCall ("EasyCheck","updArgs") [Comb (ConsPartCall 1) ("Prelude",":") [Comb FuncCall ("Prelude","show") [Var 1]],Var 2])),Func ("EasyCheck","for") 0 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Comb (FuncPartCall 2) ("EasyCheck","forAll") [Comb (FuncPartCall 1) ("Prelude","id") []])),Func ("EasyCheck","forValues") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Comb (FuncPartCall 2) ("EasyCheck","forAllValues") [Comb (FuncPartCall 1) ("Prelude","id") []])),Func ("EasyCheck","label") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Prelude","map") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("EasyCheck","updStamp") [],Comb (ConsPartCall 2) ("Prelude",":") []]])),Func ("EasyCheck","classify") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","label") [],Var 2]),Branch (Pattern ("Prelude","False") []) (Comb (FuncPartCall 1) ("Prelude","id") [])])),Func ("EasyCheck","trivial") 0 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("EasyCheck","classify") [],Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude","[]") []]]]]]]]])),Func ("EasyCheck","collect") 0 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","label") [],Comb (FuncPartCall 1) ("Prelude","show") []])),Func ("EasyCheck","collectAs") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","label") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","++") [Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]],Comb (FuncPartCall 1) ("Prelude","show") []]])),Func ("EasyCheck","maxTest") 1 Private (FuncType (TCons ("EasyCheck","Config") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("EasyCheck","Config") [2,3,4]) (Var 2)])),Func ("EasyCheck","maxFail") 1 Private (FuncType (TCons ("EasyCheck","Config") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("EasyCheck","Config") [2,3,4]) (Var 3)])),Func ("EasyCheck","every") 1 Private (FuncType (TCons ("EasyCheck","Config") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("EasyCheck","Config") [2,3,4]) (Var 4)])),Func ("EasyCheck","setEvery") 2 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("EasyCheck","Config") []) (TCons ("EasyCheck","Config") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("EasyCheck","Config") [3,4,5]) (Comb ConsCall ("EasyCheck","Config") [Var 3,Var 4,Var 1])])),Func ("EasyCheck","easy") 0 Private (TCons ("EasyCheck","Config") []) (Rule [] (Comb ConsCall ("EasyCheck","Config") [Lit (Intc  100),Lit (Intc  1000),Comb (FuncPartCall 2) ("EasyCheck","easy._#lambda7") []])),Func ("EasyCheck","easy._#lambda7") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Let [(3,Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb FuncCall ("Prelude","show") [Comb FuncCall ("Prelude","+") [Var 1,Lit (Intc  1)]]])] (Comb FuncCall ("Prelude","++") [Var 3,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("EasyCheck","easy._#lambda7._#lambda8") [],Var 3]]))),Func ("EasyCheck","easy._#lambda7._#lambda8") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Char") [])) (Rule [1] (Comb FuncCall ("Prelude","chr") [Lit (Intc  8)])),Func ("EasyCheck","verbose") 0 Private (TCons ("EasyCheck","Config") []) (Rule [] (Comb FuncCall ("EasyCheck","setEvery") [Comb (FuncPartCall 2) ("EasyCheck","verbose._#lambda9") [],Comb FuncCall ("EasyCheck","easy") []])),Func ("EasyCheck","verbose._#lambda9") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 1],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Prelude","unlines") [Var 2]]])),Func ("EasyCheck","easyCheck") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb (FuncPartCall 1) ("EasyCheck","check") [Comb FuncCall ("EasyCheck","easy") []])),Func ("EasyCheck","verboseCheck") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb (FuncPartCall 1) ("EasyCheck","check") [Comb FuncCall ("EasyCheck","verbose") []])),Func ("EasyCheck","suc") 1 Private (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (FuncType (FuncType (TVar 1) (TVar 0)) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [1] (Comb (FuncPartCall 1) ("EasyCheck","forAll") [Var 1,Comb FuncCall ("Prelude","unknown") []])),Func ("EasyCheck","easyCheck1") 0 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","easyCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]])),Func ("EasyCheck","easyCheck2") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","easyCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]])),Func ("EasyCheck","easyCheck3") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","easyCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]]])),Func ("EasyCheck","easyCheck4") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","easyCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]]]])),Func ("EasyCheck","easyCheck5") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","easyCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]]]]])),Func ("EasyCheck","verboseCheck1") 0 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","verboseCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]])),Func ("EasyCheck","verboseCheck2") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","verboseCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]])),Func ("EasyCheck","verboseCheck3") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","verboseCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]]])),Func ("EasyCheck","verboseCheck4") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","verboseCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]]]])),Func ("EasyCheck","verboseCheck5") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("EasyCheck","verboseCheck") [],Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb FuncCall ("EasyCheck","suc") [Comb (FuncPartCall 1) ("Prelude","id") []]]]]]])),Func ("EasyCheck","check") 2 Private (FuncType (TCons ("EasyCheck","Config") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("EasyCheck","evalModeIsOrBased") [],Comb (FuncPartCall 1) ("EasyCheck","check._#lambda10") [Var 1,Var 2]])),Func ("EasyCheck","check._#lambda10") 3 Private (FuncType (TCons ("EasyCheck","Config") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("EasyCheck","tests") [Var 1,Var 2,Lit (Intc  0),Lit (Intc  0),Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","putStrLn") [],Comb FuncCall ("Prelude","unlines") [Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'k'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'P'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '\''),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\''),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'k'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '\''),Comb ConsCall ("Prelude",":") [Lit (Charc  'C'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '='),Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'B'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\''),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '~'),Comb ConsCall ("Prelude",":") [Lit (Charc  '/'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'k'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb ConsCall ("Prelude","[]") []]]]]]]]]]]])])),Func ("EasyCheck","tests") 5 Private (FuncType (TCons ("EasyCheck","Config") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))))) (Rule [1,2,3,4,5] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("EasyCheck","done") [Comb ConsCall ("Prelude",":") [Lit (Charc  'P'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude","[]") []]]]]]],Var 3,Var 5]),Branch (Pattern ("Prelude",":") [6,7]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Comb FuncCall ("EasyCheck","maxTest") [Var 1]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("EasyCheck","done") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'K'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]],Var 3,Var 5]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 4,Comb FuncCall ("EasyCheck","maxFail") [Var 1]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("EasyCheck","done") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]],Var 3,Var 5]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Prelude","putStr") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","every") [Var 1],Var 3],Comb FuncCall ("EasyCheck","args") [Var 6]]],Case  Rigid (Comb FuncCall ("EasyCheck","result") [Var 6]) [Branch (Pattern ("EasyCheck","Undef") []) (Comb FuncCall ("EasyCheck","tests") [Var 1,Var 7,Var 3,Comb FuncCall ("Prelude","+") [Var 4,Lit (Intc  1)],Var 5]),Branch (Pattern ("EasyCheck","Ok") []) (Comb FuncCall ("EasyCheck","tests") [Var 1,Var 7,Comb FuncCall ("Prelude","+") [Var 3,Lit (Intc  1)],Var 4,Comb ConsCall ("Prelude",":") [Comb FuncCall ("EasyCheck","stamp") [Var 6],Var 5]]),Branch (Pattern ("EasyCheck","Falsified") [8]) (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","putStr") [],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("EasyCheck","nth") [Comb FuncCall ("Prelude","+") [Var 3,Lit (Intc  1)]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]]]],Comb FuncCall ("Prelude","++") [Case  Rigid (Comb FuncCall ("Prelude","null") [Comb FuncCall ("EasyCheck","args") [Var 6]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]])],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","unlines") [Comb FuncCall ("EasyCheck","args") [Var 6]],Case  Rigid (Comb FuncCall ("Prelude","null") [Var 8]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb FuncCall ("Prelude","unlines") [Var 8]])]]]]]]]]),Branch (Pattern ("EasyCheck","Ambigious") [9,10]) (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","putStr") [],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 9],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("EasyCheck","nth") [Comb FuncCall ("Prelude","+") [Var 3,Lit (Intc  1)]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]]]],Comb FuncCall ("Prelude","++") [Case  Rigid (Comb FuncCall ("Prelude","null") [Comb FuncCall ("EasyCheck","args") [Var 6]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]])],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","unlines") [Comb FuncCall ("EasyCheck","args") [Var 6]],Case  Rigid (Comb FuncCall ("Prelude","null") [Var 10]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb FuncCall ("Prelude","unlines") [Var 10]])]]]]]]]]]])]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("EasyCheck","nth") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  1)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  2)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude","[]") []]]]]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  3)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude","[]") []]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 1],Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude","[]") []]]])])])])),Func ("EasyCheck","done") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("EasyCheck","done.display.199") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("EasyCheck","done.entry.199") [Var 2]],Comb FuncCall ("Prelude",".") [Comb FuncCall ("Prelude","reverse") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Sort","mergeSort") [Comb (FuncPartCall 2) ("EasyCheck","leqPair") [Comb (FuncPartCall 2) ("Prelude","<=") [],Comb (FuncPartCall 2) ("Sort","leqList") [Comb FuncCall ("Sort","leqString") []]]],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("EasyCheck","done.pairLength.199") []],Comb FuncCall ("Prelude",".") [Comb FuncCall ("List","group") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Sort","mergeSort") [Comb (FuncPartCall 2) ("Sort","leqList") [Comb FuncCall ("Sort","leqString") []]],Comb (FuncPartCall 1) ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","not") [],Comb (FuncPartCall 1) ("Prelude","null") []]]]]]]]]],Var 3])] (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","putStr") [],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]]]],Comb FuncCall ("Prelude","++") [Case  Rigid (Comb FuncCall ("Prelude",">=") [Var 2,Lit (Intc  2)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","[]") [])],Var 4]]]]]]))),Func ("EasyCheck","done.display.199") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]],Comb FuncCall ("Prelude","++") [Var 2,Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Prelude","unlines") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","++") [],Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []]],Var 1]]])])])),Func ("EasyCheck","done.pairLength.199") 1 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","length") [Var 1],Var 2])])),Func ("EasyCheck","done.percentage.199") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("Prelude","show") [Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","*") [Lit (Intc  100),Var 1],Var 2]])] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","replicate") [Comb FuncCall ("Prelude","-") [Lit (Intc  3),Comb FuncCall ("Prelude","length") [Var 3]],Lit (Charc  ' ')],Comb FuncCall ("Prelude","++") [Var 3,Comb ConsCall ("Prelude",":") [Lit (Charc  '%'),Comb ConsCall ("Prelude","[]") []]]]))),Func ("EasyCheck","done.entry.199") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb FuncCall ("Prelude","++") [Comb FuncCall ("EasyCheck","done.percentage.199") [Var 3,Var 1],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","concat") [Comb FuncCall ("List","intersperse") [Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]],Var 4]]]])])),Func ("EasyCheck","leqPair") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))))) (Rule [1,2,3,4] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,)") [7,8]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 5,Var 7]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 6],Var 8]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 5],Var 7]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("EasyCheck","leList") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude",":") [4,5]) (Comb ConsCall ("Prelude","True") [])]),Branch (Pattern ("Prelude",":") [6,7]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude",":") [8,9]) (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 6],Var 8],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 6,Var 8],Comb FuncCall ("EasyCheck","leList") [Var 1,Var 7,Var 9]]])])])),Func ("EasyCheck","valuesOf") 0 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("EasyCheck","rndLevelDiagFlat") [Lit (Intc  3),Lit (Intc  2008)],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Meta","searchTree") [],Comb (FuncPartCall 1) ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","id") []]]])),Func ("EasyCheck","rndLevelDiag") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("EasyCheck","rndLevelDiag._#lambda15") [],Comb ConsCall ("Prelude","[]") [],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("EasyCheck","diagonal") [],Comb FuncCall ("EasyCheck","rndLevels") [Var 1,Comb ConsCall ("Prelude",":") [Var 2,Comb ConsCall ("Prelude","[]") []]]]])),Func ("EasyCheck","rndLevelDiag._#lambda15") 2 Private (FuncType (TCons ("Prelude","SearchTree") [TVar 119]) (FuncType (TCons ("Prelude","[]") [TVar 119]) (TCons ("Prelude","[]") [TVar 119]))) (Rule [1,2] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude","Value") [3]) (Comb ConsCall ("Prelude",":") [Var 3,Var 2]),Branch (Pattern ("Prelude","Fail") []) (Var 2),Branch (Pattern ("Prelude","Choice") [4]) (Var 2),Branch (Pattern ("Prelude","Suspend") []) (Var 2)])),Func ("EasyCheck","rndLevels") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]]))) (Rule [1,2] (Let [(3,Comb FuncCall ("RandomExternal","split") [Var 1])] (Let [(4,Comb FuncCall ("EasyCheck","rndLevels._#selFP3#r") [Var 3])] (Let [(5,Comb FuncCall ("EasyCheck","rndLevels._#selFP4#rs") [Var 3])] (Case  Rigid (Comb FuncCall ("Prelude","null") [Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("EasyCheck","rndLevels") [Var 4,Comb FuncCall ("Prelude","concat") [Comb FuncCall ("Prelude","zipWith") [Comb (FuncPartCall 2) ("EasyCheck","shuffle") [],Var 5,Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("EasyCheck","rndLevels._#lambda19") [],Comb ConsCall ("Prelude","[]") [],Var 2]]]]])]))))),Func ("EasyCheck","rndLevels._#selFP3#r") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 2)])),Func ("EasyCheck","rndLevels._#selFP4#rs") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 3)])),Func ("EasyCheck","rndLevels._#lambda19") 2 Private (FuncType (TCons ("Prelude","SearchTree") [TVar 68]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 68]]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 68]]]))) (Rule [1,2] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude","Choice") [3]) (Comb ConsCall ("Prelude",":") [Var 3,Var 2]),Branch (Pattern ("Prelude","Fail") []) (Var 2),Branch (Pattern ("Prelude","Value") [4]) (Var 2),Branch (Pattern ("Prelude","Suspend") []) (Var 2)])),Func ("EasyCheck","rndLevelDiagFlat") 3 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("RandomExternal","split") [Var 2])] (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","concat") [],Comb FuncCall ("EasyCheck","transpose") [Comb FuncCall ("Prelude","zipWith") [Comb (FuncPartCall 2) ("EasyCheck","rndLevelDiag") [],Var 4,Comb FuncCall ("EasyCheck","flatRep") [Var 1,Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []]]]]]))),Func ("EasyCheck","flat") 1 Private (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]])) (Rule [1] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude","Value") [2]) (Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","Choice") [3]) (Var 3),Branch (Pattern ("Prelude","Fail") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","Suspend") []) (Comb ConsCall ("Prelude","[]") [])])),Func ("EasyCheck","flatRep") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("EasyCheck","flatRep") [Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("EasyCheck","flat") []],Var 2]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])),Func ("EasyCheck","diagonal") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","concat") [],Comb (FuncPartCall 1) ("Prelude","foldr") [Comb (FuncPartCall 2) ("EasyCheck","diagonal.diags.268") [],Comb ConsCall ("Prelude","[]") []]])),Func ("EasyCheck","diagonal.merge.268") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (ConsPartCall 2) ("Prelude",":") [],Comb ConsCall ("Prelude","[]") []],Var 1]),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 3,Var 5],Comb FuncCall ("EasyCheck","diagonal.merge.268") [Var 4,Var 6]])])])),Func ("EasyCheck","diagonal.diags.268") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("EasyCheck","diagonal.merge.268") [Var 4,Var 2]])])),Func ("EasyCheck","shuffle") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("EasyCheck","shuffleWithLen") [Comb FuncCall ("RandomExternal","nextInt") [Var 1],Comb FuncCall ("Prelude","length") [Var 2],Var 2])),Func ("EasyCheck","shuffleWithLen") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("Prelude","splitAt") [Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Integer","abs") [Var 4],Var 2],Var 3])] (Let [(7,Comb FuncCall ("EasyCheck","shuffleWithLen._#selFP6#ys") [Var 6])] (Let [(8,Comb FuncCall ("EasyCheck","shuffleWithLen._#selFP7#z") [Var 6])] (Let [(9,Comb FuncCall ("EasyCheck","shuffleWithLen._#selFP8#zs") [Var 6])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 8,Comb FuncCall ("EasyCheck","shuffleWithLen") [Var 5,Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  1)],Comb FuncCall ("Prelude","++") [Var 7,Var 9]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])))))])),Func ("EasyCheck","shuffleWithLen._#selFP6#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 39],TCons ("Prelude","[]") [TVar 39]]) (TCons ("Prelude","[]") [TVar 39])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude",":") [4,5]) (Var 2)])])),Func ("EasyCheck","shuffleWithLen._#selFP7#z") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 39],TCons ("Prelude","[]") [TVar 39]]) (TVar 39)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude",":") [4,5]) (Var 4)])])),Func ("EasyCheck","shuffleWithLen._#selFP8#zs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 39],TCons ("Prelude","[]") [TVar 39]]) (TCons ("Prelude","[]") [TVar 39])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude",":") [4,5]) (Var 5)])])),Func ("EasyCheck","transpose") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("EasyCheck","transpose") [Var 3]),Branch (Pattern ("Prelude",":") [4,5]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("EasyCheck","transpose._#lambda24") [],Comb ConsCall ("Prelude","[]") [],Var 3]],Comb FuncCall ("EasyCheck","transpose") [Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("EasyCheck","transpose._#lambda28") [],Comb ConsCall ("Prelude","[]") [],Var 3]]]])])])),Func ("EasyCheck","transpose._#lambda24") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 151]) (FuncType (TCons ("Prelude","[]") [TVar 151]) (TCons ("Prelude","[]") [TVar 151]))) (Rule [1,2] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude",":") [3,4]) (Comb ConsCall ("Prelude",":") [Var 3,Var 2]),Branch (Pattern ("Prelude","[]") []) (Var 2)])),Func ("EasyCheck","transpose._#lambda28") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 151]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 151]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 151]]))) (Rule [1,2] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude",":") [3,4]) (Comb ConsCall ("Prelude",":") [Var 4,Var 2]),Branch (Pattern ("Prelude","[]") []) (Var 2)])),Func ("EasyCheck","evalModeIsOrBased") 0 Private (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []]) (Rule [] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","getSearchTree") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Prelude","id") [],Comb FuncCall ("Prelude","unknown") []]],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","return") [],Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","==") [],Comb ConsCall ("Prelude","Value") [Comb ConsCall ("Prelude","()") []]]]]))] [Op ("EasyCheck","isSameSet") InfixOp 4,Op ("EasyCheck","isSubsetOf") InfixOp 4,Op ("EasyCheck","is") InfixOp 1,Op ("EasyCheck","isAlways") InfixOp 1,Op ("EasyCheck","isEventually") InfixOp 1,Op ("EasyCheck","-=-") InfixOp 1,Op ("EasyCheck","#") InfixOp 1,Op ("EasyCheck","<~>") InfixOp 1,Op ("EasyCheck","~>") InfixOp 1,Op ("EasyCheck","<~") InfixOp 1,Op ("EasyCheck","trivial") InfixOp 1,Op ("EasyCheck","==>") InfixrOp 0]
+ src/lib/Curry/Module/.curry/EasyCheck.fint view
@@ -0,0 +1,1 @@+Prog "EasyCheck" ["Integer","List","Meta","Prelude","RandomExternal","Sort","Read"] [TypeSyn ("EasyCheck","Prop") Public [] (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]),Type ("EasyCheck","Result") Public [] [Cons ("EasyCheck","Undef") 0 Public [],Cons ("EasyCheck","Ok") 0 Public [],Cons ("EasyCheck","Falsified") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]],Cons ("EasyCheck","Ambigious") 2 Public [TCons ("Prelude","[]") [TCons ("Prelude","Bool") []],TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]]] [Func ("EasyCheck","result") 1 Public (FuncType (TCons ("EasyCheck","Test") []) (TCons ("EasyCheck","Result") [])) (Rule [] (Var 0)),Func ("EasyCheck","test") 2 Public (FuncType (TVar 0) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","is") 2 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","isAlways") 1 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","isEventually") 1 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","prop") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","uniquely") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","always") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","eventually") 0 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","failing") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","successful") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","deterministic") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (Rule [] (Var 0)),Func ("EasyCheck","#") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","-=-") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","<~>") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","~>") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","<~") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","isSameSet") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("EasyCheck","isSubsetOf") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("EasyCheck","==>") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","for") 0 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","forValues") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","label") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","classify") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [] (Var 0)),Func ("EasyCheck","trivial") 0 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","collect") 0 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (Rule [] (Var 0)),Func ("EasyCheck","collectAs") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (Rule [] (Var 0)),Func ("EasyCheck","easyCheck") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","verboseCheck") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","easyCheck1") 0 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","easyCheck2") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","easyCheck3") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","easyCheck4") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","easyCheck5") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","verboseCheck1") 0 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","verboseCheck2") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","verboseCheck3") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","verboseCheck4") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []]))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","verboseCheck5") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (FuncType (TVar 4) (TCons ("Prelude","[]") [TCons ("EasyCheck","Test") []])))))) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("EasyCheck","valuesOf") 0 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("EasyCheck","diagonal") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0))] [Op ("EasyCheck","isSameSet") InfixOp 4,Op ("EasyCheck","isSubsetOf") InfixOp 4,Op ("EasyCheck","is") InfixOp 1,Op ("EasyCheck","isAlways") InfixOp 1,Op ("EasyCheck","isEventually") InfixOp 1,Op ("EasyCheck","-=-") InfixOp 1,Op ("EasyCheck","#") InfixOp 1,Op ("EasyCheck","<~>") InfixOp 1,Op ("EasyCheck","~>") InfixOp 1,Op ("EasyCheck","<~") InfixOp 1,Op ("EasyCheck","trivial") InfixOp 1,Op ("EasyCheck","==>") InfixrOp 0]
+ src/lib/Curry/Module/.curry/EasyCheck.uacy view
@@ -0,0 +1,79 @@+CurryProg "EasyCheck"+ ["Prelude","List","Sort","Meta","Integer","Read","RandomExternal"]+ [CType ("EasyCheck","Test") Private [] [CCons ("EasyCheck","Test") 3 Private [CTCons ("EasyCheck","Result") [],CTCons ("Prelude","[]") [CTCons ("Prelude","String") []],CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]],+  CType ("EasyCheck","Result") Public [] [CCons ("EasyCheck","Undef") 0 Public [],CCons ("EasyCheck","Ok") 0 Public [],CCons ("EasyCheck","Falsified") 1 Public [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]],CCons ("EasyCheck","Ambigious") 2 Public [CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []],CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]],+  CTypeSyn ("EasyCheck","Prop") Public [] (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]),+  CType ("EasyCheck","Config") Private [] [CCons ("EasyCheck","Config") 3 Private [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") []))]]]+ [CFunc ("EasyCheck","#") 2 Public (CFuncType (CTVar (0,"_")) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"n"))) (CVar (2,"x0"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","length"))) (CSymbol ("List","nub")))))] []]),+  CFunc ("EasyCheck","-=-") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","is")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"x"))) (CVar (1,"y")))) (CApply (CSymbol ("Prelude","uncurry")) (CSymbol ("Prelude","=="))))] []]),+  CFunc ("EasyCheck","<~") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("EasyCheck","isSubsetOf")) (CVar (2,"x0"))) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"y"))))))] []]),+  CFunc ("EasyCheck","<~>") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CSymbol ("EasyCheck","isSameSet")) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"y")))))] []]),+  CFunc ("EasyCheck","==>") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"p")] [(CSymbol ("Prelude","success"),CVar (0,"p"))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("EasyCheck","notest"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("EasyCheck","always") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","isAlways")) (CVar (0,"x0"))) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","args") 1 Private (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPComb ("EasyCheck","Test") [CPVar (0,"_"),CPVar (1,"a"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"a"))] []]),+  CFunc ("EasyCheck","check") 2 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"config"),CPVar (1,"p")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"isOrBased")) (CSymbol ("EasyCheck","evalModeIsOrBased")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (2,"isOrBased"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("EasyCheck","tests")) (CVar (0,"config"))) (CVar (1,"p"))) (CLit (CIntc 0))) (CLit (CIntc 0))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStrLn"))) (CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'P'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'C'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'B'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\''))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '~'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '/'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CSymbol ("Prelude","[]"))))))))))))))])] []]),+  CFunc ("EasyCheck","classify") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("EasyCheck","Prop") [])))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","label")) (CVar (0,"name")))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","id"))] []]),+  CFunc ("EasyCheck","collect") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","label"))) (CSymbol ("Prelude","show")))] []]),+  CFunc ("EasyCheck","collectAs") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("EasyCheck","Prop") [])))) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","label"))) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"name"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))) (CVar (1,"x0"))))) (CSymbol ("Prelude","show"))))] []]),+  CFunc ("EasyCheck","deterministic") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","is")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","const")) (CSymbol ("Prelude","True"))))] []]),+  CFunc ("EasyCheck","diagonal") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","concat"))) (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("EasyCheck","diags"))) (CSymbol ("Prelude","[]"))))] [CLocalFunc (CFunc ("EasyCheck","diags") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("EasyCheck","merge")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []])),CLocalFunc (CFunc ("EasyCheck","merge") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPAs (3,"xs") (CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")]),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (4,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x0"))) (CSymbol ("Prelude","[]"))))) (CVar (3,"xs")))] [],CRule [CPComb ("Prelude",":") [CPVar (5,"x"),CPVar (6,"xs")],CPComb ("Prelude",":") [CPVar (7,"y"),CPVar (8,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x"))) (CVar (7,"y")))) (CApply (CApply (CSymbol ("EasyCheck","merge")) (CVar (6,"xs"))) (CVar (8,"ys"))))] []]))]]),+  CFunc ("EasyCheck","done") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"mesg"),CPVar (1,"ntest"),CPVar (2,"stamps")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStr"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"mesg"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"ntest")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (1,"ntest"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]")))) (CVar (3,"table"))))))))])] [CLocalPat (CPVar (3,"table")) (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","display"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("EasyCheck","entry")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","reverse"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Sort","mergeSort")) (CApply (CApply (CSymbol ("EasyCheck","leqPair")) (CSymbol ("Prelude","<="))) (CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqString")))))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("EasyCheck","pairLength")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("List","group"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Sort","mergeSort")) (CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqString"))))) (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CSymbol ("Prelude","null")))))))))))) (CVar (2,"stamps"))) [],CLocalFunc (CFunc ("EasyCheck","display") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))] [],CRule [CPComb ("Prelude",":") [CPVar (4,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"x"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))] [],CRule [CPAs (8,"xs") (CPComb ("Prelude",":") [CPVar (5,"_"),CPComb ("Prelude",":") [CPVar (6,"_"),CPVar (7,"_")]])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (9,"x0")] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (9,"x0"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))))) (CVar (8,"xs")))))] []])),CLocalFunc (CFunc ("EasyCheck","pairLength") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPAs (6,"xss") (CPComb ("Prelude",":") [CPVar (4,"xs"),CPVar (5,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","length")) (CVar (6,"xss")))) (CVar (4,"xs")))] []])),CLocalFunc (CFunc ("EasyCheck","entry") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (4,"n"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("EasyCheck","percentage")) (CVar (4,"n"))) (CVar (1,"ntest")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CSymbol ("List","intersperse")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))) (CVar (5,"xs"))))))] []])),CLocalFunc (CFunc ("EasyCheck","percentage") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (4,"n"),CPVar (5,"m")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (6,"s")) (CApply (CSymbol ("Prelude","show")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 100))) (CVar (4,"n")))) (CVar (5,"m")))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CApply (CApply (CSymbol ("Prelude","-")) (CLit (CIntc 3))) (CApply (CSymbol ("Prelude","length")) (CVar (6,"s"))))) (CLit (CCharc ' ')))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (6,"s"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '%'))) (CSymbol ("Prelude","[]"))))))] []]))]]),+  CFunc ("EasyCheck","easy") 0 Private (CTCons ("EasyCheck","Config") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Config")) (CLit (CIntc 100))) (CLit (CIntc 1000))) (CLambda [CPVar (0,"n"),CPVar (1,"_")] (CLetDecl [CLocalPat (CPVar (2,"s")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CSymbol ("Prelude","show")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"n"))) (CLit (CIntc 1))))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"s"))) (CListComp (CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 8))) [CSPat (CPVar (3,"_")) (CVar (2,"s"))])))))] []]),+  CFunc ("EasyCheck","easyCheck") 0 Public (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","check")) (CSymbol ("EasyCheck","easy")))] []]),+  CFunc ("EasyCheck","easyCheck1") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","easyCheck2") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") []))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))] []]),+  CFunc ("EasyCheck","easyCheck3") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))] []]),+  CFunc ("EasyCheck","easyCheck4") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") []))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))))] []]),+  CFunc ("EasyCheck","easyCheck5") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","easyCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))))] []]),+  CFunc ("EasyCheck","evalModeIsOrBased") 0 Private (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Prelude","getSearchTree")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Prelude","id"))) (CSymbol ("Prelude","unknown"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x0"))) (CApply (CSymbol ("Prelude","Value")) (CSymbol ("Prelude","()")))))))] []]),+  CFunc ("EasyCheck","eventually") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","isEventually")) (CVar (0,"x0"))) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","every") 1 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") [])))) (CRules CFlex [CRule [CPComb ("EasyCheck","Config") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"f")]] [(CSymbol ("Prelude","success"),CVar (2,"f"))] []]),+  CFunc ("EasyCheck","failing") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CSymbol ("Prelude","null")))] []]),+  CFunc ("EasyCheck","flat") 1 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPVar (0,"t")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"t")) [CBranch (CPComb ("Prelude","Value") [CPVar (1,"_")]) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"t"))) (CSymbol ("Prelude","[]"))),CBranch (CPComb ("Prelude","Choice") [CPVar (2,"ts")]) (CVar (2,"ts")),CBranch (CPVar (3,"_")) (CSymbol ("Prelude","[]"))])] []]),+  CFunc ("EasyCheck","flatRep") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"ts")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)),CVar (1,"ts")),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("EasyCheck","flatRep")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (0,"n"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("EasyCheck","flat"))) (CVar (1,"ts"))))] []]),+  CFunc ("EasyCheck","for") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") [])) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","forAll")) (CSymbol ("Prelude","id")))] []]),+  CFunc ("EasyCheck","forAll") 3 Private (CFuncType (CFuncType (CTVar (0,"b")) (CTCons ("EasyCheck","Prop") [])) (CFuncType (CTVar (1,"a")) (CFuncType (CFuncType (CTVar (1,"a")) (CTVar (0,"b"))) (CTCons ("EasyCheck","Prop") [])))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"x"),CPVar (2,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","forAllValues")) (CVar (0,"c"))) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"x")))) (CVar (2,"f")))] []]),+  CFunc ("EasyCheck","forAllValues") 3 Private (CFuncType (CFuncType (CTVar (0,"b")) (CTCons ("EasyCheck","Prop") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"a")]) (CFuncType (CFuncType (CTVar (1,"a")) (CTVar (0,"b"))) (CTCons ("EasyCheck","Prop") [])))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"xs"),CPVar (2,"f")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","diagonal")) (CListComp (CListComp (CApply (CApply (CSymbol ("EasyCheck","updArgs")) (CLambda [CPVar (5,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Prelude","show")) (CVar (3,"y")))) (CVar (5,"x0"))))) (CVar (4,"t"))) [CSPat (CPVar (4,"t")) (CApply (CVar (0,"c")) (CApply (CVar (2,"f")) (CVar (3,"y"))))]) [CSPat (CPVar (3,"y")) (CVar (1,"xs"))]))] []]),+  CFunc ("EasyCheck","forValues") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") [])) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","forAllValues")) (CSymbol ("Prelude","id")))] []]),+  CFunc ("EasyCheck","is") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CLambda [CPVar (2,"xs")] (CCase (CVar (2,"xs")) [CBranch (CPComb ("Prelude",":") [CPVar (3,"y"),CPComb ("Prelude","[]") []]) (CApply (CVar (1,"f")) (CVar (3,"y"))),CBranch (CPVar (4,"_")) (CSymbol ("Prelude","False"))])))] []]),+  CFunc ("EasyCheck","isAlways") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x")))) (CSymbol ("Prelude","all")))] []]),+  CFunc ("EasyCheck","isEventually") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x")))) (CSymbol ("Prelude","any")))] []]),+  CFunc ("EasyCheck","isSameSet") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("EasyCheck","subset")) (CVar (2,"xs'"))) (CVar (3,"ys'")))) (CApply (CApply (CSymbol ("EasyCheck","subset")) (CVar (3,"ys'"))) (CVar (2,"xs'"))))] [CLocalPat (CPVar (2,"xs'")) (CApply (CSymbol ("List","nub")) (CVar (0,"xs"))) [],CLocalPat (CPVar (3,"ys'")) (CApply (CSymbol ("List","nub")) (CVar (1,"ys"))) []]]),+  CFunc ("EasyCheck","isSubsetOf") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","subset")) (CApply (CSymbol ("List","nub")) (CVar (0,"xs")))) (CVar (1,"ys")))] []]),+  CFunc ("EasyCheck","label") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","map"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","updStamp"))) (CSymbol ("Prelude",":"))))] []]),+  CFunc ("EasyCheck","leList") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPVar (4,"_"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPVar (7,"le"),CPComb ("Prelude",":") [CPVar (8,"x"),CPVar (9,"xs")],CPComb ("Prelude",":") [CPVar (10,"y"),CPVar (11,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CVar (7,"le")) (CVar (8,"x"))) (CVar (10,"y")))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"x"))) (CVar (10,"y")))) (CApply (CApply (CApply (CSymbol ("EasyCheck","leList")) (CVar (7,"le"))) (CVar (9,"xs"))) (CVar (11,"ys")))))] []]),+  CFunc ("EasyCheck","leqPair") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))))) (CRules CFlex [CRule [CPVar (0,"leqa"),CPVar (1,"leqb"),CPComb ("Prelude","(,)") [CPVar (2,"x1"),CPVar (3,"y1")],CPComb ("Prelude","(,)") [CPVar (4,"x2"),CPVar (5,"y2")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"x1"))) (CVar (4,"x2")),CApply (CApply (CVar (1,"leqb")) (CVar (3,"y1"))) (CVar (5,"y2"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (0,"leqa")) (CVar (2,"x1"))) (CVar (4,"x2")))] []]),+  CFunc ("EasyCheck","maxFail") 1 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("EasyCheck","Config") [CPVar (0,"_"),CPVar (1,"n"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"n"))] []]),+  CFunc ("EasyCheck","maxTest") 1 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("EasyCheck","Config") [CPVar (0,"n"),CPVar (1,"_"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"n"))] []]),+  CFunc ("EasyCheck","notest") 0 Private (CTCons ("EasyCheck","Test") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CSymbol ("EasyCheck","Undef"))) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("EasyCheck","nth") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"n")) [CBranch (CPLit (CIntc 1)) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]"))))))),CBranch (CPLit (CIntc 2)) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]")))))))),CBranch (CPLit (CIntc 3)) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]"))))))),CBranch (CPVar (1,"_")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CSymbol ("Prelude","[]")))))])] []]),+  CFunc ("EasyCheck","prop") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("EasyCheck","uniquely"))] []]),+  CFunc ("EasyCheck","result") 1 Public (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Result") [])) (CRules CFlex [CRule [CPComb ("EasyCheck","Test") [CPVar (0,"r"),CPVar (1,"_"),CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"r"))] []]),+  CFunc ("EasyCheck","rndLevelDiag") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"rnd"),CPVar (1,"t")] [(CSymbol ("Prelude","success"),CListComp (CVar (2,"x")) [CSPat (CPComb ("Prelude","Value") [CPVar (2,"x")]) (CApply (CSymbol ("EasyCheck","diagonal")) (CApply (CApply (CSymbol ("EasyCheck","rndLevels")) (CVar (0,"rnd"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"t"))) (CSymbol ("Prelude","[]")))))])] []]),+  CFunc ("EasyCheck","rndLevelDiagFlat") 3 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"d"),CPVar (1,"rnd"),CPVar (2,"t")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","concat"))) (CApply (CSymbol ("EasyCheck","transpose")) (CApply (CApply (CApply (CSymbol ("Prelude","zipWith")) (CSymbol ("EasyCheck","rndLevelDiag"))) (CVar (3,"rs"))) (CApply (CApply (CSymbol ("EasyCheck","flatRep")) (CVar (0,"d"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"t"))) (CSymbol ("Prelude","[]")))))))] [CLocalPat (CPVar (3,"rs")) (CApply (CSymbol ("RandomExternal","split")) (CVar (1,"rnd"))) []]]),+  CFunc ("EasyCheck","rndLevels") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]]))) (CRules CFlex [CRule [CPVar (0,"rnd"),CPVar (1,"ts")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (1,"ts")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"ts"))) (CApply (CApply (CSymbol ("EasyCheck","rndLevels")) (CVar (2,"r"))) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CApply (CSymbol ("Prelude","zipWith")) (CSymbol ("EasyCheck","shuffle"))) (CVar (3,"rs"))) (CListComp (CVar (4,"us")) [CSPat (CPComb ("Prelude","Choice") [CPVar (4,"us")]) (CVar (1,"ts"))]))))))] [CLocalPat (CPComb ("Prelude",":") [CPVar (2,"r"),CPVar (3,"rs")]) (CApply (CSymbol ("RandomExternal","split")) (CVar (0,"rnd"))) []]]),+  CFunc ("EasyCheck","setEvery") 2 Private (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") []))) (CFuncType (CTCons ("EasyCheck","Config") []) (CTCons ("EasyCheck","Config") []))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("EasyCheck","Config") [CPVar (1,"n"),CPVar (2,"m"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Config")) (CVar (1,"n"))) (CVar (2,"m"))) (CVar (0,"f")))] []]),+  CFunc ("EasyCheck","setResult") 2 Private (CFuncType (CTCons ("EasyCheck","Result") []) (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Test") []))) (CRules CFlex [CRule [CPVar (0,"res"),CPComb ("EasyCheck","Test") [CPVar (1,"_"),CPVar (2,"s"),CPVar (3,"a")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CVar (0,"res"))) (CVar (3,"a"))) (CVar (2,"s")))] []]),+  CFunc ("EasyCheck","shuffle") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"rnd"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","shuffleWithLen")) (CApply (CSymbol ("RandomExternal","nextInt")) (CVar (0,"rnd")))) (CApply (CSymbol ("Prelude","length")) (CVar (1,"l")))) (CVar (1,"l")))] []]),+  CFunc ("EasyCheck","shuffleWithLen") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"r"),CPVar (1,"rs")],CPVar (2,"len"),CPVar (3,"xs")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"len"))) (CLit (CIntc 0)),CSymbol ("Prelude","[]")),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"z"))) (CApply (CApply (CApply (CSymbol ("EasyCheck","shuffleWithLen")) (CVar (1,"rs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (2,"len"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"ys"))) (CVar (6,"zs")))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ys"),CPComb ("Prelude",":") [CPVar (5,"z"),CPVar (6,"zs")]]) (CApply (CApply (CSymbol ("Prelude","splitAt")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CSymbol ("Integer","abs")) (CVar (0,"r")))) (CVar (2,"len")))) (CVar (3,"xs"))) []]]),+  CFunc ("EasyCheck","stamp") 1 Private (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPComb ("EasyCheck","Test") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"s")]] [(CSymbol ("Prelude","success"),CVar (2,"s"))] []]),+  CFunc ("EasyCheck","subset") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","null")) (CApply (CApply (CSymbol ("List","\\\\")) (CVar (0,"xs"))) (CVar (1,"ys"))))] []]),+  CFunc ("EasyCheck","suc") 1 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") [])) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (0,"a"))) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","forAll")) (CVar (0,"n"))) (CSymbol ("Prelude","unknown")))] []]),+  CFunc ("EasyCheck","successful") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CSymbol ("Prelude","null"))))] []]),+  CFunc ("EasyCheck","test") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("EasyCheck","setResult")) (CVar (3,"res"))) (CSymbol ("EasyCheck","notest")))) (CSymbol ("Prelude","[]")))] [CLocalPat (CPVar (2,"xs")) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (0,"x"))) [],CLocalPat (CPVar (3,"res")) (CCase (CApply (CSymbol ("EasyCheck","valuesOf")) (CApply (CVar (1,"f")) (CVar (2,"xs")))) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","True") [],CPComb ("Prelude","[]") []]) (CSymbol ("EasyCheck","Ok")),CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","False") [],CPComb ("Prelude","[]") []]) (CApply (CSymbol ("EasyCheck","Falsified")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","show"))) (CVar (2,"xs")))),CBranch (CPVar (4,"bs")) (CApply (CApply (CSymbol ("EasyCheck","Ambigious")) (CVar (4,"bs"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","show"))) (CVar (2,"xs"))))]) []]]),+  CFunc ("EasyCheck","tests") 5 Private (CFuncType (CTCons ("EasyCheck","Config") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("EasyCheck","Test") []]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"ntest"),CPVar (2,"_"),CPVar (3,"stamps")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","done")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'P'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]"))))))))) (CVar (1,"ntest"))) (CVar (3,"stamps")))] [],CRule [CPVar (4,"config"),CPComb ("Prelude",":") [CPVar (5,"t"),CPVar (6,"ts")],CPVar (7,"ntest"),CPVar (8,"nfail"),CPVar (9,"stamps")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"ntest"))) (CApply (CSymbol ("EasyCheck","maxTest")) (CVar (4,"config"))),CApply (CApply (CApply (CSymbol ("Prelude","done")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'K'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CSymbol ("Prelude","[]"))))))))))))) (CVar (7,"ntest"))) (CVar (9,"stamps"))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"nfail"))) (CApply (CSymbol ("EasyCheck","maxFail")) (CVar (4,"config"))),CApply (CApply (CApply (CSymbol ("Prelude","done")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))) (CVar (7,"ntest"))) (CVar (9,"stamps"))),(CSymbol ("Prelude","otherwise"),CDoExpr [CSExpr (CApply (CSymbol ("Prelude","putStr")) (CApply (CApply (CApply (CSymbol ("EasyCheck","every")) (CVar (4,"config"))) (CVar (7,"ntest"))) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))),CSExpr (CCase (CApply (CSymbol ("EasyCheck","result")) (CVar (5,"t"))) [CBranch (CPComb ("EasyCheck","Undef") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("EasyCheck","tests")) (CVar (4,"config"))) (CVar (6,"ts"))) (CVar (7,"ntest"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (8,"nfail"))) (CLit (CIntc 1)))) (CVar (9,"stamps"))),CBranch (CPComb ("EasyCheck","Ok") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("EasyCheck","tests")) (CVar (4,"config"))) (CVar (6,"ts"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"ntest"))) (CLit (CIntc 1)))) (CVar (8,"nfail"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("EasyCheck","stamp")) (CVar (5,"t")))) (CVar (9,"stamps")))),CBranch (CPComb ("EasyCheck","Falsified") [CPVar (10,"results")]) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStr"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("EasyCheck","nth")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"ntest"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","unlines")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (10,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CApply (CSymbol ("Prelude","unlines")) (CVar (10,"results")))))))))))),CBranch (CPComb ("EasyCheck","Ambigious") [CPVar (11,"bs"),CPVar (12,"results")]) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","putStr"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (11,"bs")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("EasyCheck","nth")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"ntest"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","unlines")) (CApply (CSymbol ("EasyCheck","args")) (CVar (5,"t"))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (12,"results")))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))))))) (CApply (CSymbol ("Prelude","unlines")) (CVar (12,"results"))))))))))))))])])] []]),+  CFunc ("EasyCheck","transpose") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","[]") [],CPVar (0,"xss")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","transpose")) (CVar (0,"xss")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"xss")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CListComp (CVar (4,"h")) [CSPat (CPComb ("Prelude",":") [CPVar (4,"h"),CPVar (5,"_")]) (CVar (3,"xss"))]))) (CApply (CSymbol ("EasyCheck","transpose")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"xs"))) (CListComp (CVar (7,"t")) [CSPat (CPComb ("Prelude",":") [CPVar (6,"_"),CPVar (7,"t")]) (CVar (3,"xss"))]))))] []]),+  CFunc ("EasyCheck","trivial") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","classify")) (CVar (0,"x0"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CSymbol ("Prelude","[]")))))))))))] []]),+  CFunc ("EasyCheck","uniquely") 0 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("EasyCheck","Prop") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("EasyCheck","is")) (CVar (0,"x0"))) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","updArgs") 2 Private (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Test") []))) (CRules CFlex [CRule [CPVar (0,"upd"),CPComb ("EasyCheck","Test") [CPVar (1,"r"),CPVar (2,"a"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CVar (1,"r"))) (CApply (CVar (0,"upd")) (CVar (2,"a")))) (CVar (3,"s")))] []]),+  CFunc ("EasyCheck","updStamp") 2 Private (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CFuncType (CTCons ("EasyCheck","Test") []) (CTCons ("EasyCheck","Test") []))) (CRules CFlex [CRule [CPVar (0,"upd"),CPComb ("EasyCheck","Test") [CPVar (1,"r"),CPVar (2,"a"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("EasyCheck","Test")) (CVar (1,"r"))) (CVar (2,"a"))) (CApply (CVar (0,"upd")) (CVar (3,"s"))))] []]),+  CFunc ("EasyCheck","valuesOf") 0 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CApply (CSymbol ("EasyCheck","rndLevelDiagFlat")) (CLit (CIntc 3))) (CLit (CIntc 2008)))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Meta","searchTree"))) (CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","id"))) (CVar (0,"x0"))))))] []]),+  CFunc ("EasyCheck","verbose") 0 Private (CTCons ("EasyCheck","Config") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","setEvery")) (CLambda [CPVar (0,"n"),CPVar (1,"xs")] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","unlines")) (CVar (1,"xs"))))))) (CSymbol ("EasyCheck","easy")))] []]),+  CFunc ("EasyCheck","verboseCheck") 0 Public (CFuncType (CTCons ("EasyCheck","Prop") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("EasyCheck","check")) (CSymbol ("EasyCheck","verbose")))] []]),+  CFunc ("EasyCheck","verboseCheck1") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))] []]),+  CFunc ("EasyCheck","verboseCheck2") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") []))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))] []]),+  CFunc ("EasyCheck","verboseCheck3") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))] []]),+  CFunc ("EasyCheck","verboseCheck4") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") []))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id")))))))] []]),+  CFunc ("EasyCheck","verboseCheck5") 0 Public (CFuncType (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (0,"_")) (CTCons ("EasyCheck","Prop") [])))))) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("EasyCheck","verboseCheck"))) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CApply (CSymbol ("EasyCheck","suc")) (CSymbol ("Prelude","id"))))))))] []]),+  CFunc ("EasyCheck","~>") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("EasyCheck","Prop") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("EasyCheck","test")) (CVar (0,"x"))) (CApply (CSymbol ("EasyCheck","isSubsetOf")) (CApply (CSymbol ("EasyCheck","valuesOf")) (CVar (1,"y")))))] []])]+ [COp ("EasyCheck","isSubsetOf") CInfixOp 4,COp ("EasyCheck","isSameSet") CInfixOp 4,COp ("EasyCheck","trivial") CInfixOp 1,COp ("EasyCheck","<~") CInfixOp 1,COp ("EasyCheck","~>") CInfixOp 1,COp ("EasyCheck","<~>") CInfixOp 1,COp ("EasyCheck","#") CInfixOp 1,COp ("EasyCheck","-=-") CInfixOp 1,COp ("EasyCheck","isEventually") CInfixOp 1,COp ("EasyCheck","isAlways") CInfixOp 1,COp ("EasyCheck","is") CInfixOp 1,COp ("EasyCheck","==>") CInfixrOp 0]
+ src/lib/Curry/Module/.curry/FileGoodies.acy view
@@ -0,0 +1,19 @@+CurryProg "FileGoodies"+ ["Prelude","Directory","List"]+ []+ [CFunc ("FileGoodies","baseName") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","snd")) (CApply (CSymbol ("FileGoodies","splitDirectoryBaseName")) (CVar (0,"name"))))] []]),+  CFunc ("FileGoodies","dirName") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","fst")) (CApply (CSymbol ("FileGoodies","splitDirectoryBaseName")) (CVar (0,"name"))))] []]),+  CFunc ("FileGoodies","fileSuffix") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","snd"))) (CSymbol ("FileGoodies","splitBaseName")))] []]),+  CFunc ("FileGoodies","findFileInPath") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FileGoodies","lookupFileInPath"))] []]),+  CFunc ("FileGoodies","getFileInPath") 3 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"suffixes"),CPVar (2,"path")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"mbfile")) (CApply (CApply (CApply (CSymbol ("FileGoodies","lookupFileInPath")) (CVar (0,"file"))) (CVar (1,"suffixes"))) (CVar (2,"path"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","error"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"file"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CSymbol ("List","intersperse")) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("FileGoodies","pathSeparatorChar"))) (CSymbol ("Prelude","[]")))) (CVar (2,"path"))))))))) (CSymbol ("Prelude","return"))) (CVar (3,"mbfile")))])] []]),+  CFunc ("FileGoodies","isAbsolute") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("FileGoodies","separatorChar")))] []]),+  CFunc ("FileGoodies","lookupFileInPath") 3 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"suffixes"),CPVar (2,"path")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FileGoodies","isAbsolute")) (CVar (0,"file")))) (CApply (CApply (CSymbol ("FileGoodies","lookupFirstFileWithSuffix")) (CVar (0,"file"))) (CVar (1,"suffixes")))) (CApply (CSymbol ("FileGoodies","lookupFirstFile")) (CVar (2,"path"))))] [CLocalFunc (CFunc ("FileGoodies","lookupFirstFile") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","Nothing")))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"dir"),CPVar (4,"dirs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (5,"mbfile")) (CApply (CApply (CSymbol ("FileGoodies","lookupFirstFileWithSuffix")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (3,"dir"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("FileGoodies","separatorChar"))) (CVar (0,"file"))))) (CVar (1,"suffixes"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CSymbol ("FileGoodies","lookupFirstFile")) (CVar (4,"dirs")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CSymbol ("Prelude","Just")))) (CVar (5,"mbfile")))])] []])),CLocalFunc (CFunc ("FileGoodies","lookupFirstFileWithSuffix") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CRules CFlex [CRule [CPVar (3,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","Nothing")))] [],CRule [CPVar (4,"f"),CPComb ("Prelude",":") [CPVar (5,"suf"),CPVar (6,"sufs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSLet [CLocalPat (CPVar (7,"fsuf")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"f"))) (CVar (5,"suf"))) []],CSPat (CPVar (8,"exfile")) (CApply (CSymbol ("Directory","doesFileExist")) (CVar (7,"fsuf"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (8,"exfile"))) (CApply (CSymbol ("Prelude","return")) (CApply (CSymbol ("Prelude","Just")) (CVar (7,"fsuf"))))) (CApply (CApply (CSymbol ("FileGoodies","lookupFirstFileWithSuffix")) (CVar (4,"f"))) (CVar (6,"sufs"))))])] []]))]]),+  CFunc ("FileGoodies","pathSeparatorChar") 0 Public (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CCharc ':'))] []]),+  CFunc ("FileGoodies","replaceFileName") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"dir"),CPVar (3,"fn")]) (CApply (CSymbol ("FileGoodies","splitDirectoryBaseName")) (CVar (1,"s"))) []] (CCase (CVar (2,"dir")) [CBranch (CPComb ("Prelude",":") [CPLit (CCharc '.'),CPComb ("Prelude","[]") []]) (CApply (CVar (0,"f")) (CVar (3,"fn"))),CBranch (CPVar (4,"_")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"dir"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("FileGoodies","separatorChar"))) (CApply (CVar (0,"f")) (CVar (3,"fn")))))]))] []]),+  CFunc ("FileGoodies","separatorChar") 0 Public (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CCharc '/'))] []]),+  CFunc ("FileGoodies","splitBaseName") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (1,"rsuffix"),CPVar (2,"rbase")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CSymbol ("FileGoodies","suffixSeparatorChar"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (0,"name")))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","null")) (CVar (2,"rbase")))) (CApply (CApply (CSymbol ("Prelude","elem")) (CSymbol ("FileGoodies","separatorChar"))) (CVar (1,"rsuffix"))))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"name"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","reverse")) (CApply (CSymbol ("Prelude","tail")) (CVar (2,"rbase"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (1,"rsuffix"))))))] []]),+  CFunc ("FileGoodies","splitDirectoryBaseName") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (1,"rbase"),CPVar (2,"rdir")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CSymbol ("FileGoodies","separatorChar"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (0,"name")))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (2,"rdir")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Prelude","reverse")) (CVar (1,"rbase"))))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","reverse")) (CApply (CSymbol ("Prelude","tail")) (CVar (2,"rdir"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (1,"rbase"))))))] []]),+  CFunc ("FileGoodies","splitPath") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"ys"),CPVar (3,"zs")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (4,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"x0"))) (CSymbol ("FileGoodies","pathSeparatorChar"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (1,"xs")))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"zs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"ys"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"ys"))) (CApply (CSymbol ("FileGoodies","splitPath")) (CApply (CSymbol ("Prelude","tail")) (CVar (3,"zs")))))))] []]),+  CFunc ("FileGoodies","stripSuffix") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","fst"))) (CSymbol ("FileGoodies","splitBaseName")))] []]),+  CFunc ("FileGoodies","suffixSeparatorChar") 0 Public (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CCharc '.'))] []])]+ []
+ src/lib/Curry/Module/.curry/FileGoodies.cy view
@@ -0,0 +1,36 @@+Module "FileGoodies"+(Just (Exporting (8,19) [(Export (QualIdent Nothing (Ident "separatorChar" 0))),(Export (QualIdent Nothing (Ident "pathSeparatorChar" 0))),(Export (QualIdent Nothing (Ident "suffixSeparatorChar" 0))),(Export (QualIdent Nothing (Ident "isAbsolute" 0))),(Export (QualIdent Nothing (Ident "dirName" 0))),(Export (QualIdent Nothing (Ident "baseName" 0))),(Export (QualIdent Nothing (Ident "splitDirectoryBaseName" 0))),(Export (QualIdent Nothing (Ident "stripSuffix" 0))),(Export (QualIdent Nothing (Ident "fileSuffix" 0))),(Export (QualIdent Nothing (Ident "splitBaseName" 0))),(Export (QualIdent Nothing (Ident "splitPath" 0))),(Export (QualIdent Nothing (Ident "findFileInPath" 0))),(Export (QualIdent Nothing (Ident "lookupFileInPath" 0))),(Export (QualIdent Nothing (Ident "getFileInPath" 0))),(Export (QualIdent Nothing (Ident "replaceFileName" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (14,1) "Directory" False Nothing Nothing)+,(ImportDecl (15,1) "List" False Nothing (Just (Importing (15,12) [(Import (Ident "intersperse" 0))])))+,(TypeSig (19,1) [(Ident "separatorChar" 0)] (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []))+,(FunctionDecl (20,1) (Ident "separatorChar" 0) [(Equation (20,1) (FunLhs (Ident "separatorChar" 0) []) (SimpleRhs (20,17) (Literal (Char '/')) []))])+,(TypeSig (24,1) [(Ident "pathSeparatorChar" 0)] (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []))+,(FunctionDecl (25,1) (Ident "pathSeparatorChar" 0) [(Equation (25,1) (FunLhs (Ident "pathSeparatorChar" 0) []) (SimpleRhs (25,21) (Literal (Char ':')) []))])+,(TypeSig (29,1) [(Ident "suffixSeparatorChar" 0)] (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []))+,(FunctionDecl (30,1) (Ident "suffixSeparatorChar" 0) [(Equation (30,1) (FunLhs (Ident "suffixSeparatorChar" 0) []) (SimpleRhs (30,23) (Literal (Char '.')) []))])+,(TypeSig (33,1) [(Ident "isAbsolute" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (34,1) (Ident "isAbsolute" 0) [(Equation (34,1) (FunLhs (Ident "isAbsolute" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 8)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 9))))]) (SimpleRhs (34,20) (InfixApply (Variable (QualIdent Nothing (Ident "c" 8))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "separatorChar" 0)))) []))])+,(TypeSig (38,1) [(Ident "dirName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (39,1) (Ident "dirName" 0) [(Equation (39,1) (FunLhs (Ident "dirName" 0) [(VariablePattern (Ident "name" 11))]) (SimpleRhs (39,16) (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Paren (Apply (Variable (QualIdent (Just "FileGoodies") (Ident "splitDirectoryBaseName" 0))) (Variable (QualIdent Nothing (Ident "name" 11)))))) []))])+,(TypeSig (42,1) [(Ident "baseName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (43,1) (Ident "baseName" 0) [(Equation (43,1) (FunLhs (Ident "baseName" 0) [(VariablePattern (Ident "name" 13))]) (SimpleRhs (43,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Paren (Apply (Variable (QualIdent (Just "FileGoodies") (Ident "splitDirectoryBaseName" 0))) (Variable (QualIdent Nothing (Ident "name" 13)))))) []))])+,(TypeSig (47,1) [(Ident "splitDirectoryBaseName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (48,1) (Ident "splitDirectoryBaseName" 0) [(Equation (48,1) (FunLhs (Ident "splitDirectoryBaseName" 0) [(VariablePattern (Ident "name" 15))]) (SimpleRhs (49,3) (Let [(PatternDecl (49,7) (TuplePattern [(VariablePattern (Ident "rbase" 17)),(VariablePattern (Ident "rdir" 17))]) (SimpleRhs (49,22) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "separatorChar" 0))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "name" 15)))))) []))] (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "rdir" 17)))) (Tuple [(Literal (String ".")),(Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "rbase" 17))))]) (Tuple [(Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "rdir" 17)))))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "rbase" 17))))]))) []))])+,(TypeSig (54,1) [(Ident "stripSuffix" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (55,1) (Ident "stripSuffix" 0) [(Equation (55,1) (FunLhs (Ident "stripSuffix" 0) []) (SimpleRhs (55,15) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "splitBaseName" 0)))) []))])+,(TypeSig (58,1) [(Ident "fileSuffix" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (59,1) (Ident "fileSuffix" 0) [(Equation (59,1) (FunLhs (Ident "fileSuffix" 0) []) (SimpleRhs (59,14) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "splitBaseName" 0)))) []))])+,(TypeSig (63,1) [(Ident "splitBaseName" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (64,1) (Ident "splitBaseName" 0) [(Equation (64,1) (FunLhs (Ident "splitBaseName" 0) [(VariablePattern (Ident "name" 23))]) (SimpleRhs (64,22) (Let [(PatternDecl (64,26) (TuplePattern [(VariablePattern (Ident "rsuffix" 25)),(VariablePattern (Ident "rbase" 25))]) (SimpleRhs (64,44) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "suffixSeparatorChar" 0))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "name" 23)))))) []))] (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "rbase" 25)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "separatorChar" 0)))) (Variable (QualIdent Nothing (Ident "rsuffix" 25))))) (Tuple [(Variable (QualIdent Nothing (Ident "name" 23))),(Literal (String ""))]) (Tuple [(Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "rbase" 25)))))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "reverse" 0))) (Variable (QualIdent Nothing (Ident "rsuffix" 25))))]))) []))])+,(TypeSig (70,1) [(Ident "splitPath" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (71,1) (Ident "splitPath" 0) [(Equation (71,1) (FunLhs (Ident "splitPath" 0) [(ListPattern [])]) (SimpleRhs (71,16) (List []) [])),(Equation (72,1) (FunLhs (Ident "splitPath" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 29)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 29))))]) (SimpleRhs (72,20) (Let [(PatternDecl (72,24) (TuplePattern [(VariablePattern (Ident "ys" 31)),(VariablePattern (Ident "zs" 31))]) (SimpleRhs (72,34) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent (Just "FileGoodies") (Ident "pathSeparatorChar" 0))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 29))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 29)))))) []))] (IfThenElse (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "zs" 31)))) (List [(Variable (QualIdent Nothing (Ident "ys" 31)))]) (InfixApply (Variable (QualIdent Nothing (Ident "ys" 31))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "FileGoodies") (Ident "splitPath" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "zs" 31))))))))) []))])+,(TypeSig (78,1) [(Ident "findFileInPath" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])])))))+,(FunctionDecl (79,1) (Ident "findFileInPath" 0) [(Equation (79,1) (FunLhs (Ident "findFileInPath" 0) []) (SimpleRhs (79,18) (Variable (QualIdent (Just "FileGoodies") (Ident "lookupFileInPath" 0))) []))])+,(TypeSig (83,1) [(Ident "lookupFileInPath" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])])))))+,(FunctionDecl (84,1) (Ident "lookupFileInPath" 0) [(Equation (84,1) (FunLhs (Ident "lookupFileInPath" 0) [(VariablePattern (Ident "file" 35)),(VariablePattern (Ident "suffixes" 35)),(VariablePattern (Ident "path" 35))]) (SimpleRhs (85,3) (IfThenElse (Apply (Variable (QualIdent (Just "FileGoodies") (Ident "isAbsolute" 0))) (Variable (QualIdent Nothing (Ident "file" 35)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "lookupFirstFileWithSuffix" 36))) (Variable (QualIdent Nothing (Ident "file" 35)))) (Variable (QualIdent Nothing (Ident "suffixes" 35)))) (Apply (Variable (QualIdent Nothing (Ident "lookupFirstFile" 36))) (Variable (QualIdent Nothing (Ident "path" 35))))) [(FunctionDecl (89,4) (Ident "lookupFirstFile" 36) [(Equation (89,4) (FunLhs (Ident "lookupFirstFile" 36) [(ListPattern [])]) (SimpleRhs (89,25) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0)))) [])),(Equation (90,4) (FunLhs (Ident "lookupFirstFile" 36) [(ParenPattern (InfixPattern (VariablePattern (Ident "dir" 39)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "dirs" 39))))]) (SimpleRhs (90,33) (Do [(StmtBind (VariablePattern (Ident "mbfile" 41)) (Apply (Apply (Variable (QualIdent Nothing (Ident "lookupFirstFileWithSuffix" 36))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "dir" 39))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent (Just "FileGoodies") (Ident "separatorChar" 0))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "file" 35))))))) (Variable (QualIdent Nothing (Ident "suffixes" 35)))))] (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "lookupFirstFile" 36))) (Variable (QualIdent Nothing (Ident "dirs" 39)))))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0)))))) (Variable (QualIdent Nothing (Ident "mbfile" 41))))) []))]),(FunctionDecl (94,4) (Ident "lookupFirstFileWithSuffix" 36) [(Equation (94,4) (FunLhs (Ident "lookupFirstFileWithSuffix" 36) [(VariablePattern (Ident "_" 43)),(ListPattern [])]) (SimpleRhs (94,37) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0)))) [])),(Equation (95,4) (FunLhs (Ident "lookupFirstFileWithSuffix" 36) [(VariablePattern (Ident "f" 45)),(ParenPattern (InfixPattern (VariablePattern (Ident "suf" 45)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "sufs" 45))))]) (SimpleRhs (95,45) (Do [(StmtDecl [(PatternDecl (96,10) (VariablePattern (Ident "fsuf" 47)) (SimpleRhs (96,17) (InfixApply (Variable (QualIdent Nothing (Ident "f" 45))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "suf" 45)))) []))]),(StmtBind (VariablePattern (Ident "exfile" 49)) (Apply (Variable (QualIdent (Just "Directory") (Ident "doesFileExist" 0))) (Variable (QualIdent Nothing (Ident "fsuf" 47)))))] (IfThenElse (Variable (QualIdent Nothing (Ident "exfile" 49))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Variable (QualIdent Nothing (Ident "fsuf" 47)))))) (Apply (Apply (Variable (QualIdent Nothing (Ident "lookupFirstFileWithSuffix" 36))) (Variable (QualIdent Nothing (Ident "f" 45)))) (Variable (QualIdent Nothing (Ident "sufs" 45)))))) []))])]))])+,(TypeSig (103,1) [(Ident "getFileInPath" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FunctionDecl (104,1) (Ident "getFileInPath" 0) [(Equation (104,1) (FunLhs (Ident "getFileInPath" 0) [(VariablePattern (Ident "file" 50)),(VariablePattern (Ident "suffixes" 50)),(VariablePattern (Ident "path" 50))]) (SimpleRhs (104,36) (Do [(StmtBind (VariablePattern (Ident "mbfile" 52)) (Apply (Apply (Apply (Variable (QualIdent (Just "FileGoodies") (Ident "lookupFileInPath" 0))) (Variable (QualIdent Nothing (Ident "file" 50)))) (Variable (QualIdent Nothing (Ident "suffixes" 50)))) (Variable (QualIdent Nothing (Ident "path" 50)))))] (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Literal (String "File ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "file" 50))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " not found in path ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (List [(Variable (QualIdent (Just "FileGoodies") (Ident "pathSeparatorChar" 0)))])) (Variable (QualIdent Nothing (Ident "path" 50)))))))))))) (Variable (QualIdent (Just "Prelude") (Ident "return" 0)))) (Variable (QualIdent Nothing (Ident "mbfile" 52))))) []))])+,(TypeSig (112,1) [(Ident "replaceFileName" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (113,1) (Ident "replaceFileName" 0) [(Equation (113,1) (FunLhs (Ident "replaceFileName" 0) [(VariablePattern (Ident "f" 53)),(VariablePattern (Ident "s" 53))]) (SimpleRhs (113,23) (Let [(PatternDecl (113,27) (TuplePattern [(VariablePattern (Ident "dir" 55)),(VariablePattern (Ident "fn" 55))]) (SimpleRhs (113,38) (Apply (Variable (QualIdent (Just "FileGoodies") (Ident "splitDirectoryBaseName" 0))) (Variable (QualIdent Nothing (Ident "s" 53)))) []))] (Case (Variable (QualIdent Nothing (Ident "dir" 55))) [(Alt (115,23) (LiteralPattern (String ".")) (SimpleRhs (115,30) (Apply (Variable (QualIdent Nothing (Ident "f" 53))) (Variable (QualIdent Nothing (Ident "fn" 55)))) [])),(Alt (116,23) (VariablePattern (Ident "_" 60)) (SimpleRhs (116,30) (InfixApply (Variable (QualIdent Nothing (Ident "dir" 55))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent (Just "FileGoodies") (Ident "separatorChar" 0))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "f" 53))) (Variable (QualIdent Nothing (Ident "fn" 55)))))) []))])) []))])+]
+ src/lib/Curry/Module/.curry/FileGoodies.efc view
@@ -0,0 +1,1 @@+Prog "FileGoodies" ["Directory","List","Prelude"] [] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) 0 Public (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Lit (Charc  '/'))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","pathSeparatorChar")) 0 Public (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Lit (Charc  ':'))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","suffixSeparatorChar")) 0 Public (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Lit (Charc  '.'))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FileGoodies","isAbsolute")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","dirName")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","fst")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitDirectoryBaseName")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","baseName")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","snd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitDirectoryBaseName")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitDirectoryBaseName")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Let [((Just (TVar 3),2),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 15) (TVar 16)) (FuncType (TVar 15) (TVar 16))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 11) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 11],TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 8) (FuncType (TVar 9) (TVar 10))) (FuncType (TVar 9) (FuncType (TVar 8) (TVar 10)))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 7) (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) []]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 13) (TVar 14)) (FuncType (TVar 13) (TVar 14))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 12]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 12])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitDirectoryBaseName._#selFP3#rbase")) [Var ((Just (TVar 3),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitDirectoryBaseName._#selFP4#rdir")) [Var ((Just (TVar 3),2))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","reverse")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitDirectoryBaseName._#selFP3#rbase")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitDirectoryBaseName._#selFP4#rdir")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","stripSuffix")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","fst")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitBaseName")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","fileSuffix")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","snd")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitBaseName")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitBaseName")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Let [((Just (TVar 3),2),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 15) (TVar 16)) (FuncType (TVar 15) (TVar 16))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 11) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 11],TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 8) (FuncType (TVar 9) (TVar 10))) (FuncType (TVar 9) (FuncType (TVar 8) (TVar 10)))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 7) (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","suffixSeparatorChar")) []]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 13) (TVar 14)) (FuncType (TVar 13) (TVar 14))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 12]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 12])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitBaseName._#selFP6#rsuffix")) [Var ((Just (TVar 3),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitBaseName._#selFP7#rbase")) [Var ((Just (TVar 3),2))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 21) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (TVar 21),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","reverse")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","reverse")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitBaseName._#selFP6#rsuffix")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitBaseName._#selFP7#rbase")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitPath")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Let [((Just (TVar 7),4),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 16) (TVar 17)) (FuncType (TVar 16) (TVar 17))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 14) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 14]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 14],TCons (Nothing,Nothing,"Prelude","[]") [TVar 14]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 11) (FuncType (TVar 12) (TVar 13))) (FuncType (TVar 12) (FuncType (TVar 11) (TVar 13)))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 10) (FuncType (TVar 10) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","pathSeparatorChar")) []]],Comb ConsCall ((Nothing,Just (FuncType (TVar 15) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitPath._#selFP9#ys")) [Var ((Just (TVar 7),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitPath._#selFP10#zs")) [Var ((Just (TVar 7),4))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitPath")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]]])]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitPath._#selFP9#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","splitPath._#selFP10#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","findFileInPath")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])))) (Rule [] (Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","lookupFileInPath")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","lookupFileInPath")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FileGoodies","isAbsolute")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","lookupFileInPath.lookupFirstFile.36")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","Nothing")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","doesFileExist")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))))),"FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))]]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))))),"FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36._#lambda3")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","Just")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","lookupFileInPath.lookupFirstFile.36")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","Nothing")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))))),"FileGoodies","lookupFileInPath.lookupFirstFile.36._#lambda2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))))),"FileGoodies","lookupFileInPath.lookupFirstFile.36._#lambda2")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"Prelude","maybe")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","lookupFileInPath.lookupFirstFile.36")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Prelude","return")) [],Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","Just")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"FileGoodies","getFileInPath")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"FileGoodies","lookupFileInPath")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"FileGoodies","getFileInPath._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"FileGoodies","getFileInPath._#lambda4")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2),(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"Prelude","maybe")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","error")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","concat")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"List","intersperse")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","pathSeparatorChar")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),2))]]]]]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"FileGoodies","replaceFileName")) 2 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Let [((Just (TVar 2),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"FileGoodies","splitDirectoryBaseName")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","replaceFileName._#selFP12#dir")) [Var ((Just (TVar 2),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","replaceFileName._#selFP13#fn")) [Var ((Just (TVar 2),3))])] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),6)),Lit (Charc  '.')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))]]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))]]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"FileGoodies","separatorChar")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))]]])]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","replaceFileName._#selFP12#dir")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"FileGoodies","replaceFileName._#selFP13#fn")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))]))] []
+ src/lib/Curry/Module/.curry/FileGoodies.fcy view
@@ -0,0 +1,1 @@+Prog "FileGoodies" ["Directory","List","Prelude"] [] [Func ("FileGoodies","separatorChar") 0 Public (TCons ("Prelude","Char") []) (Rule [] (Lit (Charc  '/'))),Func ("FileGoodies","pathSeparatorChar") 0 Public (TCons ("Prelude","Char") []) (Rule [] (Lit (Charc  ':'))),Func ("FileGoodies","suffixSeparatorChar") 0 Public (TCons ("Prelude","Char") []) (Rule [] (Lit (Charc  '.'))),Func ("FileGoodies","isAbsolute") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Comb FuncCall ("Prelude","==") [Var 2,Comb FuncCall ("FileGoodies","separatorChar") []])])),Func ("FileGoodies","dirName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","fst") [Comb FuncCall ("FileGoodies","splitDirectoryBaseName") [Var 1]])),Func ("FileGoodies","baseName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","snd") [Comb FuncCall ("FileGoodies","splitDirectoryBaseName") [Var 1]])),Func ("FileGoodies","splitDirectoryBaseName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Let [(2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","==") [],Comb FuncCall ("FileGoodies","separatorChar") []]],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 1]])] (Let [(3,Comb FuncCall ("FileGoodies","splitDirectoryBaseName._#selFP3#rbase") [Var 2])] (Let [(4,Comb FuncCall ("FileGoodies","splitDirectoryBaseName._#selFP4#rdir") [Var 2])] (Case  Rigid (Comb FuncCall ("Prelude","null") [Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 3]]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Comb FuncCall ("Prelude","tail") [Var 4]],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 3]])]))))),Func ("FileGoodies","splitDirectoryBaseName._#selFP3#rbase") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("FileGoodies","splitDirectoryBaseName._#selFP4#rdir") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("FileGoodies","stripSuffix") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","fst") [],Comb (FuncPartCall 1) ("FileGoodies","splitBaseName") []])),Func ("FileGoodies","fileSuffix") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","snd") [],Comb (FuncPartCall 1) ("FileGoodies","splitBaseName") []])),Func ("FileGoodies","splitBaseName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Let [(2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","==") [],Comb FuncCall ("FileGoodies","suffixSeparatorChar") []]],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 1]])] (Let [(3,Comb FuncCall ("FileGoodies","splitBaseName._#selFP6#rsuffix") [Var 2])] (Let [(4,Comb FuncCall ("FileGoodies","splitBaseName._#selFP7#rbase") [Var 2])] (Case  Rigid (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","null") [Var 4],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Comb FuncCall ("FileGoodies","separatorChar") []],Var 3]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Var 1,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Comb FuncCall ("Prelude","tail") [Var 4]],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","reverse") [],Var 3]])]))))),Func ("FileGoodies","splitBaseName._#selFP6#rsuffix") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("FileGoodies","splitBaseName._#selFP7#rbase") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("FileGoodies","splitPath") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Let [(4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","==") [],Comb FuncCall ("FileGoodies","pathSeparatorChar") []]],Comb ConsCall ("Prelude",":") [Var 2,Var 3]])] (Let [(5,Comb FuncCall ("FileGoodies","splitPath._#selFP9#ys") [Var 4])] (Let [(6,Comb FuncCall ("FileGoodies","splitPath._#selFP10#zs") [Var 4])] (Case  Rigid (Comb FuncCall ("Prelude","null") [Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 5,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("FileGoodies","splitPath") [Comb FuncCall ("Prelude","tail") [Var 6]]])]))))])),Func ("FileGoodies","splitPath._#selFP9#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("FileGoodies","splitPath._#selFP10#zs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("FileGoodies","findFileInPath") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])))) (Rule [] (Comb (FuncPartCall 3) ("FileGoodies","lookupFileInPath") [])),Func ("FileGoodies","lookupFileInPath") 3 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("FileGoodies","isAbsolute") [Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36") [Var 1,Var 2]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FileGoodies","lookupFileInPath.lookupFirstFile.36") [Var 1,Var 2,Var 3])])),Func ("FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","Nothing") []]),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Prelude","++") [Var 1,Var 3])] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Directory","doesFileExist") [Var 5],Comb (FuncPartCall 1) ("FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36._#lambda3") [Var 1,Var 5,Var 4]]))])),Func ("FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36._#lambda3") 4 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))))) (Rule [1,2,3,4] (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","Just") [Var 2]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36") [Var 1,Var 3])])),Func ("FileGoodies","lookupFileInPath.lookupFirstFile.36") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","Nothing") []]),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("FileGoodies","lookupFileInPath.lookupFirstFileWithSuffix.36") [Comb FuncCall ("Prelude","++") [Var 4,Comb ConsCall ("Prelude",":") [Comb FuncCall ("FileGoodies","separatorChar") [],Var 1]],Var 2],Comb (FuncPartCall 1) ("FileGoodies","lookupFileInPath.lookupFirstFile.36._#lambda2") [Var 5,Var 1,Var 2]])])),Func ("FileGoodies","lookupFileInPath.lookupFirstFile.36._#lambda2") 4 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))))) (Rule [1,2,3,4] (Comb FuncCall ("Prelude","maybe") [Comb FuncCall ("FileGoodies","lookupFileInPath.lookupFirstFile.36") [Var 2,Var 3,Var 1],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","return") [],Comb (ConsPartCall 1) ("Prelude","Just") []],Var 4])),Func ("FileGoodies","getFileInPath") 3 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("FileGoodies","lookupFileInPath") [Var 1,Var 2,Var 3],Comb (FuncPartCall 1) ("FileGoodies","getFileInPath._#lambda4") [Var 1,Var 3]])),Func ("FileGoodies","getFileInPath._#lambda4") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","maybe") [Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","error") [],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]],Comb FuncCall ("Prelude","++") [Var 1,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","concat") [Comb FuncCall ("List","intersperse") [Comb ConsCall ("Prelude",":") [Comb FuncCall ("FileGoodies","pathSeparatorChar") [],Comb ConsCall ("Prelude","[]") []],Var 2]]]]]],Comb (FuncPartCall 1) ("Prelude","return") [],Var 3])),Func ("FileGoodies","replaceFileName") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("FileGoodies","splitDirectoryBaseName") [Var 2])] (Let [(4,Comb FuncCall ("FileGoodies","replaceFileName._#selFP12#dir") [Var 3])] (Let [(5,Comb FuncCall ("FileGoodies","replaceFileName._#selFP13#fn") [Var 3])] (Case  Rigid (Var 4) [Branch (Pattern ("Prelude",":") [6,7]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 6,Lit (Charc  '.')]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Var 7) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","apply") [Var 1,Var 5]),Branch (Pattern ("Prelude",":") [8,9]) (Comb FuncCall ("Prelude","++") [Var 4,Comb ConsCall ("Prelude",":") [Comb FuncCall ("FileGoodies","separatorChar") [],Comb FuncCall ("Prelude","apply") [Var 1,Var 5]]])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","++") [Var 4,Comb ConsCall ("Prelude",":") [Comb FuncCall ("FileGoodies","separatorChar") [],Comb FuncCall ("Prelude","apply") [Var 1,Var 5]]])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","++") [Var 4,Comb ConsCall ("Prelude",":") [Comb FuncCall ("FileGoodies","separatorChar") [],Comb FuncCall ("Prelude","apply") [Var 1,Var 5]]])]))))),Func ("FileGoodies","replaceFileName._#selFP12#dir") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("FileGoodies","replaceFileName._#selFP13#fn") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)]))] []
+ src/lib/Curry/Module/.curry/FileGoodies.fint view
@@ -0,0 +1,1 @@+Prog "FileGoodies" ["Directory","List","Prelude"] [] [Func ("FileGoodies","separatorChar") 0 Public (TCons ("Prelude","Char") []) (Rule [] (Var 0)),Func ("FileGoodies","pathSeparatorChar") 0 Public (TCons ("Prelude","Char") []) (Rule [] (Var 0)),Func ("FileGoodies","suffixSeparatorChar") 0 Public (TCons ("Prelude","Char") []) (Rule [] (Var 0)),Func ("FileGoodies","isAbsolute") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("FileGoodies","dirName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("FileGoodies","baseName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("FileGoodies","splitDirectoryBaseName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("FileGoodies","stripSuffix") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("FileGoodies","fileSuffix") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("FileGoodies","splitBaseName") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("FileGoodies","splitPath") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("FileGoodies","findFileInPath") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])))) (Rule [] (Var 0)),Func ("FileGoodies","lookupFileInPath") 3 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])))) (Rule [] (Var 0)),Func ("FileGoodies","getFileInPath") 3 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])))) (Rule [] (Var 0)),Func ("FileGoodies","replaceFileName") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/FileGoodies.uacy view
@@ -0,0 +1,19 @@+CurryProg "FileGoodies"+ ["Prelude","Directory","List"]+ []+ [CFunc ("FileGoodies","baseName") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","snd")) (CApply (CSymbol ("FileGoodies","splitDirectoryBaseName")) (CVar (0,"name"))))] []]),+  CFunc ("FileGoodies","dirName") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","fst")) (CApply (CSymbol ("FileGoodies","splitDirectoryBaseName")) (CVar (0,"name"))))] []]),+  CFunc ("FileGoodies","fileSuffix") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","snd"))) (CSymbol ("FileGoodies","splitBaseName")))] []]),+  CFunc ("FileGoodies","findFileInPath") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","String") []]])))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FileGoodies","lookupFileInPath"))] []]),+  CFunc ("FileGoodies","getFileInPath") 3 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"suffixes"),CPVar (2,"path")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"mbfile")) (CApply (CApply (CApply (CSymbol ("FileGoodies","lookupFileInPath")) (CVar (0,"file"))) (CVar (1,"suffixes"))) (CVar (2,"path"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","error"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"file"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))) (CApply (CSymbol ("Prelude","concat")) (CApply (CApply (CSymbol ("List","intersperse")) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("FileGoodies","pathSeparatorChar"))) (CSymbol ("Prelude","[]")))) (CVar (2,"path"))))))))) (CSymbol ("Prelude","return"))) (CVar (3,"mbfile")))])] []]),+  CFunc ("FileGoodies","isAbsolute") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("FileGoodies","separatorChar")))] []]),+  CFunc ("FileGoodies","lookupFileInPath") 3 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","String") []]])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"suffixes"),CPVar (2,"path")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FileGoodies","isAbsolute")) (CVar (0,"file")))) (CApply (CApply (CSymbol ("FileGoodies","lookupFirstFileWithSuffix")) (CVar (0,"file"))) (CVar (1,"suffixes")))) (CApply (CSymbol ("FileGoodies","lookupFirstFile")) (CVar (2,"path"))))] [CLocalFunc (CFunc ("FileGoodies","lookupFirstFile") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","Nothing")))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"dir"),CPVar (4,"dirs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (5,"mbfile")) (CApply (CApply (CSymbol ("FileGoodies","lookupFirstFileWithSuffix")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (3,"dir"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("FileGoodies","separatorChar"))) (CVar (0,"file"))))) (CVar (1,"suffixes"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CSymbol ("FileGoodies","lookupFirstFile")) (CVar (4,"dirs")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CSymbol ("Prelude","Just")))) (CVar (5,"mbfile")))])] []])),CLocalFunc (CFunc ("FileGoodies","lookupFirstFileWithSuffix") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","Nothing")))] [],CRule [CPVar (4,"f"),CPComb ("Prelude",":") [CPVar (5,"suf"),CPVar (6,"sufs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSLet [CLocalPat (CPVar (7,"fsuf")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"f"))) (CVar (5,"suf"))) []],CSPat (CPVar (8,"exfile")) (CApply (CSymbol ("Directory","doesFileExist")) (CVar (7,"fsuf"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (8,"exfile"))) (CApply (CSymbol ("Prelude","return")) (CApply (CSymbol ("Prelude","Just")) (CVar (7,"fsuf"))))) (CApply (CApply (CSymbol ("FileGoodies","lookupFirstFileWithSuffix")) (CVar (4,"f"))) (CVar (6,"sufs"))))])] []]))]]),+  CFunc ("FileGoodies","pathSeparatorChar") 0 Public (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CCharc ':'))] []]),+  CFunc ("FileGoodies","replaceFileName") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") []))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"dir"),CPVar (3,"fn")]) (CApply (CSymbol ("FileGoodies","splitDirectoryBaseName")) (CVar (1,"s"))) []] (CCase (CVar (2,"dir")) [CBranch (CPComb ("Prelude",":") [CPLit (CCharc '.'),CPComb ("Prelude","[]") []]) (CApply (CVar (0,"f")) (CVar (3,"fn"))),CBranch (CPVar (4,"_")) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"dir"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("FileGoodies","separatorChar"))) (CApply (CVar (0,"f")) (CVar (3,"fn")))))]))] []]),+  CFunc ("FileGoodies","separatorChar") 0 Public (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CCharc '/'))] []]),+  CFunc ("FileGoodies","splitBaseName") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (1,"rsuffix"),CPVar (2,"rbase")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CSymbol ("FileGoodies","suffixSeparatorChar"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (0,"name")))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","null")) (CVar (2,"rbase")))) (CApply (CApply (CSymbol ("Prelude","elem")) (CSymbol ("FileGoodies","separatorChar"))) (CVar (1,"rsuffix"))))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"name"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","reverse")) (CApply (CSymbol ("Prelude","tail")) (CVar (2,"rbase"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (1,"rsuffix"))))))] []]),+  CFunc ("FileGoodies","splitDirectoryBaseName") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"name")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (1,"rbase"),CPVar (2,"rdir")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CSymbol ("FileGoodies","separatorChar"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (0,"name")))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (2,"rdir")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Prelude","reverse")) (CVar (1,"rbase"))))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","reverse")) (CApply (CSymbol ("Prelude","tail")) (CVar (2,"rdir"))))) (CApply (CSymbol ("Prelude","reverse")) (CVar (1,"rbase"))))))] []]),+  CFunc ("FileGoodies","splitPath") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"ys"),CPVar (3,"zs")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (4,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"x0"))) (CSymbol ("FileGoodies","pathSeparatorChar"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (1,"xs")))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"zs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"ys"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"ys"))) (CApply (CSymbol ("FileGoodies","splitPath")) (CApply (CSymbol ("Prelude","tail")) (CVar (3,"zs")))))))] []]),+  CFunc ("FileGoodies","stripSuffix") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","fst"))) (CSymbol ("FileGoodies","splitBaseName")))] []]),+  CFunc ("FileGoodies","suffixSeparatorChar") 0 Public (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CCharc '.'))] []])]+ []
+ src/lib/Curry/Module/.curry/FiniteMap.acy view
@@ -0,0 +1,78 @@+CurryProg "FiniteMap"+ ["Prelude","Maybe"]+ [CTypeSyn ("FiniteMap","LeKey") Private [(0,"key")] (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (0,"key")) (CTCons ("Prelude","Bool") []))),+  CType ("FiniteMap","FM") Public [(0,"key"),(1,"elt")] [CCons ("FiniteMap","FM") 2 Public [CTCons ("FiniteMap","LeKey") [CTVar (0,"key")],CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]]],+  CType ("FiniteMap","FiniteMap") Private [(0,"key"),(1,"elt")] [CCons ("FiniteMap","EmptyFM") 0 Private [],CCons ("FiniteMap","Branch") 5 Private [CTVar (0,"key"),CTVar (1,"elt"),CTCons ("Prelude","Int") [],CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")],CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]]],+  CTypeSyn ("FiniteMap","FiniteSet") Private [(0,"key")] (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTCons ("Prelude","()") []])]+ [CFunc ("FiniteMap","addListToFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","addListToFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"key_elt_pairs"))))] []]),+  CFunc ("FiniteMap","addListToFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm"),CPVar (2,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addListToFM_C'")) (CVar (0,"le"))) (CLambda [CPVar (3,"_"),CPVar (4,"new")] (CVar (4,"new")))) (CVar (1,"fm"))) (CVar (2,"key_elt_pairs")))] []]),+  CFunc ("FiniteMap","addListToFM_C") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (0,"a")]]) (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")],CPVar (3,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addListToFM_C'")) (CVar (1,"le"))) (CVar (0,"combiner"))) (CVar (2,"fm"))) (CVar (3,"key_elt_pairs"))))] []]),+  CFunc ("FiniteMap","addListToFM_C'") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"combiner"),CPVar (2,"fm"),CPVar (3,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CSymbol ("FiniteMap","add"))) (CVar (2,"fm"))) (CVar (3,"key_elt_pairs")))] [CLocalFunc (CFunc ("FiniteMap","add") 2 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_234"),CTVar (3,"_235")]) (CFuncType (CTCons ("Prelude","(,)") [CTVar (2,"_234"),CTVar (3,"_235")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_234"),CTVar (3,"_235")]))) (CRules CFlex [CRule [CPVar (4,"fmap"),CPComb ("Prelude","(,)") [CPVar (5,"key"),CPVar (6,"elt")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (0,"le"))) (CVar (1,"combiner"))) (CVar (4,"fmap"))) (CVar (5,"key"))) (CVar (6,"elt")))] []]))]]),+  CFunc ("FiniteMap","addToFM") 3 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"key"),CPVar (3,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"key"))) (CVar (3,"elt"))))] []]),+  CFunc ("FiniteMap","addToFM'") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm"),CPVar (2,"key"),CPVar (3,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (0,"le"))) (CLambda [CPVar (4,"_"),CPVar (5,"new")] (CVar (5,"new")))) (CVar (1,"fm"))) (CVar (2,"key"))) (CVar (3,"elt")))] []]),+  CFunc ("FiniteMap","addToFM_C") 4 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")]) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (0,"a")) (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")],CPVar (3,"key"),CPVar (4,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (1,"le"))) (CVar (0,"combiner"))) (CVar (2,"fm"))) (CVar (3,"key"))) (CVar (4,"elt"))))] []]),+  CFunc ("FiniteMap","addToFM_C'") 5 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (2,"key"),CPVar (3,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","unitFM'")) (CVar (2,"key"))) (CVar (3,"elt")))] [],CRule [CPVar (4,"le"),CPVar (5,"combiner"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"size"),CPVar (9,"fm_l"),CPVar (10,"fm_r")],CPVar (11,"new_key"),CPVar (12,"new_elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (4,"le")) (CVar (11,"new_key"))) (CVar (6,"key")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (4,"le"))) (CVar (5,"combiner"))) (CVar (9,"fm_l"))) (CVar (11,"new_key"))) (CVar (12,"new_elt")))) (CVar (10,"fm_r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (11,"new_key"))) (CVar (6,"key")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (11,"new_key"))) (CApply (CApply (CVar (5,"combiner")) (CVar (7,"elt"))) (CVar (12,"new_elt")))) (CVar (8,"size"))) (CVar (9,"fm_l"))) (CVar (10,"fm_r")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CVar (9,"fm_l"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (4,"le"))) (CVar (5,"combiner"))) (CVar (10,"fm_r"))) (CVar (11,"new_key"))) (CVar (12,"new_elt"))))))] []]),+  CFunc ("FiniteMap","delFromFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"del_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"del_key"))))] []]),+  CFunc ("FiniteMap","delFromFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"del_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"del_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"key"))) (CVar (4,"elt"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"del_key")))) (CVar (7,"fm_r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"del_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueBal")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (7,"fm_r")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"key"))) (CVar (4,"elt"))) (CVar (6,"fm_l"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"del_key"))))))] []]),+  CFunc ("FiniteMap","delListFromFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"keys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (0,"le")))) (CVar (1,"fm"))) (CVar (2,"keys"))))] []]),+  CFunc ("FiniteMap","deleteMax") 2 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","Branch") [CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"fm_l"),CPComb ("FiniteMap","EmptyFM") []]] [(CSymbol ("Prelude","success"),CVar (4,"fm_l"))] [],CRule [CPVar (5,"le"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"_"),CPVar (9,"fm_l"),CPComb ("FiniteMap","Branch") [CPVar (10,"key_r"),CPVar (11,"elt_r"),CPVar (12,"s_r"),CPVar (13,"fm_rl"),CPVar (14,"fm_rr")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CVar (9,"fm_l"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMax")) (CVar (5,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (10,"key_r"))) (CVar (11,"elt_r"))) (CVar (12,"s_r"))) (CVar (13,"fm_rl"))) (CVar (14,"fm_rr")))))] []]),+  CFunc ("FiniteMap","deleteMin") 2 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","Branch") [CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (4,"fm_r")]] [(CSymbol ("Prelude","success"),CVar (4,"fm_r"))] [],CRule [CPVar (5,"le"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"_"),CPComb ("FiniteMap","Branch") [CPVar (9,"key_l"),CPVar (10,"elt_l"),CPVar (11,"s_l"),CPVar (12,"fm_ll"),CPVar (13,"fm_lr")],CPVar (14,"fm_r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMin")) (CVar (5,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (9,"key_l"))) (CVar (10,"elt_l"))) (CVar (11,"s_l"))) (CVar (12,"fm_ll"))) (CVar (13,"fm_lr"))))) (CVar (14,"fm_r")))] []]),+  CFunc ("FiniteMap","elemFM") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"fm")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Maybe","isJust")) (CApply (CApply (CSymbol ("FiniteMap","lookupFM")) (CVar (1,"fm"))) (CVar (0,"key"))))] []]),+  CFunc ("FiniteMap","elementOf") 0 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","elemFM"))] []]),+  CFunc ("FiniteMap","eltsFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM")) (CLambda [CPVar (1,"_"),CPVar (2,"elt"),CPVar (3,"rest")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"elt"))) (CVar (3,"rest"))))) (CSymbol ("Prelude","[]"))) (CVar (0,"fm")))] []]),+  CFunc ("FiniteMap","emptyFM") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")])) (CRules CFlex [CRule [CPVar (0,"le")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CSymbol ("FiniteMap","EmptyFM")))] []]),+  CFunc ("FiniteMap","emptySet") 0 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","emptyFM"))] []]),+  CFunc ("FiniteMap","eqFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"fm_1"),CPVar (1,"fm_2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (0,"fm_1")))) (CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (1,"fm_2"))))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"fm_1")))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (1,"fm_2")))))] []]),+  CFunc ("FiniteMap","filterFM") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (1,"le"))) (CVar (0,"p"))) (CVar (2,"fm"))))] []]),+  CFunc ("FiniteMap","filterFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPVar (3,"p"),CPComb ("FiniteMap","Branch") [CPVar (4,"key"),CPVar (5,"elt"),CPVar (6,"_"),CPVar (7,"fm_l"),CPVar (8,"fm_r")]] [(CApply (CApply (CVar (3,"p")) (CVar (4,"key"))) (CVar (5,"elt")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (2,"le"))) (CVar (4,"key"))) (CVar (5,"elt"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (7,"fm_l")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (8,"fm_r")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (2,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (7,"fm_l")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (8,"fm_r"))))] []]),+  CFunc ("FiniteMap","findMax") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")])) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"key"),CPVar (1,"elt"),CPVar (2,"_"),CPVar (3,"_"),CPComb ("FiniteMap","EmptyFM") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"key"))) (CVar (1,"elt")))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_"),CPVar (7,"_"),CPComb ("FiniteMap","Branch") [CPVar (8,"key_r"),CPVar (9,"elt_r"),CPVar (10,"s_r"),CPVar (11,"fm_rl"),CPVar (12,"fm_rr")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","findMax")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (8,"key_r"))) (CVar (9,"elt_r"))) (CVar (10,"s_r"))) (CVar (11,"fm_rl"))) (CVar (12,"fm_rr"))))] []]),+  CFunc ("FiniteMap","findMin") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")])) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"key"),CPVar (1,"elt"),CPVar (2,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"key"))) (CVar (1,"elt")))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_l"),CPVar (8,"elt_l"),CPVar (9,"s_l"),CPVar (10,"fm_ll"),CPVar (11,"fm_lr")],CPVar (12,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","findMin")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (7,"key_l"))) (CVar (8,"elt_l"))) (CVar (9,"s_l"))) (CVar (10,"fm_ll"))) (CVar (11,"fm_lr"))))] []]),+  CFunc ("FiniteMap","fmSortBy") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","keysFM")) (CApply (CApply (CSymbol ("FiniteMap","listToFM")) (CVar (0,"p"))) (CApply (CApply (CSymbol ("Prelude","zip")) (CVar (1,"l"))) (CApply (CSymbol ("Prelude","repeat")) (CSymbol ("Prelude","()"))))))] []]),+  CFunc ("FiniteMap","fmToList") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM")) (CLambda [CPVar (1,"key"),CPVar (2,"elt"),CPVar (3,"rest")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"key"))) (CVar (2,"elt")))) (CVar (3,"rest"))))) (CSymbol ("Prelude","[]"))) (CVar (0,"fm")))] []]),+  CFunc ("FiniteMap","fmToListPreOrder") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"_"),CPVar (1,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","pre")) (CVar (1,"fm"))) (CSymbol ("Prelude","[]")))] [CLocalFunc (CFunc ("FiniteMap","pre") 2 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]))) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") [],CPVar (2,"xs")] [(CSymbol ("Prelude","success"),CVar (2,"xs"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (3,"k"),CPVar (4,"x"),CPVar (5,"_"),CPVar (6,"l"),CPVar (7,"r")],CPVar (8,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"k"))) (CVar (4,"x")))) (CApply (CApply (CSymbol ("FiniteMap","pre")) (CVar (6,"l"))) (CApply (CApply (CSymbol ("FiniteMap","pre")) (CVar (7,"r"))) (CVar (8,"xs")))))] []]))]]),+  CFunc ("FiniteMap","foldFM") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTVar (2,"c"))))) (CFuncType (CTVar (2,"c")) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"k"),CPVar (1,"z"),CPComb ("FiniteMap","FM") [CPVar (2,"le"),CPVar (3,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM'")) (CVar (2,"le"))) (CVar (0,"k"))) (CVar (1,"z"))) (CVar (3,"fm")))] []]),+  CFunc ("FiniteMap","foldFM'") 4 Private (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CTVar (3,"d"))))) (CFuncType (CTVar (3,"d")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (1,"b"),CTVar (2,"c")]) (CTVar (3,"d")))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"z"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CVar (2,"z"))] [],CRule [CPVar (3,"le"),CPVar (4,"k"),CPVar (5,"z"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"_"),CPVar (9,"fm_l"),CPVar (10,"fm_r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM'")) (CVar (3,"le"))) (CVar (4,"k"))) (CApply (CApply (CApply (CVar (4,"k")) (CVar (6,"key"))) (CVar (7,"elt"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM'")) (CVar (3,"le"))) (CVar (4,"k"))) (CVar (5,"z"))) (CVar (10,"fm_r"))))) (CVar (9,"fm_l")))] []]),+  CFunc ("FiniteMap","glueBal") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm1"),CPVar (2,"fm2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (1,"fm1")))) (CVar (2,"fm2"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (2,"fm2")))) (CVar (1,"fm1"))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"mid_key1"),CPVar (4,"mid_elt1")]) (CApply (CSymbol ("FiniteMap","findMax")) (CVar (1,"fm1"))) [],CLocalPat (CPComb ("Prelude","(,)") [CPVar (5,"mid_key2"),CPVar (6,"mid_elt2")]) (CApply (CSymbol ("FiniteMap","findMin")) (CVar (2,"fm2"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (2,"fm2")))) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (1,"fm1"))))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (5,"mid_key2"))) (CVar (6,"mid_elt2"))) (CVar (1,"fm1"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMin")) (CVar (0,"le"))) (CVar (2,"fm2"))))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"mid_key1"))) (CVar (4,"mid_elt1"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMax")) (CVar (0,"le"))) (CVar (1,"fm1")))) (CVar (2,"fm2")))))))] []]),+  CFunc ("FiniteMap","glueVBal") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm_l"),CPVar (2,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (1,"fm_l")))) (CVar (2,"fm_r"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (2,"fm_r")))) (CVar (1,"fm_l"))) (CLetDecl [CLocalPat (CPComb ("FiniteMap","Branch") [CPVar (3,"key_l"),CPVar (4,"elt_l"),CPVar (5,"_"),CPVar (6,"fm_ll"),CPVar (7,"fm_lr")]) (CVar (1,"fm_l")) [],CLocalPat (CPComb ("FiniteMap","Branch") [CPVar (8,"key_r"),CPVar (9,"elt_r"),CPVar (10,"_"),CPVar (11,"fm_rl"),CPVar (12,"fm_rr")]) (CVar (2,"fm_r")) [],CLocalPat (CPVar (13,"size_l")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (1,"fm_l"))) [],CLocalPat (CPVar (14,"size_r")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (2,"fm_r"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (13,"size_l")))) (CVar (14,"size_r")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (8,"key_r"))) (CVar (9,"elt_r"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (0,"le"))) (CVar (1,"fm_l"))) (CVar (11,"fm_rl")))) (CVar (12,"fm_rr")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (14,"size_r")))) (CVar (13,"size_l")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"key_l"))) (CVar (4,"elt_l"))) (CVar (6,"fm_ll"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (0,"le"))) (CVar (7,"fm_lr"))) (CVar (2,"fm_r"))))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueBal")) (CVar (0,"le"))) (CVar (1,"fm_l"))) (CVar (2,"fm_r"))))))))] []]),+  CFunc ("FiniteMap","intersectFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le1"),CPVar (1,"fm1")],CPComb ("FiniteMap","FM") [CPVar (2,"_"),CPVar (3,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le1"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM'")) (CVar (0,"le1"))) (CVar (1,"fm1"))) (CVar (3,"fm2"))))] []]),+  CFunc ("FiniteMap","intersectFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (2,"c")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (2,"c")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm1"),CPVar (2,"fm2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (0,"le"))) (CLambda [CPVar (3,"_"),CPVar (4,"right")] (CVar (4,"right")))) (CVar (1,"fm1"))) (CVar (2,"fm2")))] []]),+  CFunc ("FiniteMap","intersectFM_C") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (2,"c"),CTVar (0,"a")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (2,"c"),CTVar (0,"a")]) (CTCons ("FiniteMap","FM") [CTVar (2,"c"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le1"),CPVar (2,"fm1")],CPComb ("FiniteMap","FM") [CPVar (3,"_"),CPVar (4,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le1"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (1,"le1"))) (CVar (0,"combiner"))) (CVar (2,"fm1"))) (CVar (4,"fm2"))))] []]),+  CFunc ("FiniteMap","intersectFM_C'") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTVar (3,"d")))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (2,"c")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (3,"d")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (3,"_"),CPVar (4,"_"),CPComb ("FiniteMap","EmptyFM") [],CPComb ("FiniteMap","Branch") [CPVar (5,"_"),CPVar (6,"_"),CPVar (7,"_"),CPVar (8,"_"),CPVar (9,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (10,"le"),CPVar (11,"combiner"),CPComb ("FiniteMap","Branch") [CPVar (12,"split_key1"),CPVar (13,"elt1"),CPVar (14,"s1"),CPVar (15,"left1"),CPVar (16,"right1")],CPComb ("FiniteMap","Branch") [CPVar (17,"split_key"),CPVar (18,"elt2"),CPVar (19,"_"),CPVar (20,"left"),CPVar (21,"right")]] [(CApply (CSymbol ("Maybe","isJust")) (CVar (25,"maybe_elt1")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (10,"le"))) (CVar (17,"split_key"))) (CApply (CApply (CVar (11,"combiner")) (CVar (26,"elt1'"))) (CVar (18,"elt2")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (23,"lts"))) (CVar (20,"left")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (24,"gts"))) (CVar (21,"right")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (10,"le"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (23,"lts"))) (CVar (20,"left")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (24,"gts"))) (CVar (21,"right"))))] [CLocalPat (CPVar (22,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (12,"split_key1"))) (CVar (13,"elt1"))) (CVar (14,"s1"))) (CVar (15,"left1"))) (CVar (16,"right1"))) [],CLocalPat (CPVar (23,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (24,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (25,"maybe_elt1")) (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPComb ("Prelude","Just") [CPVar (26,"elt1'")]) (CVar (25,"maybe_elt1")) []]]),+  CFunc ("FiniteMap","isEmptyFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (0,"fm")))) (CLit (CIntc 0)))] []]),+  CFunc ("FiniteMap","isEmptyFM'") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (0,"fm")))) (CLit (CIntc 0)))] []]),+  CFunc ("FiniteMap","isEmptySet") 0 Private (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","isEmptyFM"))] []]),+  CFunc ("FiniteMap","keyOrder") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"lt"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"lt"))] []]),+  CFunc ("FiniteMap","keysFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM")) (CLambda [CPVar (1,"key"),CPVar (2,"_"),CPVar (3,"rest")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"key"))) (CVar (3,"rest"))))) (CSymbol ("Prelude","[]"))) (CVar (0,"fm")))] []]),+  CFunc ("FiniteMap","listToFM") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"le")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","addListToFM")) (CApply (CSymbol ("FiniteMap","emptyFM")) (CVar (0,"le"))))] []]),+  CFunc ("FiniteMap","lookupFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"key")))] []]),+  CFunc ("FiniteMap","lookupFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"key_to_find")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"key_to_find"))) (CVar (3,"key")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"key_to_find")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"key_to_find"))) (CVar (3,"key")))) (CApply (CSymbol ("Prelude","Just")) (CVar (4,"elt")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"key_to_find")))))] []]),+  CFunc ("FiniteMap","lookupWithDefaultFM") 3 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))))) (CRules CFlex [CRule [CPVar (0,"fm"),CPVar (1,"deflt"),CPVar (2,"key")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("FiniteMap","lookupFM")) (CVar (0,"fm"))) (CVar (2,"key"))) [CBranch (CPComb ("Prelude","Nothing") []) (CVar (1,"deflt")),CBranch (CPComb ("Prelude","Just") [CPVar (3,"elt")]) (CVar (3,"elt"))])] []]),+  CFunc ("FiniteMap","mapFM") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (2,"c")]))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","mapFM'")) (CVar (1,"le"))) (CVar (0,"f"))) (CVar (2,"fm"))))] []]),+  CFunc ("FiniteMap","mapFM'") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTVar (3,"d")))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (1,"b"),CTVar (2,"c")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (1,"b"),CTVar (3,"d")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPVar (3,"f"),CPComb ("FiniteMap","Branch") [CPVar (4,"key"),CPVar (5,"elt"),CPVar (6,"size"),CPVar (7,"fm_l"),CPVar (8,"fm_r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"key"))) (CApply (CApply (CVar (3,"f")) (CVar (4,"key"))) (CVar (5,"elt")))) (CVar (6,"size"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","mapFM'")) (CVar (2,"le"))) (CVar (3,"f"))) (CVar (7,"fm_l")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","mapFM'")) (CVar (2,"le"))) (CVar (3,"f"))) (CVar (8,"fm_r"))))] []]),+  CFunc ("FiniteMap","maxFM") 0 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("FiniteMap","max"))) (CSymbol ("FiniteMap","tree")))] [CLocalFunc (CFunc ("FiniteMap","max") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"k"),CPVar (1,"x"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"r")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"r"))) (CSymbol ("FiniteMap","EmptyFM")),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CVar (1,"x")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("FiniteMap","max")) (CVar (4,"r")))] []]))]]),+  CFunc ("FiniteMap","minFM") 0 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("FiniteMap","min"))) (CSymbol ("FiniteMap","tree")))] [CLocalFunc (CFunc ("FiniteMap","min") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"k"),CPVar (1,"x"),CPVar (2,"_"),CPVar (3,"l"),CPVar (4,"_")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"l"))) (CSymbol ("FiniteMap","EmptyFM")),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CVar (1,"x")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("FiniteMap","min")) (CVar (3,"l")))] []]))]]),+  CFunc ("FiniteMap","minusFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le1"),CPVar (1,"fm1")],CPComb ("FiniteMap","FM") [CPVar (2,"_"),CPVar (3,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le1"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","minusFM'")) (CVar (0,"le1"))) (CVar (1,"fm1"))) (CVar (3,"fm2"))))] []]),+  CFunc ("FiniteMap","minusFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (2,"c")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"_"),CPComb ("FiniteMap","Branch") [CPVar (3,"split_key1"),CPVar (4,"elt1"),CPVar (5,"s1"),CPVar (6,"left1"),CPVar (7,"right1")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (3,"split_key1"))) (CVar (4,"elt1"))) (CVar (5,"s1"))) (CVar (6,"left1"))) (CVar (7,"right1")))] [],CRule [CPVar (8,"le"),CPComb ("FiniteMap","Branch") [CPVar (9,"split_key1"),CPVar (10,"elt1"),CPVar (11,"s1"),CPVar (12,"left1"),CPVar (13,"right1")],CPComb ("FiniteMap","Branch") [CPVar (14,"split_key"),CPVar (15,"_"),CPVar (16,"_"),CPVar (17,"left"),CPVar (18,"right")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (8,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","minusFM'")) (CVar (8,"le"))) (CVar (20,"lts"))) (CVar (17,"left")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","minusFM'")) (CVar (8,"le"))) (CVar (21,"gts"))) (CVar (18,"right"))))] [CLocalPat (CPVar (19,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (9,"split_key1"))) (CVar (10,"elt1"))) (CVar (11,"s1"))) (CVar (12,"left1"))) (CVar (13,"right1"))) [],CLocalPat (CPVar (20,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) [],CLocalPat (CPVar (21,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) []]]),+  CFunc ("FiniteMap","minusSet") 0 Private (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","minusFM"))] []]),+  CFunc ("FiniteMap","mkBalBranch") 4 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"elt"),CPVar (2,"fm_L"),CPVar (3,"fm_R")] [(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (4,"size_l"))) (CVar (5,"size_r")))) (CLit (CIntc 2)),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 1))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (2,"fm_L"))) (CVar (3,"fm_R"))),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (5,"size_r"))) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (4,"size_l"))),CCase (CVar (3,"fm_R")) [CBranch (CPComb ("FiniteMap","Branch") [CPVar (6,"_"),CPVar (7,"_"),CPVar (8,"_"),CPVar (9,"fm_rl"),CPVar (10,"fm_rr")]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (9,"fm_rl")))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (10,"fm_rr")))))) (CApply (CApply (CSymbol ("FiniteMap","single_L")) (CVar (2,"fm_L"))) (CVar (3,"fm_R")))) (CApply (CApply (CSymbol ("FiniteMap","double_L")) (CVar (2,"fm_L"))) (CVar (3,"fm_R"))))]),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (4,"size_l"))) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (5,"size_r"))),CCase (CVar (2,"fm_L")) [CBranch (CPComb ("FiniteMap","Branch") [CPVar (11,"_"),CPVar (12,"_"),CPVar (13,"_"),CPVar (14,"fm_ll"),CPVar (15,"fm_lr")]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (15,"fm_lr")))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (14,"fm_ll")))))) (CApply (CApply (CSymbol ("FiniteMap","single_R")) (CVar (2,"fm_L"))) (CVar (3,"fm_R")))) (CApply (CApply (CSymbol ("FiniteMap","double_R")) (CVar (2,"fm_L"))) (CVar (3,"fm_R"))))]),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 2))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (2,"fm_L"))) (CVar (3,"fm_R")))] [CLocalPat (CPVar (4,"size_l")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (2,"fm_L"))) [],CLocalPat (CPVar (5,"size_r")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (3,"fm_R"))) [],CLocalFunc (CFunc ("FiniteMap","single_L") 2 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]))) (CRules CFlex [CRule [CPVar (6,"fm_l"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_r"),CPVar (8,"elt_r"),CPVar (9,"_"),CPVar (10,"fm_rl"),CPVar (11,"fm_rr")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 3))) (CVar (7,"key_r"))) (CVar (8,"elt_r"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 4))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (6,"fm_l"))) (CVar (10,"fm_rl")))) (CVar (11,"fm_rr")))] []])),CLocalFunc (CFunc ("FiniteMap","double_L") 2 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]))) (CRules CFlex [CRule [CPVar (6,"fm_l"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_r"),CPVar (8,"elt_r"),CPVar (9,"_"),CPComb ("FiniteMap","Branch") [CPVar (10,"key_rl"),CPVar (11,"elt_rl"),CPVar (12,"_"),CPVar (13,"fm_rll"),CPVar (14,"fm_rlr")],CPVar (15,"fm_rr")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 5))) (CVar (10,"key_rl"))) (CVar (11,"elt_rl"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 6))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (6,"fm_l"))) (CVar (13,"fm_rll")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 7))) (CVar (7,"key_r"))) (CVar (8,"elt_r"))) (CVar (14,"fm_rlr"))) (CVar (15,"fm_rr"))))] []])),CLocalFunc (CFunc ("FiniteMap","single_R") 2 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (6,"key_l"),CPVar (7,"elt_l"),CPVar (8,"_"),CPVar (9,"fm_ll"),CPVar (10,"fm_lr")],CPVar (11,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 8))) (CVar (6,"key_l"))) (CVar (7,"elt_l"))) (CVar (9,"fm_ll"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 9))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (10,"fm_lr"))) (CVar (11,"fm_r"))))] []])),CLocalFunc (CFunc ("FiniteMap","double_R") 2 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_169"),CTVar (3,"_170")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (6,"key_l"),CPVar (7,"elt_l"),CPVar (8,"_"),CPVar (9,"fm_ll"),CPComb ("FiniteMap","Branch") [CPVar (10,"key_lr"),CPVar (11,"elt_lr"),CPVar (12,"_"),CPVar (13,"fm_lrl"),CPVar (14,"fm_lrr")]],CPVar (15,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 10))) (CVar (10,"key_lr"))) (CVar (11,"elt_lr"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 11))) (CVar (6,"key_l"))) (CVar (7,"elt_l"))) (CVar (9,"fm_ll"))) (CVar (13,"fm_lrl")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 12))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (14,"fm_lrr"))) (CVar (15,"fm_r"))))] []]))]]),+  CFunc ("FiniteMap","mkBranch") 5 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"key"),CPVar (2,"elt"),CPVar (3,"fm_l"),CPVar (4,"fm_r")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (7,"result")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (1,"key"))) (CVar (2,"elt"))) (CApply (CSymbol ("FiniteMap","unbox")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CLit (CIntc 1))) (CVar (5,"left_size")))) (CVar (6,"right_size"))))) (CVar (3,"fm_l"))) (CVar (4,"fm_r"))) []] (CVar (7,"result")))] [CLocalPat (CPVar (5,"left_size")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (3,"fm_l"))) [],CLocalPat (CPVar (6,"right_size")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (4,"fm_r"))) [],CLocalFunc (CFunc ("FiniteMap","unbox") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (7,"x")] [(CSymbol ("Prelude","success"),CVar (7,"x"))] []]))]]),+  CFunc ("FiniteMap","mkSet") 2 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","listToFM")) (CVar (0,"le"))) (CListComp (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (2,"x"))) (CSymbol ("Prelude","()"))) [CSPat (CPVar (2,"x")) (CVar (1,"xs"))]))] []]),+  CFunc ("FiniteMap","mkVBalBranch") 5 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"key"),CPVar (2,"elt"),CPComb ("FiniteMap","EmptyFM") [],CPVar (3,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM'")) (CVar (0,"le"))) (CVar (3,"fm_r"))) (CVar (1,"key"))) (CVar (2,"elt")))] [],CRule [CPVar (4,"le"),CPVar (5,"key"),CPVar (6,"elt"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_l"),CPVar (8,"elt_l"),CPVar (9,"s_l"),CPVar (10,"fm_ll"),CPVar (11,"fm_lr")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM'")) (CVar (4,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (7,"key_l"))) (CVar (8,"elt_l"))) (CVar (9,"s_l"))) (CVar (10,"fm_ll"))) (CVar (11,"fm_lr")))) (CVar (5,"key"))) (CVar (6,"elt")))] [],CRule [CPVar (12,"le"),CPVar (13,"key"),CPVar (14,"elt"),CPComb ("FiniteMap","Branch") [CPVar (15,"key_l"),CPVar (16,"elt_l"),CPVar (17,"s_l"),CPVar (18,"fm_ll"),CPVar (19,"fm_lr")],CPComb ("FiniteMap","Branch") [CPVar (20,"key_r"),CPVar (21,"elt_r"),CPVar (22,"s_r"),CPVar (23,"fm_rl"),CPVar (24,"fm_rr")]] [(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (27,"size_l")))) (CVar (28,"size_r")),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (20,"key_r"))) (CVar (21,"elt_r"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (12,"le"))) (CVar (13,"key"))) (CVar (14,"elt"))) (CVar (25,"fm_l"))) (CVar (23,"fm_rl")))) (CVar (24,"fm_rr"))),(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (28,"size_r")))) (CVar (27,"size_l")),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (15,"key_l"))) (CVar (16,"elt_l"))) (CVar (18,"fm_ll"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (12,"le"))) (CVar (13,"key"))) (CVar (14,"elt"))) (CVar (19,"fm_lr"))) (CVar (26,"fm_r")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 13))) (CVar (13,"key"))) (CVar (14,"elt"))) (CVar (25,"fm_l"))) (CVar (26,"fm_r")))] [CLocalPat (CPVar (25,"fm_l")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (15,"key_l"))) (CVar (16,"elt_l"))) (CVar (17,"s_l"))) (CVar (18,"fm_ll"))) (CVar (19,"fm_lr"))) [],CLocalPat (CPVar (26,"fm_r")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (20,"key_r"))) (CVar (21,"elt_r"))) (CVar (22,"s_r"))) (CVar (23,"fm_rl"))) (CVar (24,"fm_rr"))) [],CLocalPat (CPVar (27,"size_l")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (25,"fm_l"))) [],CLocalPat (CPVar (28,"size_r")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (26,"fm_r"))) []]]),+  CFunc ("FiniteMap","plusFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le1"),CPVar (1,"fm1")],CPComb ("FiniteMap","FM") [CPVar (2,"_"),CPVar (3,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le1"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM'")) (CVar (0,"le1"))) (CVar (1,"fm1"))) (CVar (3,"fm2"))))] []]),+  CFunc ("FiniteMap","plusFM'") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"fm2")] [(CSymbol ("Prelude","success"),CVar (1,"fm2"))] [],CRule [CPVar (2,"_"),CPComb ("FiniteMap","Branch") [CPVar (3,"split_key1"),CPVar (4,"elt1"),CPVar (5,"s1"),CPVar (6,"left1"),CPVar (7,"right1")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (3,"split_key1"))) (CVar (4,"elt1"))) (CVar (5,"s1"))) (CVar (6,"left1"))) (CVar (7,"right1")))] [],CRule [CPVar (8,"le"),CPComb ("FiniteMap","Branch") [CPVar (9,"split_key1"),CPVar (10,"elt1"),CPVar (11,"s1"),CPVar (12,"left1"),CPVar (13,"right1")],CPComb ("FiniteMap","Branch") [CPVar (14,"split_key"),CPVar (15,"elt2"),CPVar (16,"_"),CPVar (17,"left"),CPVar (18,"right")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (8,"le"))) (CVar (14,"split_key"))) (CVar (15,"elt2"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM'")) (CVar (8,"le"))) (CVar (20,"lts"))) (CVar (17,"left")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM'")) (CVar (8,"le"))) (CVar (21,"gts"))) (CVar (18,"right"))))] [CLocalPat (CPVar (19,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (9,"split_key1"))) (CVar (10,"elt1"))) (CVar (11,"s1"))) (CVar (12,"left1"))) (CVar (13,"right1"))) [],CLocalPat (CPVar (20,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) [],CLocalPat (CPVar (21,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) []]]),+  CFunc ("FiniteMap","plusFM_C") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")]) (CTCons ("FiniteMap","FM") [CTVar (1,"b"),CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le1"),CPVar (2,"fm1")],CPComb ("FiniteMap","FM") [CPVar (3,"_"),CPVar (4,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le1"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM_C'")) (CVar (1,"le1"))) (CVar (0,"combiner"))) (CVar (2,"fm1"))) (CVar (4,"fm2"))))] []]),+  CFunc ("FiniteMap","plusFM_C'") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (2,"fm2")] [(CSymbol ("Prelude","success"),CVar (2,"fm2"))] [],CRule [CPVar (3,"_"),CPVar (4,"_"),CPComb ("FiniteMap","Branch") [CPVar (5,"split_key1"),CPVar (6,"elt1"),CPVar (7,"s1"),CPVar (8,"left1"),CPVar (9,"right1")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (5,"split_key1"))) (CVar (6,"elt1"))) (CVar (7,"s1"))) (CVar (8,"left1"))) (CVar (9,"right1")))] [],CRule [CPVar (10,"le"),CPVar (11,"combiner"),CPComb ("FiniteMap","Branch") [CPVar (12,"split_key1"),CPVar (13,"elt1"),CPVar (14,"s1"),CPVar (15,"left1"),CPVar (16,"right1")],CPComb ("FiniteMap","Branch") [CPVar (17,"split_key"),CPVar (18,"elt2"),CPVar (19,"_"),CPVar (20,"left"),CPVar (21,"right")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (10,"le"))) (CVar (17,"split_key"))) (CVar (25,"new_elt"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (23,"lts"))) (CVar (20,"left")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (24,"gts"))) (CVar (21,"right"))))] [CLocalPat (CPVar (22,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (12,"split_key1"))) (CVar (13,"elt1"))) (CVar (14,"s1"))) (CVar (15,"left1"))) (CVar (16,"right1"))) [],CLocalPat (CPVar (23,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (24,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (25,"new_elt")) (CCase (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [CBranch (CPComb ("Prelude","Nothing") []) (CVar (18,"elt2")),CBranch (CPComb ("Prelude","Just") [CPVar (26,"elt1'")]) (CApply (CApply (CVar (11,"combiner")) (CVar (26,"elt1'"))) (CVar (18,"elt2")))]) []]]),+  CFunc ("FiniteMap","sIZE_RATIO") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 5))] []]),+  CFunc ("FiniteMap","setToList") 0 Private (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","keysFM"))] []]),+  CFunc ("FiniteMap","sizeFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") []]] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("FiniteMap","FM") [CPVar (1,"_"),CPComb ("FiniteMap","Branch") [CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"size"),CPVar (5,"_"),CPVar (6,"_")]]] [(CSymbol ("Prelude","success"),CVar (4,"size"))] []]),+  CFunc ("FiniteMap","sizeFM'") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"size"),CPVar (3,"_"),CPVar (4,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"size"))] []]),+  CFunc ("FiniteMap","splitFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")],CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CSymbol ("Prelude","Nothing"))) (CLambda [CPVar (2,"x")] (CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("FiniteMap","delFromFM")) (CVar (0,"g"))) (CVar (1,"v")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"v"))) (CVar (2,"x"))))))) (CApply (CApply (CSymbol ("FiniteMap","lookupFM")) (CVar (0,"g"))) (CVar (1,"v"))))] []]),+  CFunc ("FiniteMap","splitGT") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"split_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (2,"le"))) (CVar (3,"key"))) (CVar (4,"elt"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"split_key")))) (CVar (7,"fm_r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CVar (7,"fm_r"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"split_key")))))] []]),+  CFunc ("FiniteMap","splitLT") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"split_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"split_key")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CVar (6,"fm_l"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (2,"le"))) (CVar (3,"key"))) (CVar (4,"elt"))) (CVar (6,"fm_l"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"split_key"))))))] []]),+  CFunc ("FiniteMap","toGT") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"x"),CPVar (2,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","not")) (CApply (CApply (CVar (0,"le")) (CVar (1,"x"))) (CVar (2,"y"))))) (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (1,"x"))) (CVar (2,"y"))))] []]),+  CFunc ("FiniteMap","tree") 1 Private (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")])) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"_"),CPVar (1,"fm")]] [(CSymbol ("Prelude","success"),CVar (1,"fm"))] []]),+  CFunc ("FiniteMap","union") 0 Private (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","plusFM"))] []]),+  CFunc ("FiniteMap","unitFM") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"key"),CPVar (2,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CSymbol ("FiniteMap","unitFM'")) (CVar (1,"key"))) (CVar (2,"elt"))))] []]),+  CFunc ("FiniteMap","unitFM'") 2 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (0,"key"))) (CVar (1,"elt"))) (CLit (CIntc 1))) (CSymbol ("FiniteMap","EmptyFM"))) (CSymbol ("FiniteMap","EmptyFM")))] []]),+  CFunc ("FiniteMap","updFM") 3 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (1,"b"))) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"lt"),CPVar (1,"fm")],CPVar (2,"i"),CPVar (3,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"lt"))) (CApply (CSymbol ("FiniteMap","upd")) (CVar (1,"fm"))))] [CLocalFunc (CFunc ("FiniteMap","upd") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_535"),CTVar (3,"_523")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (2,"_535"),CTVar (3,"_523")])) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (4,"k"),CPVar (5,"x"),CPVar (6,"h"),CPVar (7,"l"),CPVar (8,"r")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"i"))) (CVar (4,"k")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"k"))) (CApply (CVar (3,"f")) (CVar (5,"x")))) (CVar (6,"h"))) (CVar (7,"l"))) (CVar (8,"r"))),(CApply (CApply (CVar (0,"lt")) (CVar (2,"i"))) (CVar (4,"k")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"k"))) (CVar (5,"x"))) (CVar (6,"h"))) (CApply (CSymbol ("FiniteMap","upd")) (CVar (7,"l")))) (CVar (8,"r"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"k"))) (CVar (5,"x"))) (CVar (6,"h"))) (CVar (7,"l"))) (CApply (CSymbol ("FiniteMap","upd")) (CVar (8,"r"))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/FiniteMap.cy view
@@ -0,0 +1,131 @@+Module "FiniteMap"+(Just (Exporting (15,18) [(Export (QualIdent Nothing (Ident "FM" 0))),(Export (QualIdent Nothing (Ident "emptyFM" 0))),(Export (QualIdent Nothing (Ident "unitFM" 0))),(Export (QualIdent Nothing (Ident "listToFM" 0))),(Export (QualIdent Nothing (Ident "addToFM" 0))),(Export (QualIdent Nothing (Ident "addToFM_C" 0))),(Export (QualIdent Nothing (Ident "addListToFM" 0))),(Export (QualIdent Nothing (Ident "addListToFM_C" 0))),(Export (QualIdent Nothing (Ident "delFromFM" 0))),(Export (QualIdent Nothing (Ident "delListFromFM" 0))),(Export (QualIdent Nothing (Ident "splitFM" 0))),(Export (QualIdent Nothing (Ident "plusFM" 0))),(Export (QualIdent Nothing (Ident "plusFM_C" 0))),(Export (QualIdent Nothing (Ident "minusFM" 0))),(Export (QualIdent Nothing (Ident "intersectFM" 0))),(Export (QualIdent Nothing (Ident "intersectFM_C" 0))),(Export (QualIdent Nothing (Ident "foldFM" 0))),(Export (QualIdent Nothing (Ident "mapFM" 0))),(Export (QualIdent Nothing (Ident "filterFM" 0))),(Export (QualIdent Nothing (Ident "sizeFM" 0))),(Export (QualIdent Nothing (Ident "eqFM" 0))),(Export (QualIdent Nothing (Ident "isEmptyFM" 0))),(Export (QualIdent Nothing (Ident "elemFM" 0))),(Export (QualIdent Nothing (Ident "lookupFM" 0))),(Export (QualIdent Nothing (Ident "lookupWithDefaultFM" 0))),(Export (QualIdent Nothing (Ident "keyOrder" 0))),(Export (QualIdent Nothing (Ident "fmToList" 0))),(Export (QualIdent Nothing (Ident "keysFM" 0))),(Export (QualIdent Nothing (Ident "eltsFM" 0))),(Export (QualIdent Nothing (Ident "fmSortBy" 0))),(Export (QualIdent Nothing (Ident "minFM" 0))),(Export (QualIdent Nothing (Ident "maxFM" 0))),(Export (QualIdent Nothing (Ident "updFM" 0))),(Export (QualIdent Nothing (Ident "fmToListPreOrder" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (56,1) "Maybe" False Nothing Nothing)+,(TypeDecl (59,1) (Ident "LeKey" 0) [(Ident "key" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "key" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(DataDecl (420,1) (Ident "FM" 0) [(Ident "key" 0),(Ident "elt" 0)] [(ConstrDecl (420,19) [] (Ident "FM" 0) [(ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]),(ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])])])+,(DataDecl (425,1) (Ident "FiniteMap" 0) [(Ident "key" 0),(Ident "elt" 0)] [(ConstrDecl (426,5) [] (Ident "EmptyFM" 0) []),(ConstrDecl (427,5) [] (Ident "Branch" 0) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0)),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]),(ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])])])+,(TypeDecl (678,1) (Ident "FiniteSet" 0) [(Ident "key" 0)] (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(TupleType [])]))+,(TypeSig (69,1) [(Ident "emptyFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "_" 0))])))+,(FunctionDecl (70,1) (Ident "emptyFM" 0) [(Equation (70,1) (FunLhs (Ident "emptyFM" 0) [(VariablePattern (Ident "le" 2))]) (SimpleRhs (70,14) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 2)))) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)))) []))])+,(TypeSig (77,1) [(Ident "unitFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (78,1) (Ident "unitFM" 0) [(Equation (78,1) (FunLhs (Ident "unitFM" 0) [(VariablePattern (Ident "le" 4)),(VariablePattern (Ident "key" 4)),(VariablePattern (Ident "elt" 4))]) (SimpleRhs (78,21) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 4)))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "unitFM'" 0))) (Variable (QualIdent Nothing (Ident "key" 4)))) (Variable (QualIdent Nothing (Ident "elt" 4)))))) []))])+,(FunctionDecl (80,1) (Ident "unitFM'" 0) [(Equation (80,1) (FunLhs (Ident "unitFM'" 0) [(VariablePattern (Ident "key" 6)),(VariablePattern (Ident "elt" 6))]) (SimpleRhs (80,19) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key" 6)))) (Variable (QualIdent Nothing (Ident "elt" 6)))) (Literal (Int (Ident "_" 8) 1))) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)))) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)))) []))])+,(TypeSig (87,1) [(Ident "listToFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ListType (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (88,1) (Ident "listToFM" 0) [(Equation (88,1) (FunLhs (Ident "listToFM" 0) [(VariablePattern (Ident "le" 9))]) (SimpleRhs (88,15) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addListToFM" 0))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "emptyFM" 0))) (Variable (QualIdent Nothing (Ident "le" 9)))))) []))])+,(TypeSig (96,1) [(Ident "addToFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (97,1) (Ident "addToFM" 0) [(Equation (97,1) (FunLhs (Ident "addToFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 11)),(VariablePattern (Ident "fm" 11))])),(VariablePattern (Ident "key" 11)),(VariablePattern (Ident "elt" 11))]) (SimpleRhs (97,30) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 11)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 11)))) (Variable (QualIdent Nothing (Ident "fm" 11)))) (Variable (QualIdent Nothing (Ident "key" 11)))) (Variable (QualIdent Nothing (Ident "elt" 11)))))) []))])+,(FunctionDecl (99,1) (Ident "addToFM'" 0) [(Equation (99,1) (FunLhs (Ident "addToFM'" 0) [(VariablePattern (Ident "le" 13)),(VariablePattern (Ident "fm" 13)),(VariablePattern (Ident "key" 13)),(VariablePattern (Ident "elt" 13))]) (SimpleRhs (99,26) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 13)))) (Paren (Lambda [(VariablePattern (Ident "_" 16)),(VariablePattern (Ident "new" 15))] (Variable (QualIdent Nothing (Ident "new" 15)))))) (Variable (QualIdent Nothing (Ident "fm" 13)))) (Variable (QualIdent Nothing (Ident "key" 13)))) (Variable (QualIdent Nothing (Ident "elt" 13)))) []))])+,(FunctionDecl (101,1) (Ident "addToFM_C'" 0) [(Equation (101,1) (FunLhs (Ident "addToFM_C'" 0) [(VariablePattern (Ident "_" 18)),(VariablePattern (Ident "_" 19)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "key" 17)),(VariablePattern (Ident "elt" 17))]) (SimpleRhs (101,34) (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "unitFM'" 0))) (Variable (QualIdent Nothing (Ident "key" 17)))) (Variable (QualIdent Nothing (Ident "elt" 17)))) [])),(Equation (102,1) (FunLhs (Ident "addToFM_C'" 0) [(VariablePattern (Ident "le" 21)),(VariablePattern (Ident "combiner" 21)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 21)),(VariablePattern (Ident "elt" 21)),(VariablePattern (Ident "size" 21)),(VariablePattern (Ident "fm_l" 21)),(VariablePattern (Ident "fm_r" 21))])),(VariablePattern (Ident "new_key" 21)),(VariablePattern (Ident "new_elt" 21))]) (SimpleRhs (103,5) (IfThenElse (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 21))) (Variable (QualIdent Nothing (Ident "new_key" 21)))) (Variable (QualIdent Nothing (Ident "key" 21)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key" 21)))) (Variable (QualIdent Nothing (Ident "elt" 21)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 21)))) (Variable (QualIdent Nothing (Ident "combiner" 21)))) (Variable (QualIdent Nothing (Ident "fm_l" 21)))) (Variable (QualIdent Nothing (Ident "new_key" 21)))) (Variable (QualIdent Nothing (Ident "new_elt" 21)))))) (Variable (QualIdent Nothing (Ident "fm_r" 21)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "new_key" 21))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "key" 21)))) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "new_key" 21)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "combiner" 21))) (Variable (QualIdent Nothing (Ident "elt" 21)))) (Variable (QualIdent Nothing (Ident "new_elt" 21)))))) (Variable (QualIdent Nothing (Ident "size" 21)))) (Variable (QualIdent Nothing (Ident "fm_l" 21)))) (Variable (QualIdent Nothing (Ident "fm_r" 21)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key" 21)))) (Variable (QualIdent Nothing (Ident "elt" 21)))) (Variable (QualIdent Nothing (Ident "fm_l" 21)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 21)))) (Variable (QualIdent Nothing (Ident "combiner" 21)))) (Variable (QualIdent Nothing (Ident "fm_r" 21)))) (Variable (QualIdent Nothing (Ident "new_key" 21)))) (Variable (QualIdent Nothing (Ident "new_elt" 21)))))))) []))])+,(TypeSig (113,1) [(Ident "addListToFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ListType (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (114,1) (Ident "addListToFM" 0) [(Equation (114,1) (FunLhs (Ident "addListToFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 23)),(VariablePattern (Ident "fm" 23))])),(VariablePattern (Ident "key_elt_pairs" 23))]) (SimpleRhs (115,3) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 23)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addListToFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 23)))) (Variable (QualIdent Nothing (Ident "fm" 23)))) (Variable (QualIdent Nothing (Ident "key_elt_pairs" 23)))))) []))])+,(FunctionDecl (117,1) (Ident "addListToFM'" 0) [(Equation (117,1) (FunLhs (Ident "addListToFM'" 0) [(VariablePattern (Ident "le" 25)),(VariablePattern (Ident "fm" 25)),(VariablePattern (Ident "key_elt_pairs" 25))]) (SimpleRhs (118,3) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addListToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 25)))) (Paren (Lambda [(VariablePattern (Ident "_" 28)),(VariablePattern (Ident "new" 27))] (Variable (QualIdent Nothing (Ident "new" 27)))))) (Variable (QualIdent Nothing (Ident "fm" 25)))) (Variable (QualIdent Nothing (Ident "key_elt_pairs" 25)))) []))])+,(FunctionDecl (120,1) (Ident "addListToFM_C'" 0) [(Equation (120,1) (FunLhs (Ident "addListToFM_C'" 0) [(VariablePattern (Ident "le" 29)),(VariablePattern (Ident "combiner" 29)),(VariablePattern (Ident "fm" 29)),(VariablePattern (Ident "key_elt_pairs" 29))]) (SimpleRhs (121,5) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldl" 0))) (Variable (QualIdent Nothing (Ident "add" 30)))) (Variable (QualIdent Nothing (Ident "fm" 29)))) (Variable (QualIdent Nothing (Ident "key_elt_pairs" 29)))) [(FunctionDecl (123,5) (Ident "add" 30) [(Equation (123,5) (FunLhs (Ident "add" 30) [(VariablePattern (Ident "fmap" 31)),(TuplePattern [(VariablePattern (Ident "key" 31)),(VariablePattern (Ident "elt" 31))])]) (SimpleRhs (123,26) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 29)))) (Variable (QualIdent Nothing (Ident "combiner" 29)))) (Variable (QualIdent Nothing (Ident "fmap" 31)))) (Variable (QualIdent Nothing (Ident "key" 31)))) (Variable (QualIdent Nothing (Ident "elt" 31)))) []))])]))])+,(TypeSig (133,1) [(Ident "addToFM_C" 0)] (ArrowType (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (VariableType (Ident "elt" 0)) (VariableType (Ident "elt" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))))+,(FunctionDecl (135,1) (Ident "addToFM_C" 0) [(Equation (135,1) (FunLhs (Ident "addToFM_C" 0) [(VariablePattern (Ident "combiner" 33)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 33)),(VariablePattern (Ident "fm" 33))])),(VariablePattern (Ident "key" 33)),(VariablePattern (Ident "elt" 33))]) (SimpleRhs (136,3) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 33)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 33)))) (Variable (QualIdent Nothing (Ident "combiner" 33)))) (Variable (QualIdent Nothing (Ident "fm" 33)))) (Variable (QualIdent Nothing (Ident "key" 33)))) (Variable (QualIdent Nothing (Ident "elt" 33)))))) []))])+,(TypeSig (139,1) [(Ident "addListToFM_C" 0)] (ArrowType (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (VariableType (Ident "elt" 0)) (VariableType (Ident "elt" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ListType (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (141,1) (Ident "addListToFM_C" 0) [(Equation (141,1) (FunLhs (Ident "addListToFM_C" 0) [(VariablePattern (Ident "combiner" 35)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 35)),(VariablePattern (Ident "fm" 35))])),(VariablePattern (Ident "key_elt_pairs" 35))]) (SimpleRhs (142,3) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 35)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addListToFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 35)))) (Variable (QualIdent Nothing (Ident "combiner" 35)))) (Variable (QualIdent Nothing (Ident "fm" 35)))) (Variable (QualIdent Nothing (Ident "key_elt_pairs" 35)))))) []))])+,(TypeSig (147,1) [(Ident "delFromFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (148,1) (Ident "delFromFM" 0) [(Equation (148,1) (FunLhs (Ident "delFromFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 37)),(VariablePattern (Ident "fm" 37))])),(VariablePattern (Ident "del_key" 37))]) (SimpleRhs (148,32) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 37)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "delFromFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 37)))) (Variable (QualIdent Nothing (Ident "fm" 37)))) (Variable (QualIdent Nothing (Ident "del_key" 37)))))) []))])+,(FunctionDecl (150,1) (Ident "delFromFM'" 0) [(Equation (150,1) (FunLhs (Ident "delFromFM'" 0) [(VariablePattern (Ident "_" 40)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "_" 41))]) (SimpleRhs (150,26) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (151,1) (FunLhs (Ident "delFromFM'" 0) [(VariablePattern (Ident "le" 43)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 43)),(VariablePattern (Ident "elt" 43)),(VariablePattern (Ident "_" 44)),(VariablePattern (Ident "fm_l" 43)),(VariablePattern (Ident "fm_r" 43))])),(VariablePattern (Ident "del_key" 43))]) (SimpleRhs (152,5) (IfThenElse (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 43))) (Variable (QualIdent Nothing (Ident "del_key" 43)))) (Variable (QualIdent Nothing (Ident "key" 43)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key" 43)))) (Variable (QualIdent Nothing (Ident "elt" 43)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "delFromFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 43)))) (Variable (QualIdent Nothing (Ident "fm_l" 43)))) (Variable (QualIdent Nothing (Ident "del_key" 43)))))) (Variable (QualIdent Nothing (Ident "fm_r" 43)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "del_key" 43))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "key" 43)))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueBal" 0))) (Variable (QualIdent Nothing (Ident "le" 43)))) (Variable (QualIdent Nothing (Ident "fm_l" 43)))) (Variable (QualIdent Nothing (Ident "fm_r" 43)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key" 43)))) (Variable (QualIdent Nothing (Ident "elt" 43)))) (Variable (QualIdent Nothing (Ident "fm_l" 43)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "delFromFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 43)))) (Variable (QualIdent Nothing (Ident "fm_r" 43)))) (Variable (QualIdent Nothing (Ident "del_key" 43)))))))) []))])+,(TypeSig (162,1) [(Ident "delListFromFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ListType (VariableType (Ident "key" 0))) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (163,1) (Ident "delListFromFM" 0) [(Equation (163,1) (FunLhs (Ident "delListFromFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 46)),(VariablePattern (Ident "fm" 46))])),(VariablePattern (Ident "keys" 46))]) (SimpleRhs (163,33) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 46)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldl" 0))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "delFromFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 46)))))) (Variable (QualIdent Nothing (Ident "fm" 46)))) (Variable (QualIdent Nothing (Ident "keys" 46)))))) []))])+,(TypeSig (166,1) [(Ident "updFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0))) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])))))+,(FunctionDecl (167,1) (Ident "updFM" 0) [(Equation (167,1) (FunLhs (Ident "updFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "lt" 48)),(VariablePattern (Ident "fm" 48))])),(VariablePattern (Ident "i" 48)),(VariablePattern (Ident "f" 48))]) (SimpleRhs (167,24) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "lt" 48)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 49))) (Variable (QualIdent Nothing (Ident "fm" 48)))))) [(FunctionDecl (169,5) (Ident "upd" 49) [(Equation (169,5) (FunLhs (Ident "upd" 49) [(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (169,45) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (170,5) (FunLhs (Ident "upd" 49) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "k" 52)),(VariablePattern (Ident "x" 52)),(VariablePattern (Ident "h" 52)),(VariablePattern (Ident "l" 52)),(VariablePattern (Ident "r" 52))]))]) (GuardedRhs [(CondExpr (171,13) (InfixApply (Variable (QualIdent Nothing (Ident "i" 48))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "k" 52)))) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "k" 52)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 48))) (Variable (QualIdent Nothing (Ident "x" 52)))))) (Variable (QualIdent Nothing (Ident "h" 52)))) (Variable (QualIdent Nothing (Ident "l" 52)))) (Variable (QualIdent Nothing (Ident "r" 52))))),(CondExpr (172,13) (Apply (Apply (Variable (QualIdent Nothing (Ident "lt" 48))) (Variable (QualIdent Nothing (Ident "i" 48)))) (Variable (QualIdent Nothing (Ident "k" 52)))) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "k" 52)))) (Variable (QualIdent Nothing (Ident "x" 52)))) (Variable (QualIdent Nothing (Ident "h" 52)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 49))) (Variable (QualIdent Nothing (Ident "l" 52)))))) (Variable (QualIdent Nothing (Ident "r" 52))))),(CondExpr (173,13) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "k" 52)))) (Variable (QualIdent Nothing (Ident "x" 52)))) (Variable (QualIdent Nothing (Ident "h" 52)))) (Variable (QualIdent Nothing (Ident "l" 52)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 49))) (Variable (QualIdent Nothing (Ident "r" 52)))))))] []))])]))])+,(TypeSig (176,1) [(Ident "splitFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]),(TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])])]))))+,(FunctionDecl (177,1) (Ident "splitFM" 0) [(Equation (177,1) (FunLhs (Ident "splitFM" 0) [(VariablePattern (Ident "g" 54)),(VariablePattern (Ident "v" 54))]) (SimpleRhs (177,15) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0)))) (Paren (Lambda [(VariablePattern (Ident "x" 56))] (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "delFromFM" 0))) (Variable (QualIdent Nothing (Ident "g" 54)))) (Variable (QualIdent Nothing (Ident "v" 54)))),(Tuple [(Variable (QualIdent Nothing (Ident "v" 54))),(Variable (QualIdent Nothing (Ident "x" 56)))])]))))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM" 0))) (Variable (QualIdent Nothing (Ident "g" 54)))) (Variable (QualIdent Nothing (Ident "v" 54)))))) []))])+,(TypeSig (185,1) [(Ident "plusFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (186,1) (Ident "plusFM" 0) [(Equation (186,1) (FunLhs (Ident "plusFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le1" 57)),(VariablePattern (Ident "fm1" 57))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 58)),(VariablePattern (Ident "fm2" 57))]))]) (SimpleRhs (186,34) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le1" 57)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM'" 0))) (Variable (QualIdent Nothing (Ident "le1" 57)))) (Variable (QualIdent Nothing (Ident "fm1" 57)))) (Variable (QualIdent Nothing (Ident "fm2" 57)))))) []))])+,(FunctionDecl (188,1) (Ident "plusFM'" 0) [(Equation (188,1) (FunLhs (Ident "plusFM'" 0) [(VariablePattern (Ident "_" 61)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "fm2" 60))]) (SimpleRhs (188,26) (Variable (QualIdent Nothing (Ident "fm2" 60))) [])),(Equation (189,1) (FunLhs (Ident "plusFM'" 0) [(VariablePattern (Ident "_" 64)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 63)),(VariablePattern (Ident "elt1" 63)),(VariablePattern (Ident "s1" 63)),(VariablePattern (Ident "left1" 63)),(VariablePattern (Ident "right1" 63))])),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (190,3) (Paren (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 63)))) (Variable (QualIdent Nothing (Ident "elt1" 63)))) (Variable (QualIdent Nothing (Ident "s1" 63)))) (Variable (QualIdent Nothing (Ident "left1" 63)))) (Variable (QualIdent Nothing (Ident "right1" 63))))) [])),(Equation (191,1) (FunLhs (Ident "plusFM'" 0) [(VariablePattern (Ident "le" 66)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 66)),(VariablePattern (Ident "elt1" 66)),(VariablePattern (Ident "s1" 66)),(VariablePattern (Ident "left1" 66)),(VariablePattern (Ident "right1" 66))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key" 66)),(VariablePattern (Ident "elt2" 66)),(VariablePattern (Ident "_" 67)),(VariablePattern (Ident "left" 66)),(VariablePattern (Ident "right" 66))]))]) (SimpleRhs (193,5) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 66)))) (Variable (QualIdent Nothing (Ident "split_key" 66)))) (Variable (QualIdent Nothing (Ident "elt2" 66)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 66)))) (Variable (QualIdent Nothing (Ident "lts" 68)))) (Variable (QualIdent Nothing (Ident "left" 66)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 66)))) (Variable (QualIdent Nothing (Ident "gts" 68)))) (Variable (QualIdent Nothing (Ident "right" 66)))))) [(PatternDecl (195,5) (VariablePattern (Ident "fm1" 68)) (SimpleRhs (195,11) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 66)))) (Variable (QualIdent Nothing (Ident "elt1" 66)))) (Variable (QualIdent Nothing (Ident "s1" 66)))) (Variable (QualIdent Nothing (Ident "left1" 66)))) (Variable (QualIdent Nothing (Ident "right1" 66)))) [])),(PatternDecl (196,5) (VariablePattern (Ident "lts" 68)) (SimpleRhs (196,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitLT" 0))) (Variable (QualIdent Nothing (Ident "le" 66)))) (Variable (QualIdent Nothing (Ident "fm1" 68)))) (Variable (QualIdent Nothing (Ident "split_key" 66)))) [])),(PatternDecl (197,5) (VariablePattern (Ident "gts" 68)) (SimpleRhs (197,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitGT" 0))) (Variable (QualIdent Nothing (Ident "le" 66)))) (Variable (QualIdent Nothing (Ident "fm1" 68)))) (Variable (QualIdent Nothing (Ident "split_key" 66)))) []))]))])+,(TypeSig (201,1) [(Ident "plusFM_C" 0)] (ArrowType (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (VariableType (Ident "elt" 0)) (VariableType (Ident "elt" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (203,1) (Ident "plusFM_C" 0) [(Equation (203,1) (FunLhs (Ident "plusFM_C" 0) [(VariablePattern (Ident "combiner" 72)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le1" 72)),(VariablePattern (Ident "fm1" 72))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 73)),(VariablePattern (Ident "fm2" 72))]))]) (SimpleRhs (204,3) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le1" 72)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le1" 72)))) (Variable (QualIdent Nothing (Ident "combiner" 72)))) (Variable (QualIdent Nothing (Ident "fm1" 72)))) (Variable (QualIdent Nothing (Ident "fm2" 72)))))) []))])+,(FunctionDecl (206,1) (Ident "plusFM_C'" 0) [(Equation (206,1) (FunLhs (Ident "plusFM_C'" 0) [(VariablePattern (Ident "_" 76)),(VariablePattern (Ident "_" 77)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "fm2" 75))]) (SimpleRhs (206,37) (Variable (QualIdent Nothing (Ident "fm2" 75))) [])),(Equation (207,1) (FunLhs (Ident "plusFM_C'" 0) [(VariablePattern (Ident "_" 80)),(VariablePattern (Ident "_" 81)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 79)),(VariablePattern (Ident "elt1" 79)),(VariablePattern (Ident "s1" 79)),(VariablePattern (Ident "left1" 79)),(VariablePattern (Ident "right1" 79))])),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (208,11) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 79)))) (Variable (QualIdent Nothing (Ident "elt1" 79)))) (Variable (QualIdent Nothing (Ident "s1" 79)))) (Variable (QualIdent Nothing (Ident "left1" 79)))) (Variable (QualIdent Nothing (Ident "right1" 79)))) [])),(Equation (209,1) (FunLhs (Ident "plusFM_C'" 0) [(VariablePattern (Ident "le" 83)),(VariablePattern (Ident "combiner" 83)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 83)),(VariablePattern (Ident "elt1" 83)),(VariablePattern (Ident "s1" 83)),(VariablePattern (Ident "left1" 83)),(VariablePattern (Ident "right1" 83))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key" 83)),(VariablePattern (Ident "elt2" 83)),(VariablePattern (Ident "_" 84)),(VariablePattern (Ident "left" 83)),(VariablePattern (Ident "right" 83))]))]) (SimpleRhs (211,5) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 83)))) (Variable (QualIdent Nothing (Ident "split_key" 83)))) (Variable (QualIdent Nothing (Ident "new_elt" 85)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 83)))) (Variable (QualIdent Nothing (Ident "combiner" 83)))) (Variable (QualIdent Nothing (Ident "lts" 85)))) (Variable (QualIdent Nothing (Ident "left" 83)))))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 83)))) (Variable (QualIdent Nothing (Ident "combiner" 83)))) (Variable (QualIdent Nothing (Ident "gts" 85)))) (Variable (QualIdent Nothing (Ident "right" 83)))))) [(PatternDecl (215,5) (VariablePattern (Ident "fm1" 85)) (SimpleRhs (215,11) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 83)))) (Variable (QualIdent Nothing (Ident "elt1" 83)))) (Variable (QualIdent Nothing (Ident "s1" 83)))) (Variable (QualIdent Nothing (Ident "left1" 83)))) (Variable (QualIdent Nothing (Ident "right1" 83)))) [])),(PatternDecl (216,5) (VariablePattern (Ident "lts" 85)) (SimpleRhs (216,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitLT" 0))) (Variable (QualIdent Nothing (Ident "le" 83)))) (Variable (QualIdent Nothing (Ident "fm1" 85)))) (Variable (QualIdent Nothing (Ident "split_key" 83)))) [])),(PatternDecl (217,5) (VariablePattern (Ident "gts" 85)) (SimpleRhs (217,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitGT" 0))) (Variable (QualIdent Nothing (Ident "le" 83)))) (Variable (QualIdent Nothing (Ident "fm1" 85)))) (Variable (QualIdent Nothing (Ident "split_key" 83)))) [])),(PatternDecl (218,5) (VariablePattern (Ident "new_elt" 85)) (SimpleRhs (218,15) (Case (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 83)))) (Variable (QualIdent Nothing (Ident "fm1" 85)))) (Variable (QualIdent Nothing (Ident "split_key" 83)))) [(Alt (219,17) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (219,30) (Variable (QualIdent Nothing (Ident "elt2" 83))) [])),(Alt (220,17) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "elt1'" 92))]) (SimpleRhs (220,31) (Apply (Apply (Variable (QualIdent Nothing (Ident "combiner" 83))) (Variable (QualIdent Nothing (Ident "elt1'" 92)))) (Variable (QualIdent Nothing (Ident "elt2" 83)))) []))]) []))]))])+,(TypeSig (223,1) [(Ident "minusFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (224,1) (Ident "minusFM" 0) [(Equation (224,1) (FunLhs (Ident "minusFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le1" 94)),(VariablePattern (Ident "fm1" 94))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 95)),(VariablePattern (Ident "fm2" 94))]))]) (SimpleRhs (224,35) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le1" 94)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "minusFM'" 0))) (Variable (QualIdent Nothing (Ident "le1" 94)))) (Variable (QualIdent Nothing (Ident "fm1" 94)))) (Variable (QualIdent Nothing (Ident "fm2" 94)))))) []))])+,(FunctionDecl (226,1) (Ident "minusFM'" 0) [(Equation (226,1) (FunLhs (Ident "minusFM'" 0) [(VariablePattern (Ident "_" 98)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "_" 99))]) (SimpleRhs (226,25) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (227,1) (FunLhs (Ident "minusFM'" 0) [(VariablePattern (Ident "_" 102)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 101)),(VariablePattern (Ident "elt1" 101)),(VariablePattern (Ident "s1" 101)),(VariablePattern (Ident "left1" 101)),(VariablePattern (Ident "right1" 101))])),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (228,3) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 101)))) (Variable (QualIdent Nothing (Ident "elt1" 101)))) (Variable (QualIdent Nothing (Ident "s1" 101)))) (Variable (QualIdent Nothing (Ident "left1" 101)))) (Variable (QualIdent Nothing (Ident "right1" 101)))) [])),(Equation (229,1) (FunLhs (Ident "minusFM'" 0) [(VariablePattern (Ident "le" 104)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 104)),(VariablePattern (Ident "elt1" 104)),(VariablePattern (Ident "s1" 104)),(VariablePattern (Ident "left1" 104)),(VariablePattern (Ident "right1" 104))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key" 104)),(VariablePattern (Ident "_" 105)),(VariablePattern (Ident "_" 106)),(VariablePattern (Ident "left" 104)),(VariablePattern (Ident "right" 104))]))]) (SimpleRhs (231,5) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueVBal" 0))) (Variable (QualIdent Nothing (Ident "le" 104)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "minusFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 104)))) (Variable (QualIdent Nothing (Ident "lts" 107)))) (Variable (QualIdent Nothing (Ident "left" 104)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "minusFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 104)))) (Variable (QualIdent Nothing (Ident "gts" 107)))) (Variable (QualIdent Nothing (Ident "right" 104)))))) [(PatternDecl (234,5) (VariablePattern (Ident "fm1" 107)) (SimpleRhs (234,11) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 104)))) (Variable (QualIdent Nothing (Ident "elt1" 104)))) (Variable (QualIdent Nothing (Ident "s1" 104)))) (Variable (QualIdent Nothing (Ident "left1" 104)))) (Variable (QualIdent Nothing (Ident "right1" 104)))) [])),(PatternDecl (235,5) (VariablePattern (Ident "lts" 107)) (SimpleRhs (235,11) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitLT" 0))) (Variable (QualIdent Nothing (Ident "le" 104)))) (Variable (QualIdent Nothing (Ident "fm1" 107)))) (Variable (QualIdent Nothing (Ident "split_key" 104)))) [])),(PatternDecl (236,5) (VariablePattern (Ident "gts" 107)) (SimpleRhs (236,11) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitGT" 0))) (Variable (QualIdent Nothing (Ident "le" 104)))) (Variable (QualIdent Nothing (Ident "fm1" 107)))) (Variable (QualIdent Nothing (Ident "split_key" 104)))) []))]))])+,(TypeSig (240,1) [(Ident "intersectFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (241,1) (Ident "intersectFM" 0) [(Equation (241,1) (FunLhs (Ident "intersectFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le1" 111)),(VariablePattern (Ident "fm1" 111))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 112)),(VariablePattern (Ident "fm2" 111))]))]) (SimpleRhs (241,39) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le1" 111)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM'" 0))) (Variable (QualIdent Nothing (Ident "le1" 111)))) (Variable (QualIdent Nothing (Ident "fm1" 111)))) (Variable (QualIdent Nothing (Ident "fm2" 111)))))) []))])+,(FunctionDecl (243,1) (Ident "intersectFM'" 0) [(Equation (243,1) (FunLhs (Ident "intersectFM'" 0) [(VariablePattern (Ident "le" 114)),(VariablePattern (Ident "fm1" 114)),(VariablePattern (Ident "fm2" 114))]) (SimpleRhs (243,27) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 114)))) (Paren (Lambda [(VariablePattern (Ident "_" 117)),(VariablePattern (Ident "right" 116))] (Variable (QualIdent Nothing (Ident "right" 116)))))) (Variable (QualIdent Nothing (Ident "fm1" 114)))) (Variable (QualIdent Nothing (Ident "fm2" 114)))) []))])+,(TypeSig (247,1) [(Ident "intersectFM_C" 0)] (ArrowType (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (VariableType (Ident "elt" 0)) (VariableType (Ident "elt2" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt2" 0))])))))+,(FunctionDecl (249,1) (Ident "intersectFM_C" 0) [(Equation (249,1) (FunLhs (Ident "intersectFM_C" 0) [(VariablePattern (Ident "combiner" 118)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le1" 118)),(VariablePattern (Ident "fm1" 118))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 119)),(VariablePattern (Ident "fm2" 118))]))]) (SimpleRhs (250,3) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le1" 118)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le1" 118)))) (Variable (QualIdent Nothing (Ident "combiner" 118)))) (Variable (QualIdent Nothing (Ident "fm1" 118)))) (Variable (QualIdent Nothing (Ident "fm2" 118)))))) []))])+,(FunctionDecl (252,1) (Ident "intersectFM_C'" 0) [(Equation (252,1) (FunLhs (Ident "intersectFM_C'" 0) [(VariablePattern (Ident "_" 122)),(VariablePattern (Ident "_" 123)),(VariablePattern (Ident "_" 124)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (252,47) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (253,1) (FunLhs (Ident "intersectFM_C'" 0) [(VariablePattern (Ident "_" 127)),(VariablePattern (Ident "_" 128)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 129)),(VariablePattern (Ident "_" 130)),(VariablePattern (Ident "_" 131)),(VariablePattern (Ident "_" 132)),(VariablePattern (Ident "_" 133))]))]) (SimpleRhs (253,57) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (254,1) (FunLhs (Ident "intersectFM_C'" 0) [(VariablePattern (Ident "le" 135)),(VariablePattern (Ident "combiner" 135)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key1" 135)),(VariablePattern (Ident "elt1" 135)),(VariablePattern (Ident "s1" 135)),(VariablePattern (Ident "left1" 135)),(VariablePattern (Ident "right1" 135))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "split_key" 135)),(VariablePattern (Ident "elt2" 135)),(VariablePattern (Ident "_" 136)),(VariablePattern (Ident "left" 135)),(VariablePattern (Ident "right" 135))]))]) (GuardedRhs [(CondExpr (257,3) (Apply (Variable (QualIdent (Just "Maybe") (Ident "isJust" 0))) (Variable (QualIdent Nothing (Ident "maybe_elt1" 137)))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "split_key" 135)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "combiner" 135))) (Variable (QualIdent Nothing (Ident "elt1'" 137)))) (Variable (QualIdent Nothing (Ident "elt2" 135)))))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "combiner" 135)))) (Variable (QualIdent Nothing (Ident "lts" 137)))) (Variable (QualIdent Nothing (Ident "left" 135)))))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "combiner" 135)))) (Variable (QualIdent Nothing (Ident "gts" 137)))) (Variable (QualIdent Nothing (Ident "right" 135))))))),(CondExpr (262,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueVBal" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "combiner" 135)))) (Variable (QualIdent Nothing (Ident "lts" 137)))) (Variable (QualIdent Nothing (Ident "left" 135)))))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "intersectFM_C'" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "combiner" 135)))) (Variable (QualIdent Nothing (Ident "gts" 137)))) (Variable (QualIdent Nothing (Ident "right" 135)))))))] [(PatternDecl (267,5) (VariablePattern (Ident "fm1" 137)) (SimpleRhs (267,11) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "split_key1" 135)))) (Variable (QualIdent Nothing (Ident "elt1" 135)))) (Variable (QualIdent Nothing (Ident "s1" 135)))) (Variable (QualIdent Nothing (Ident "left1" 135)))) (Variable (QualIdent Nothing (Ident "right1" 135)))) [])),(PatternDecl (268,5) (VariablePattern (Ident "lts" 137)) (SimpleRhs (268,11) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitLT" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "fm1" 137)))) (Variable (QualIdent Nothing (Ident "split_key" 135)))) [])),(PatternDecl (269,5) (VariablePattern (Ident "gts" 137)) (SimpleRhs (269,11) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitGT" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "fm1" 137)))) (Variable (QualIdent Nothing (Ident "split_key" 135)))) [])),(PatternDecl (271,5) (VariablePattern (Ident "maybe_elt1" 137)) (SimpleRhs (271,18) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 135)))) (Variable (QualIdent Nothing (Ident "fm1" 137)))) (Variable (QualIdent Nothing (Ident "split_key" 135)))) [])),(PatternDecl (272,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "elt1'" 137))]) (SimpleRhs (272,19) (Variable (QualIdent Nothing (Ident "maybe_elt1" 137))) []))]))])+,(TypeSig (279,1) [(Ident "foldFM" 0)] (ArrowType (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (VariableType (Ident "a" 0))))))+,(FunctionDecl (280,1) (Ident "foldFM" 0) [(Equation (280,1) (FunLhs (Ident "foldFM" 0) [(VariablePattern (Ident "k" 143)),(VariablePattern (Ident "z" 143)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 143)),(VariablePattern (Ident "fm" 143))]))]) (SimpleRhs (280,25) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "foldFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 143)))) (Variable (QualIdent Nothing (Ident "k" 143)))) (Variable (QualIdent Nothing (Ident "z" 143)))) (Variable (QualIdent Nothing (Ident "fm" 143)))) []))])+,(FunctionDecl (282,1) (Ident "foldFM'" 0) [(Equation (282,1) (FunLhs (Ident "foldFM'" 0) [(VariablePattern (Ident "_" 146)),(VariablePattern (Ident "_" 147)),(VariablePattern (Ident "z" 145)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (282,26) (Variable (QualIdent Nothing (Ident "z" 145))) [])),(Equation (283,1) (FunLhs (Ident "foldFM'" 0) [(VariablePattern (Ident "le" 149)),(VariablePattern (Ident "k" 149)),(VariablePattern (Ident "z" 149)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 149)),(VariablePattern (Ident "elt" 149)),(VariablePattern (Ident "_" 150)),(VariablePattern (Ident "fm_l" 149)),(VariablePattern (Ident "fm_r" 149))]))]) (SimpleRhs (284,5) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "foldFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 149)))) (Variable (QualIdent Nothing (Ident "k" 149)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "k" 149))) (Variable (QualIdent Nothing (Ident "key" 149)))) (Variable (QualIdent Nothing (Ident "elt" 149)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "foldFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 149)))) (Variable (QualIdent Nothing (Ident "k" 149)))) (Variable (QualIdent Nothing (Ident "z" 149)))) (Variable (QualIdent Nothing (Ident "fm_r" 149)))))))) (Variable (QualIdent Nothing (Ident "fm_l" 149)))) []))])+,(TypeSig (287,1) [(Ident "mapFM" 0)] (ArrowType (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt1" 0)) (VariableType (Ident "elt2" 0)))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt1" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt2" 0))]))))+,(FunctionDecl (288,1) (Ident "mapFM" 0) [(Equation (288,1) (FunLhs (Ident "mapFM" 0) [(VariablePattern (Ident "f" 152)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 152)),(VariablePattern (Ident "fm" 152))]))]) (SimpleRhs (288,22) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 152)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mapFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 152)))) (Variable (QualIdent Nothing (Ident "f" 152)))) (Variable (QualIdent Nothing (Ident "fm" 152)))))) []))])+,(FunctionDecl (290,1) (Ident "mapFM'" 0) [(Equation (290,1) (FunLhs (Ident "mapFM'" 0) [(VariablePattern (Ident "_" 155)),(VariablePattern (Ident "_" 156)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (290,23) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (291,1) (FunLhs (Ident "mapFM'" 0) [(VariablePattern (Ident "le" 158)),(VariablePattern (Ident "f" 158)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 158)),(VariablePattern (Ident "elt" 158)),(VariablePattern (Ident "size" 158)),(VariablePattern (Ident "fm_l" 158)),(VariablePattern (Ident "fm_r" 158))]))]) (SimpleRhs (292,5) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key" 158)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 158))) (Variable (QualIdent Nothing (Ident "key" 158)))) (Variable (QualIdent Nothing (Ident "elt" 158)))))) (Variable (QualIdent Nothing (Ident "size" 158)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mapFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 158)))) (Variable (QualIdent Nothing (Ident "f" 158)))) (Variable (QualIdent Nothing (Ident "fm_l" 158)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mapFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 158)))) (Variable (QualIdent Nothing (Ident "f" 158)))) (Variable (QualIdent Nothing (Ident "fm_r" 158)))))) []))])+,(TypeSig (296,1) [(Ident "filterFM" 0)] (ArrowType (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (297,1) (Ident "filterFM" 0) [(Equation (297,1) (FunLhs (Ident "filterFM" 0) [(VariablePattern (Ident "p" 160)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 160)),(VariablePattern (Ident "fm" 160))]))]) (SimpleRhs (297,25) (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "FM" 0))) (Variable (QualIdent Nothing (Ident "le" 160)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "filterFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 160)))) (Variable (QualIdent Nothing (Ident "p" 160)))) (Variable (QualIdent Nothing (Ident "fm" 160)))))) []))])+,(FunctionDecl (299,1) (Ident "filterFM'" 0) [(Equation (299,1) (FunLhs (Ident "filterFM'" 0) [(VariablePattern (Ident "_" 163)),(VariablePattern (Ident "_" 164)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (299,26) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (300,1) (FunLhs (Ident "filterFM'" 0) [(VariablePattern (Ident "le" 166)),(VariablePattern (Ident "p" 166)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 166)),(VariablePattern (Ident "elt" 166)),(VariablePattern (Ident "_" 167)),(VariablePattern (Ident "fm_l" 166)),(VariablePattern (Ident "fm_r" 166))]))]) (GuardedRhs [(CondExpr (301,3) (Apply (Apply (Variable (QualIdent Nothing (Ident "p" 166))) (Variable (QualIdent Nothing (Ident "key" 166)))) (Variable (QualIdent Nothing (Ident "elt" 166)))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 166)))) (Variable (QualIdent Nothing (Ident "key" 166)))) (Variable (QualIdent Nothing (Ident "elt" 166)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "filterFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 166)))) (Variable (QualIdent Nothing (Ident "p" 166)))) (Variable (QualIdent Nothing (Ident "fm_l" 166)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "filterFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 166)))) (Variable (QualIdent Nothing (Ident "p" 166)))) (Variable (QualIdent Nothing (Ident "fm_r" 166))))))),(CondExpr (304,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueVBal" 0))) (Variable (QualIdent Nothing (Ident "le" 166)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "filterFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 166)))) (Variable (QualIdent Nothing (Ident "p" 166)))) (Variable (QualIdent Nothing (Ident "fm_l" 166)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "filterFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 166)))) (Variable (QualIdent Nothing (Ident "p" 166)))) (Variable (QualIdent Nothing (Ident "fm_r" 166)))))))] []))])+,(TypeSig (312,1) [(Ident "sizeFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (313,1) (Ident "sizeFM" 0) [(Equation (313,1) (FunLhs (Ident "sizeFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 170)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]))]) (SimpleRhs (313,39) (Literal (Int (Ident "_" 172) 0)) [])),(Equation (314,1) (FunLhs (Ident "sizeFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 174)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 175)),(VariablePattern (Ident "_" 176)),(VariablePattern (Ident "size" 173)),(VariablePattern (Ident "_" 177)),(VariablePattern (Ident "_" 178))]))]))]) (SimpleRhs (314,39) (Variable (QualIdent Nothing (Ident "size" 173))) []))])+,(FunctionDecl (316,1) (Ident "sizeFM'" 0) [(Equation (316,1) (FunLhs (Ident "sizeFM'" 0) [(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (316,32) (Literal (Int (Ident "_" 182) 0)) [])),(Equation (317,1) (FunLhs (Ident "sizeFM'" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 184)),(VariablePattern (Ident "_" 185)),(VariablePattern (Ident "size" 183)),(VariablePattern (Ident "_" 186)),(VariablePattern (Ident "_" 187))]))]) (SimpleRhs (317,33) (Variable (QualIdent Nothing (Ident "size" 183))) []))])+,(TypeSig (321,1) [(Ident "eqFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (322,1) (Ident "eqFM" 0) [(Equation (322,1) (OpLhs (VariablePattern (Ident "fm_1" 189)) (Ident "eqFM" 0) (VariablePattern (Ident "fm_2" 189))) (SimpleRhs (323,3) (InfixApply (Paren (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM" 0))) (Variable (QualIdent Nothing (Ident "fm_1" 189)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM" 0))) (Variable (QualIdent Nothing (Ident "fm_2" 189)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "fmToList" 0))) (Variable (QualIdent Nothing (Ident "fm_1" 189)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "fmToList" 0))) (Variable (QualIdent Nothing (Ident "fm_2" 189))))))) []))])+,(TypeSig (327,1) [(Ident "isEmptyFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (328,1) (Ident "isEmptyFM" 0) [(Equation (328,1) (FunLhs (Ident "isEmptyFM" 0) [(VariablePattern (Ident "fm" 191))]) (SimpleRhs (328,16) (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM" 0))) (Variable (QualIdent Nothing (Ident "fm" 191)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 193) 0))) []))])+,(TypeSig (331,1) [(Ident "elemFM" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (332,1) (Ident "elemFM" 0) [(Equation (332,1) (OpLhs (VariablePattern (Ident "key" 194)) (Ident "elemFM" 0) (VariablePattern (Ident "fm" 194))) (SimpleRhs (332,19) (Apply (Variable (QualIdent (Just "Maybe") (Ident "isJust" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM" 0))) (Variable (QualIdent Nothing (Ident "fm" 194)))) (Variable (QualIdent Nothing (Ident "key" 194)))))) []))])+,(TypeSig (335,1) [(Ident "lookupFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (336,1) (Ident "lookupFM" 0) [(Equation (336,1) (FunLhs (Ident "lookupFM" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "le" 196)),(VariablePattern (Ident "fm" 196))])),(VariablePattern (Ident "key" 196))]) (SimpleRhs (336,27) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 196)))) (Variable (QualIdent Nothing (Ident "fm" 196)))) (Variable (QualIdent Nothing (Ident "key" 196)))) []))])+,(FunctionDecl (338,1) (Ident "lookupFM'" 0) [(Equation (338,1) (FunLhs (Ident "lookupFM'" 0) [(VariablePattern (Ident "_" 199)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "_" 200))]) (SimpleRhs (338,28) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (339,1) (FunLhs (Ident "lookupFM'" 0) [(VariablePattern (Ident "le" 202)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 202)),(VariablePattern (Ident "elt" 202)),(VariablePattern (Ident "_" 203)),(VariablePattern (Ident "fm_l" 202)),(VariablePattern (Ident "fm_r" 202))])),(VariablePattern (Ident "key_to_find" 202))]) (SimpleRhs (340,5) (IfThenElse (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 202))) (Variable (QualIdent Nothing (Ident "key_to_find" 202)))) (Variable (QualIdent Nothing (Ident "key" 202)))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 202)))) (Variable (QualIdent Nothing (Ident "fm_l" 202)))) (Variable (QualIdent Nothing (Ident "key_to_find" 202)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "key_to_find" 202))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "key" 202)))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Variable (QualIdent Nothing (Ident "elt" 202)))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 202)))) (Variable (QualIdent Nothing (Ident "fm_r" 202)))) (Variable (QualIdent Nothing (Ident "key_to_find" 202)))))) []))])+,(TypeSig (350,1) [(Ident "lookupWithDefaultFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (VariableType (Ident "key" 0)) (VariableType (Ident "elt" 0))))))+,(FunctionDecl (351,1) (Ident "lookupWithDefaultFM" 0) [(Equation (351,1) (FunLhs (Ident "lookupWithDefaultFM" 0) [(VariablePattern (Ident "fm" 205)),(VariablePattern (Ident "deflt" 205)),(VariablePattern (Ident "key" 205))]) (SimpleRhs (352,5) (Case (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "lookupFM" 0))) (Variable (QualIdent Nothing (Ident "fm" 205)))) (Variable (QualIdent Nothing (Ident "key" 205)))) [(Alt (353,7) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (353,18) (Variable (QualIdent Nothing (Ident "deflt" 205))) [])),(Alt (354,7) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "elt" 209))]) (SimpleRhs (354,19) (Variable (QualIdent Nothing (Ident "elt" 209))) []))]) []))])+,(TypeSig (357,1) [(Ident "keyOrder" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "_" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "key" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))))+,(FunctionDecl (358,1) (Ident "keyOrder" 0) [(Equation (358,1) (FunLhs (Ident "keyOrder" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "lt" 211)),(VariablePattern (Ident "_" 212))]))]) (SimpleRhs (358,22) (Variable (QualIdent Nothing (Ident "lt" 211))) []))])+,(TypeSig (362,1) [(Ident "minFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])])))+,(FunctionDecl (363,1) (Ident "minFM" 0) [(Equation (363,1) (FunLhs (Ident "minFM" 0) []) (SimpleRhs (363,9) (InfixApply (Variable (QualIdent Nothing (Ident "min" 215))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FiniteMap") (Ident "tree" 0)))) [(FunctionDecl (365,4) (Ident "min" 215) [(Equation (365,4) (FunLhs (Ident "min" 215) [(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (365,29) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (366,4) (FunLhs (Ident "min" 215) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "k" 218)),(VariablePattern (Ident "x" 218)),(VariablePattern (Ident "_" 219)),(VariablePattern (Ident "l" 218)),(VariablePattern (Ident "_" 220))]))]) (GuardedRhs [(CondExpr (366,27) (InfixApply (Variable (QualIdent Nothing (Ident "l" 218))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "k" 218))),(Variable (QualIdent Nothing (Ident "x" 218)))]))),(CondExpr (367,27) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent Nothing (Ident "min" 215))) (Variable (QualIdent Nothing (Ident "l" 218)))))] []))])]))])+,(TypeSig (371,1) [(Ident "maxFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])])))+,(FunctionDecl (372,1) (Ident "maxFM" 0) [(Equation (372,1) (FunLhs (Ident "maxFM" 0) []) (SimpleRhs (372,9) (InfixApply (Variable (QualIdent Nothing (Ident "max" 223))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "FiniteMap") (Ident "tree" 0)))) [(FunctionDecl (374,5) (Ident "max" 223) [(Equation (374,5) (FunLhs (Ident "max" 223) [(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (374,30) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (375,5) (FunLhs (Ident "max" 223) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "k" 226)),(VariablePattern (Ident "x" 226)),(VariablePattern (Ident "_" 227)),(VariablePattern (Ident "_" 228)),(VariablePattern (Ident "r" 226))]))]) (GuardedRhs [(CondExpr (375,28) (InfixApply (Variable (QualIdent Nothing (Ident "r" 226))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "k" 226))),(Variable (QualIdent Nothing (Ident "x" 226)))]))),(CondExpr (376,28) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent Nothing (Ident "max" 223))) (Variable (QualIdent Nothing (Ident "r" 226)))))] []))])]))])+,(TypeSig (386,1) [(Ident "fmToList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ListType (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (387,1) (Ident "fmToList" 0) [(Equation (387,1) (FunLhs (Ident "fmToList" 0) [(VariablePattern (Ident "fm" 230))]) (SimpleRhs (387,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "foldFM" 0))) (Paren (Lambda [(VariablePattern (Ident "key" 232)),(VariablePattern (Ident "elt" 232)),(VariablePattern (Ident "rest" 232))] (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "key" 232))),(Variable (QualIdent Nothing (Ident "elt" 232)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "rest" 232))))))) (List [])) (Variable (QualIdent Nothing (Ident "fm" 230)))) []))])+,(TypeSig (392,1) [(Ident "keysFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "_" 0))]) (ListType (VariableType (Ident "key" 0)))))+,(FunctionDecl (393,1) (Ident "keysFM" 0) [(Equation (393,1) (FunLhs (Ident "keysFM" 0) [(VariablePattern (Ident "fm" 233))]) (SimpleRhs (393,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "foldFM" 0))) (Paren (Lambda [(VariablePattern (Ident "key" 235)),(VariablePattern (Ident "_" 236)),(VariablePattern (Ident "rest" 235))] (InfixApply (Variable (QualIdent Nothing (Ident "key" 235))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "rest" 235))))))) (List [])) (Variable (QualIdent Nothing (Ident "fm" 233)))) []))])+,(TypeSig (398,1) [(Ident "eltsFM" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "elt" 0))]) (ListType (VariableType (Ident "elt" 0)))))+,(FunctionDecl (399,1) (Ident "eltsFM" 0) [(Equation (399,1) (FunLhs (Ident "eltsFM" 0) [(VariablePattern (Ident "fm" 237))]) (SimpleRhs (399,15) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "foldFM" 0))) (Paren (Lambda [(VariablePattern (Ident "_" 240)),(VariablePattern (Ident "elt" 239)),(VariablePattern (Ident "rest" 239))] (InfixApply (Variable (QualIdent Nothing (Ident "elt" 239))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "rest" 239))))))) (List [])) (Variable (QualIdent Nothing (Ident "fm" 237)))) []))])+,(TypeSig (405,1) [(Ident "fmToListPreOrder" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ListType (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (406,1) (Ident "fmToListPreOrder" 0) [(Equation (406,1) (FunLhs (Ident "fmToListPreOrder" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 242)),(VariablePattern (Ident "fm" 241))]))]) (SimpleRhs (406,30) (Apply (Apply (Variable (QualIdent Nothing (Ident "pre" 243))) (Variable (QualIdent Nothing (Ident "fm" 241)))) (List [])) [(FunctionDecl (408,6) (Ident "pre" 243) [(Equation (408,6) (FunLhs (Ident "pre" 243) [(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "xs" 244))]) (SimpleRhs (408,23) (Variable (QualIdent Nothing (Ident "xs" 244))) [])),(Equation (409,6) (FunLhs (Ident "pre" 243) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "k" 246)),(VariablePattern (Ident "x" 246)),(VariablePattern (Ident "_" 247)),(VariablePattern (Ident "l" 246)),(VariablePattern (Ident "r" 246))])),(VariablePattern (Ident "xs" 246))]) (SimpleRhs (409,34) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "k" 246))),(Variable (QualIdent Nothing (Ident "x" 246)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "pre" 243))) (Variable (QualIdent Nothing (Ident "l" 246)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "pre" 243))) (Variable (QualIdent Nothing (Ident "r" 246)))) (Variable (QualIdent Nothing (Ident "xs" 246))))))) []))])]))])+,(TypeSig (413,1) [(Ident "fmSortBy" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ListType (VariableType (Ident "key" 0))) (ListType (VariableType (Ident "key" 0))))))+,(FunctionDecl (414,1) (Ident "fmSortBy" 0) [(Equation (414,1) (FunLhs (Ident "fmSortBy" 0) [(VariablePattern (Ident "p" 249)),(VariablePattern (Ident "l" 249))]) (SimpleRhs (414,16) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "keysFM" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "listToFM" 0))) (Variable (QualIdent Nothing (Ident "p" 249)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zip" 0))) (Variable (QualIdent Nothing (Ident "l" 249)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "repeat" 0))) (Tuple [])))))))) []))])+,(FunctionDecl (422,1) (Ident "tree" 0) [(Equation (422,1) (FunLhs (Ident "tree" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "FM" 0)) [(VariablePattern (Ident "_" 252)),(VariablePattern (Ident "fm" 251))]))]) (SimpleRhs (422,18) (Variable (QualIdent Nothing (Ident "fm" 251))) []))])+,(FunctionDecl (432,1) (Ident "toGT" 0) [(Equation (432,1) (FunLhs (Ident "toGT" 0) [(VariablePattern (Ident "le" 254)),(VariablePattern (Ident "x" 254)),(VariablePattern (Ident "y" 254))]) (SimpleRhs (432,15) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 254))) (Variable (QualIdent Nothing (Ident "x" 254)))) (Variable (QualIdent Nothing (Ident "y" 254)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 254))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "y" 254))))) []))])+,(FunctionDecl (434,1) (Ident "isEmptyFM'" 0) [(Equation (434,1) (FunLhs (Ident "isEmptyFM'" 0) [(VariablePattern (Ident "fm" 256))]) (SimpleRhs (434,17) (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm" 256)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 258) 0))) []))])+,(TypeSig (446,1) [(Ident "sIZE_RATIO" 0)] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(FunctionDecl (447,1) (Ident "sIZE_RATIO" 0) [(Equation (447,1) (FunLhs (Ident "sIZE_RATIO" 0) []) (SimpleRhs (447,14) (Literal (Int (Ident "_" 261) 5)) []))])+,(TypeSig (449,1) [(Ident "mkBranch" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))))+,(FunctionDecl (454,1) (Ident "mkBranch" 0) [(Equation (454,1) (FunLhs (Ident "mkBranch" 0) [(VariablePattern (Ident "_" 263)),(VariablePattern (Ident "key" 262)),(VariablePattern (Ident "elt" 262)),(VariablePattern (Ident "fm_l" 262)),(VariablePattern (Ident "fm_r" 262))]) (SimpleRhs (455,5) (Let [(PatternDecl (455,9) (VariablePattern (Ident "result" 269)) (SimpleRhs (455,18) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key" 262)))) (Variable (QualIdent Nothing (Ident "elt" 262)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "unbox" 264))) (Paren (InfixApply (InfixApply (Literal (Int (Ident "_" 271) 1)) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "left_size" 264)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "right_size" 264)))))))) (Variable (QualIdent Nothing (Ident "fm_l" 262)))) (Variable (QualIdent Nothing (Ident "fm_r" 262)))) []))] (Variable (QualIdent Nothing (Ident "result" 269)))) [(PatternDecl (478,5) (VariablePattern (Ident "left_size" 264)) (SimpleRhs (478,18) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_l" 262)))) [])),(PatternDecl (479,5) (VariablePattern (Ident "right_size" 264)) (SimpleRhs (479,18) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_r" 262)))) [])),(TypeSig (482,5) [(Ident "unbox" 264)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))),(FunctionDecl (483,5) (Ident "unbox" 264) [(Equation (483,5) (FunLhs (Ident "unbox" 264) [(VariablePattern (Ident "x" 267))]) (SimpleRhs (483,15) (Variable (QualIdent Nothing (Ident "x" 267))) []))])]))])+,(TypeSig (491,1) [(Ident "mkBalBranch" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))))+,(FunctionDecl (495,1) (Ident "mkBalBranch" 0) [(Equation (495,1) (FunLhs (Ident "mkBalBranch" 0) [(VariablePattern (Ident "key" 272)),(VariablePattern (Ident "elt" 272)),(VariablePattern (Ident "fm_L" 272)),(VariablePattern (Ident "fm_R" 272))]) (GuardedRhs [(CondExpr (497,3) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "size_l" 273))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "size_r" 273)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 300) 2))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 301) 1))) (Variable (QualIdent Nothing (Ident "key" 272)))) (Variable (QualIdent Nothing (Ident "elt" 272)))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) (Variable (QualIdent Nothing (Ident "fm_R" 272))))),(CondExpr (500,3) (InfixApply (Variable (QualIdent Nothing (Ident "size_r" 273))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (InfixApply (Variable (QualIdent (Just "FiniteMap") (Ident "sIZE_RATIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "size_l" 273))))) (Case (Variable (QualIdent Nothing (Ident "fm_R" 272))) [(Alt (502,9) (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 303)),(VariablePattern (Ident "_" 304)),(VariablePattern (Ident "_" 305)),(VariablePattern (Ident "fm_rl" 302)),(VariablePattern (Ident "fm_rr" 302))]) (SimpleRhs (503,15) (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_rl" 302)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (InfixApply (Literal (Int (Ident "_" 307) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_rr" 302)))))) (Apply (Apply (Variable (QualIdent Nothing (Ident "single_L" 273))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) (Variable (QualIdent Nothing (Ident "fm_R" 272)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "double_L" 273))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) (Variable (QualIdent Nothing (Ident "fm_R" 272))))) []))])),(CondExpr (508,3) (InfixApply (Variable (QualIdent Nothing (Ident "size_l" 273))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (InfixApply (Variable (QualIdent (Just "FiniteMap") (Ident "sIZE_RATIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "size_r" 273))))) (Case (Variable (QualIdent Nothing (Ident "fm_L" 272))) [(Alt (510,9) (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 309)),(VariablePattern (Ident "_" 310)),(VariablePattern (Ident "_" 311)),(VariablePattern (Ident "fm_ll" 308)),(VariablePattern (Ident "fm_lr" 308))]) (SimpleRhs (511,15) (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_lr" 308)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (InfixApply (Literal (Int (Ident "_" 313) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_ll" 308)))))) (Apply (Apply (Variable (QualIdent Nothing (Ident "single_R" 273))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) (Variable (QualIdent Nothing (Ident "fm_R" 272)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "double_R" 273))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) (Variable (QualIdent Nothing (Ident "fm_R" 272))))) []))])),(CondExpr (516,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 314) 2))) (Variable (QualIdent Nothing (Ident "key" 272)))) (Variable (QualIdent Nothing (Ident "elt" 272)))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) (Variable (QualIdent Nothing (Ident "fm_R" 272)))))] [(PatternDecl (520,5) (VariablePattern (Ident "size_l" 273)) (SimpleRhs (520,16) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_L" 272)))) [])),(PatternDecl (521,5) (VariablePattern (Ident "size_r" 273)) (SimpleRhs (521,16) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_R" 272)))) [])),(FunctionDecl (523,5) (Ident "single_L" 273) [(Equation (523,5) (FunLhs (Ident "single_L" 273) [(VariablePattern (Ident "fm_l" 276)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_r" 276)),(VariablePattern (Ident "elt_r" 276)),(VariablePattern (Ident "_" 277)),(VariablePattern (Ident "fm_rl" 276)),(VariablePattern (Ident "fm_rr" 276))]))]) (SimpleRhs (524,11) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 279) 3))) (Variable (QualIdent Nothing (Ident "key_r" 276)))) (Variable (QualIdent Nothing (Ident "elt_r" 276)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 280) 4))) (Variable (QualIdent Nothing (Ident "key" 272)))) (Variable (QualIdent Nothing (Ident "elt" 272)))) (Variable (QualIdent Nothing (Ident "fm_l" 276)))) (Variable (QualIdent Nothing (Ident "fm_rl" 276)))))) (Variable (QualIdent Nothing (Ident "fm_rr" 276)))) []))]),(FunctionDecl (526,5) (Ident "double_L" 273) [(Equation (526,5) (FunLhs (Ident "double_L" 273) [(VariablePattern (Ident "fm_l" 281)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_r" 281)),(VariablePattern (Ident "elt_r" 281)),(VariablePattern (Ident "_" 282)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_rl" 281)),(VariablePattern (Ident "elt_rl" 281)),(VariablePattern (Ident "_" 283)),(VariablePattern (Ident "fm_rll" 281)),(VariablePattern (Ident "fm_rlr" 281))])),(VariablePattern (Ident "fm_rr" 281))]))]) (SimpleRhs (527,11) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 285) 5))) (Variable (QualIdent Nothing (Ident "key_rl" 281)))) (Variable (QualIdent Nothing (Ident "elt_rl" 281)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 286) 6))) (Variable (QualIdent Nothing (Ident "key" 272)))) (Variable (QualIdent Nothing (Ident "elt" 272)))) (Variable (QualIdent Nothing (Ident "fm_l" 281)))) (Variable (QualIdent Nothing (Ident "fm_rll" 281)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 287) 7))) (Variable (QualIdent Nothing (Ident "key_r" 281)))) (Variable (QualIdent Nothing (Ident "elt_r" 281)))) (Variable (QualIdent Nothing (Ident "fm_rlr" 281)))) (Variable (QualIdent Nothing (Ident "fm_rr" 281)))))) []))]),(FunctionDecl (530,5) (Ident "single_R" 273) [(Equation (530,5) (FunLhs (Ident "single_R" 273) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 288)),(VariablePattern (Ident "elt_l" 288)),(VariablePattern (Ident "_" 289)),(VariablePattern (Ident "fm_ll" 288)),(VariablePattern (Ident "fm_lr" 288))])),(VariablePattern (Ident "fm_r" 288))]) (SimpleRhs (531,11) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 291) 8))) (Variable (QualIdent Nothing (Ident "key_l" 288)))) (Variable (QualIdent Nothing (Ident "elt_l" 288)))) (Variable (QualIdent Nothing (Ident "fm_ll" 288)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 292) 9))) (Variable (QualIdent Nothing (Ident "key" 272)))) (Variable (QualIdent Nothing (Ident "elt" 272)))) (Variable (QualIdent Nothing (Ident "fm_lr" 288)))) (Variable (QualIdent Nothing (Ident "fm_r" 288)))))) []))]),(FunctionDecl (533,5) (Ident "double_R" 273) [(Equation (533,5) (FunLhs (Ident "double_R" 273) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 293)),(VariablePattern (Ident "elt_l" 293)),(VariablePattern (Ident "_" 294)),(VariablePattern (Ident "fm_ll" 293)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_lr" 293)),(VariablePattern (Ident "elt_lr" 293)),(VariablePattern (Ident "_" 295)),(VariablePattern (Ident "fm_lrl" 293)),(VariablePattern (Ident "fm_lrr" 293))]))])),(VariablePattern (Ident "fm_r" 293))]) (SimpleRhs (534,11) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 297) 10))) (Variable (QualIdent Nothing (Ident "key_lr" 293)))) (Variable (QualIdent Nothing (Ident "elt_lr" 293)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 298) 11))) (Variable (QualIdent Nothing (Ident "key_l" 293)))) (Variable (QualIdent Nothing (Ident "elt_l" 293)))) (Variable (QualIdent Nothing (Ident "fm_ll" 293)))) (Variable (QualIdent Nothing (Ident "fm_lrl" 293)))))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 299) 12))) (Variable (QualIdent Nothing (Ident "key" 272)))) (Variable (QualIdent Nothing (Ident "elt" 272)))) (Variable (QualIdent Nothing (Ident "fm_lrr" 293)))) (Variable (QualIdent Nothing (Ident "fm_r" 293)))))) []))])]))])+,(TypeSig (538,1) [(Ident "mkVBalBranch" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "elt" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))))+,(FunctionDecl (548,1) (Ident "mkVBalBranch" 0) [(Equation (548,1) (FunLhs (Ident "mkVBalBranch" 0) [(VariablePattern (Ident "le" 315)),(VariablePattern (Ident "key" 315)),(VariablePattern (Ident "elt" 315)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "fm_r" 315))]) (SimpleRhs (548,40) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 315)))) (Variable (QualIdent Nothing (Ident "fm_r" 315)))) (Variable (QualIdent Nothing (Ident "key" 315)))) (Variable (QualIdent Nothing (Ident "elt" 315)))) [])),(Equation (549,1) (FunLhs (Ident "mkVBalBranch" 0) [(VariablePattern (Ident "le" 317)),(VariablePattern (Ident "key" 317)),(VariablePattern (Ident "elt" 317)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 317)),(VariablePattern (Ident "elt_l" 317)),(VariablePattern (Ident "s_l" 317)),(VariablePattern (Ident "fm_ll" 317)),(VariablePattern (Ident "fm_lr" 317))])),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]) (SimpleRhs (550,4) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM'" 0))) (Variable (QualIdent Nothing (Ident "le" 317)))) (Paren (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_l" 317)))) (Variable (QualIdent Nothing (Ident "elt_l" 317)))) (Variable (QualIdent Nothing (Ident "s_l" 317)))) (Variable (QualIdent Nothing (Ident "fm_ll" 317)))) (Variable (QualIdent Nothing (Ident "fm_lr" 317)))))) (Variable (QualIdent Nothing (Ident "key" 317)))) (Variable (QualIdent Nothing (Ident "elt" 317)))) [])),(Equation (552,1) (FunLhs (Ident "mkVBalBranch" 0) [(VariablePattern (Ident "le" 319)),(VariablePattern (Ident "key" 319)),(VariablePattern (Ident "elt" 319)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 319)),(VariablePattern (Ident "elt_l" 319)),(VariablePattern (Ident "s_l" 319)),(VariablePattern (Ident "fm_ll" 319)),(VariablePattern (Ident "fm_lr" 319))])),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_r" 319)),(VariablePattern (Ident "elt_r" 319)),(VariablePattern (Ident "s_r" 319)),(VariablePattern (Ident "fm_rl" 319)),(VariablePattern (Ident "fm_rr" 319))]))]) (GuardedRhs [(CondExpr (554,3) (InfixApply (InfixApply (Variable (QualIdent (Just "FiniteMap") (Ident "sIZE_RATIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "size_l" 320)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "size_r" 320)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key_r" 319)))) (Variable (QualIdent Nothing (Ident "elt_r" 319)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 319)))) (Variable (QualIdent Nothing (Ident "key" 319)))) (Variable (QualIdent Nothing (Ident "elt" 319)))) (Variable (QualIdent Nothing (Ident "fm_l" 320)))) (Variable (QualIdent Nothing (Ident "fm_rl" 319)))))) (Variable (QualIdent Nothing (Ident "fm_rr" 319))))),(CondExpr (557,3) (InfixApply (InfixApply (Variable (QualIdent (Just "FiniteMap") (Ident "sIZE_RATIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "size_r" 320)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "size_l" 320)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key_l" 319)))) (Variable (QualIdent Nothing (Ident "elt_l" 319)))) (Variable (QualIdent Nothing (Ident "fm_ll" 319)))) (Paren (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 319)))) (Variable (QualIdent Nothing (Ident "key" 319)))) (Variable (QualIdent Nothing (Ident "elt" 319)))) (Variable (QualIdent Nothing (Ident "fm_lr" 319)))) (Variable (QualIdent Nothing (Ident "fm_r" 320))))))),(CondExpr (560,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBranch" 0))) (Literal (Int (Ident "_" 325) 13))) (Variable (QualIdent Nothing (Ident "key" 319)))) (Variable (QualIdent Nothing (Ident "elt" 319)))) (Variable (QualIdent Nothing (Ident "fm_l" 320)))) (Variable (QualIdent Nothing (Ident "fm_r" 320)))))] [(PatternDecl (564,5) (VariablePattern (Ident "fm_l" 320)) (SimpleRhs (564,12) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_l" 319)))) (Variable (QualIdent Nothing (Ident "elt_l" 319)))) (Variable (QualIdent Nothing (Ident "s_l" 319)))) (Variable (QualIdent Nothing (Ident "fm_ll" 319)))) (Variable (QualIdent Nothing (Ident "fm_lr" 319)))) [])),(PatternDecl (565,5) (VariablePattern (Ident "fm_r" 320)) (SimpleRhs (565,12) (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_r" 319)))) (Variable (QualIdent Nothing (Ident "elt_r" 319)))) (Variable (QualIdent Nothing (Ident "s_r" 319)))) (Variable (QualIdent Nothing (Ident "fm_rl" 319)))) (Variable (QualIdent Nothing (Ident "fm_rr" 319)))) [])),(PatternDecl (566,5) (VariablePattern (Ident "size_l" 320)) (SimpleRhs (566,14) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_l" 320)))) [])),(PatternDecl (567,5) (VariablePattern (Ident "size_r" 320)) (SimpleRhs (567,14) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_r" 320)))) []))]))])+,(TypeSig (574,1) [(Ident "glueBal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (578,1) (Ident "glueBal" 0) [(Equation (578,1) (FunLhs (Ident "glueBal" 0) [(VariablePattern (Ident "le" 326)),(VariablePattern (Ident "fm1" 326)),(VariablePattern (Ident "fm2" 326))]) (SimpleRhs (579,3) (IfThenElse (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM'" 0))) (Variable (QualIdent Nothing (Ident "fm1" 326)))) (Variable (QualIdent Nothing (Ident "fm2" 326))) (IfThenElse (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM'" 0))) (Variable (QualIdent Nothing (Ident "fm2" 326)))) (Variable (QualIdent Nothing (Ident "fm1" 326))) (Let [(PatternDecl (587,18) (TuplePattern [(VariablePattern (Ident "mid_key1" 328)),(VariablePattern (Ident "mid_elt1" 328))]) (SimpleRhs (587,41) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "findMax" 0))) (Variable (QualIdent Nothing (Ident "fm1" 326)))) [])),(PatternDecl (588,18) (TuplePattern [(VariablePattern (Ident "mid_key2" 328)),(VariablePattern (Ident "mid_elt2" 328))]) (SimpleRhs (588,41) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "findMin" 0))) (Variable (QualIdent Nothing (Ident "fm2" 326)))) []))] (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm2" 326)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm1" 326))))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "mid_key2" 328)))) (Variable (QualIdent Nothing (Ident "mid_elt2" 328)))) (Variable (QualIdent Nothing (Ident "fm1" 326)))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "deleteMin" 0))) (Variable (QualIdent Nothing (Ident "le" 326)))) (Variable (QualIdent Nothing (Ident "fm2" 326)))))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "mid_key1" 328)))) (Variable (QualIdent Nothing (Ident "mid_elt1" 328)))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "deleteMax" 0))) (Variable (QualIdent Nothing (Ident "le" 326)))) (Variable (QualIdent Nothing (Ident "fm1" 326)))))) (Variable (QualIdent Nothing (Ident "fm2" 326)))))))) []))])+,(TypeSig (594,1) [(Ident "glueVBal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (598,1) (Ident "glueVBal" 0) [(Equation (598,1) (FunLhs (Ident "glueVBal" 0) [(VariablePattern (Ident "le" 331)),(VariablePattern (Ident "fm_l" 331)),(VariablePattern (Ident "fm_r" 331))]) (SimpleRhs (599,3) (IfThenElse (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_l" 331)))) (Variable (QualIdent Nothing (Ident "fm_r" 331))) (IfThenElse (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_r" 331)))) (Variable (QualIdent Nothing (Ident "fm_l" 331))) (Let [(PatternDecl (604,18) (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 333)),(VariablePattern (Ident "elt_l" 333)),(VariablePattern (Ident "_" 334)),(VariablePattern (Ident "fm_ll" 333)),(VariablePattern (Ident "fm_lr" 333))]) (SimpleRhs (604,53) (Variable (QualIdent Nothing (Ident "fm_l" 331))) [])),(PatternDecl (605,18) (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_r" 333)),(VariablePattern (Ident "elt_r" 333)),(VariablePattern (Ident "_" 335)),(VariablePattern (Ident "fm_rl" 333)),(VariablePattern (Ident "fm_rr" 333))]) (SimpleRhs (605,53) (Variable (QualIdent Nothing (Ident "fm_r" 331))) [])),(PatternDecl (608,18) (VariablePattern (Ident "size_l" 333)) (SimpleRhs (608,27) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_l" 331)))) [])),(PatternDecl (609,18) (VariablePattern (Ident "size_r" 333)) (SimpleRhs (609,27) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM'" 0))) (Variable (QualIdent Nothing (Ident "fm_r" 331)))) []))] (IfThenElse (InfixApply (InfixApply (Variable (QualIdent (Just "FiniteMap") (Ident "sIZE_RATIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "size_l" 333)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "size_r" 333)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key_r" 333)))) (Variable (QualIdent Nothing (Ident "elt_r" 333)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueVBal" 0))) (Variable (QualIdent Nothing (Ident "le" 331)))) (Variable (QualIdent Nothing (Ident "fm_l" 331)))) (Variable (QualIdent Nothing (Ident "fm_rl" 333)))))) (Variable (QualIdent Nothing (Ident "fm_rr" 333)))) (IfThenElse (InfixApply (InfixApply (Variable (QualIdent (Just "FiniteMap") (Ident "sIZE_RATIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "size_r" 333)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "size_l" 333)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key_l" 333)))) (Variable (QualIdent Nothing (Ident "elt_l" 333)))) (Variable (QualIdent Nothing (Ident "fm_ll" 333)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueVBal" 0))) (Variable (QualIdent Nothing (Ident "le" 331)))) (Variable (QualIdent Nothing (Ident "fm_lr" 333)))) (Variable (QualIdent Nothing (Ident "fm_r" 331)))))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "glueBal" 0))) (Variable (QualIdent Nothing (Ident "le" 331)))) (Variable (QualIdent Nothing (Ident "fm_l" 331)))) (Variable (QualIdent Nothing (Ident "fm_r" 331))))))))) []))])+,(TypeSig (627,1) [(Ident "splitLT" 0),(Ident "splitGT" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ArrowType (VariableType (Ident "key" 0)) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))))+,(FunctionDecl (633,1) (Ident "splitLT" 0) [(Equation (633,1) (FunLhs (Ident "splitLT" 0) [(VariablePattern (Ident "_" 341)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "_" 342))]) (SimpleRhs (633,24) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (634,1) (FunLhs (Ident "splitLT" 0) [(VariablePattern (Ident "le" 344)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 344)),(VariablePattern (Ident "elt" 344)),(VariablePattern (Ident "_" 345)),(VariablePattern (Ident "fm_l" 344)),(VariablePattern (Ident "fm_r" 344))])),(VariablePattern (Ident "split_key" 344))]) (SimpleRhs (635,5) (IfThenElse (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 344))) (Variable (QualIdent Nothing (Ident "split_key" 344)))) (Variable (QualIdent Nothing (Ident "key" 344)))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitLT" 0))) (Variable (QualIdent Nothing (Ident "le" 344)))) (Variable (QualIdent Nothing (Ident "fm_l" 344)))) (Variable (QualIdent Nothing (Ident "split_key" 344)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "split_key" 344))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "key" 344)))) (Variable (QualIdent Nothing (Ident "fm_l" 344))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 344)))) (Variable (QualIdent Nothing (Ident "key" 344)))) (Variable (QualIdent Nothing (Ident "elt" 344)))) (Variable (QualIdent Nothing (Ident "fm_l" 344)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitLT" 0))) (Variable (QualIdent Nothing (Ident "le" 344)))) (Variable (QualIdent Nothing (Ident "fm_r" 344)))) (Variable (QualIdent Nothing (Ident "split_key" 344)))))))) []))])+,(FunctionDecl (641,1) (Ident "splitGT" 0) [(Equation (641,1) (FunLhs (Ident "splitGT" 0) [(VariablePattern (Ident "_" 348)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "_" 349))]) (SimpleRhs (641,24) (Constructor (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0))) [])),(Equation (642,1) (FunLhs (Ident "splitGT" 0) [(VariablePattern (Ident "le" 351)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 351)),(VariablePattern (Ident "elt" 351)),(VariablePattern (Ident "_" 352)),(VariablePattern (Ident "fm_l" 351)),(VariablePattern (Ident "fm_r" 351))])),(VariablePattern (Ident "split_key" 351))]) (SimpleRhs (643,5) (IfThenElse (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 351))) (Variable (QualIdent Nothing (Ident "split_key" 351)))) (Variable (QualIdent Nothing (Ident "key" 351)))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkVBalBranch" 0))) (Variable (QualIdent Nothing (Ident "le" 351)))) (Variable (QualIdent Nothing (Ident "key" 351)))) (Variable (QualIdent Nothing (Ident "elt" 351)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitGT" 0))) (Variable (QualIdent Nothing (Ident "le" 351)))) (Variable (QualIdent Nothing (Ident "fm_l" 351)))) (Variable (QualIdent Nothing (Ident "split_key" 351)))))) (Variable (QualIdent Nothing (Ident "fm_r" 351)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "split_key" 351))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "key" 351)))) (Variable (QualIdent Nothing (Ident "fm_r" 351))) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitGT" 0))) (Variable (QualIdent Nothing (Ident "le" 351)))) (Variable (QualIdent Nothing (Ident "fm_r" 351)))) (Variable (QualIdent Nothing (Ident "split_key" 351)))))) []))])+,(TypeSig (649,1) [(Ident "findMin" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))+,(FunctionDecl (650,1) (Ident "findMin" 0) [(Equation (650,1) (FunLhs (Ident "findMin" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 354)),(VariablePattern (Ident "elt" 354)),(VariablePattern (Ident "_" 355)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "_" 356))]))]) (SimpleRhs (650,40) (Tuple [(Variable (QualIdent Nothing (Ident "key" 354))),(Variable (QualIdent Nothing (Ident "elt" 354)))]) [])),(Equation (651,1) (FunLhs (Ident "findMin" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 359)),(VariablePattern (Ident "_" 360)),(VariablePattern (Ident "_" 361)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 358)),(VariablePattern (Ident "elt_l" 358)),(VariablePattern (Ident "s_l" 358)),(VariablePattern (Ident "fm_ll" 358)),(VariablePattern (Ident "fm_lr" 358))])),(VariablePattern (Ident "_" 362))]))]) (SimpleRhs (652,7) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "findMin" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_l" 358)))) (Variable (QualIdent Nothing (Ident "elt_l" 358)))) (Variable (QualIdent Nothing (Ident "s_l" 358)))) (Variable (QualIdent Nothing (Ident "fm_ll" 358)))) (Variable (QualIdent Nothing (Ident "fm_lr" 358)))))) []))])+,(TypeSig (654,1) [(Ident "deleteMin" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (655,1) (Ident "deleteMin" 0) [(Equation (655,1) (FunLhs (Ident "deleteMin" 0) [(VariablePattern (Ident "_" 365)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 366)),(VariablePattern (Ident "_" 367)),(VariablePattern (Ident "_" 368)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) []),(VariablePattern (Ident "fm_r" 364))]))]) (SimpleRhs (655,48) (Variable (QualIdent Nothing (Ident "fm_r" 364))) [])),(Equation (656,1) (FunLhs (Ident "deleteMin" 0) [(VariablePattern (Ident "le" 370)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 370)),(VariablePattern (Ident "elt" 370)),(VariablePattern (Ident "_" 371)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_l" 370)),(VariablePattern (Ident "elt_l" 370)),(VariablePattern (Ident "s_l" 370)),(VariablePattern (Ident "fm_ll" 370)),(VariablePattern (Ident "fm_lr" 370))])),(VariablePattern (Ident "fm_r" 370))]))]) (SimpleRhs (657,3) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key" 370)))) (Variable (QualIdent Nothing (Ident "elt" 370)))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "deleteMin" 0))) (Variable (QualIdent Nothing (Ident "le" 370)))) (Paren (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_l" 370)))) (Variable (QualIdent Nothing (Ident "elt_l" 370)))) (Variable (QualIdent Nothing (Ident "s_l" 370)))) (Variable (QualIdent Nothing (Ident "fm_ll" 370)))) (Variable (QualIdent Nothing (Ident "fm_lr" 370)))))))) (Variable (QualIdent Nothing (Ident "fm_r" 370)))) []))])+,(TypeSig (660,1) [(Ident "findMax" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))])))+,(FunctionDecl (661,1) (Ident "findMax" 0) [(Equation (661,1) (FunLhs (Ident "findMax" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 373)),(VariablePattern (Ident "elt" 373)),(VariablePattern (Ident "_" 374)),(VariablePattern (Ident "_" 375)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]))]) (SimpleRhs (661,40) (Tuple [(Variable (QualIdent Nothing (Ident "key" 373))),(Variable (QualIdent Nothing (Ident "elt" 373)))]) [])),(Equation (662,1) (FunLhs (Ident "findMax" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 378)),(VariablePattern (Ident "_" 379)),(VariablePattern (Ident "_" 380)),(VariablePattern (Ident "_" 381)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_r" 377)),(VariablePattern (Ident "elt_r" 377)),(VariablePattern (Ident "s_r" 377)),(VariablePattern (Ident "fm_rl" 377)),(VariablePattern (Ident "fm_rr" 377))]))]))]) (SimpleRhs (663,3) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "findMax" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_r" 377)))) (Variable (QualIdent Nothing (Ident "elt_r" 377)))) (Variable (QualIdent Nothing (Ident "s_r" 377)))) (Variable (QualIdent Nothing (Ident "fm_rl" 377)))) (Variable (QualIdent Nothing (Ident "fm_rr" 377)))))) []))])+,(TypeSig (665,1) [(Ident "deleteMax" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteMap" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "elt" 0))]))))+,(FunctionDecl (666,1) (Ident "deleteMax" 0) [(Equation (666,1) (FunLhs (Ident "deleteMax" 0) [(VariablePattern (Ident "_" 384)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "_" 385)),(VariablePattern (Ident "_" 386)),(VariablePattern (Ident "_" 387)),(VariablePattern (Ident "fm_l" 383)),(ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "EmptyFM" 0)) [])]))]) (SimpleRhs (666,48) (Variable (QualIdent Nothing (Ident "fm_l" 383))) [])),(Equation (667,1) (FunLhs (Ident "deleteMax" 0) [(VariablePattern (Ident "le" 389)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key" 389)),(VariablePattern (Ident "elt" 389)),(VariablePattern (Ident "_" 390)),(VariablePattern (Ident "fm_l" 389)),(ParenPattern (ConstructorPattern (QualIdent (Just "FiniteMap") (Ident "Branch" 0)) [(VariablePattern (Ident "key_r" 389)),(VariablePattern (Ident "elt_r" 389)),(VariablePattern (Ident "s_r" 389)),(VariablePattern (Ident "fm_rl" 389)),(VariablePattern (Ident "fm_rr" 389))]))]))]) (SimpleRhs (668,3) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "mkBalBranch" 0))) (Variable (QualIdent Nothing (Ident "key" 389)))) (Variable (QualIdent Nothing (Ident "elt" 389)))) (Variable (QualIdent Nothing (Ident "fm_l" 389)))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "deleteMax" 0))) (Variable (QualIdent Nothing (Ident "le" 389)))) (Paren (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "FiniteMap") (Ident "Branch" 0))) (Variable (QualIdent Nothing (Ident "key_r" 389)))) (Variable (QualIdent Nothing (Ident "elt_r" 389)))) (Variable (QualIdent Nothing (Ident "s_r" 389)))) (Variable (QualIdent Nothing (Ident "fm_rl" 389)))) (Variable (QualIdent Nothing (Ident "fm_rr" 389)))))))) []))])+,(TypeSig (679,1) [(Ident "emptySet" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))])))+,(TypeSig (680,1) [(Ident "mkSet" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LeKey" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ListType (VariableType (Ident "key" 0))) (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]))))+,(TypeSig (681,1) [(Ident "isEmptySet" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(TypeSig (682,1) [(Ident "elementOf" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(TypeSig (683,1) [(Ident "minusSet" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]))))+,(TypeSig (684,1) [(Ident "setToList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]) (ListType (VariableType (Ident "key" 0)))))+,(TypeSig (685,1) [(Ident "union" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]) (ConstructorType (QualIdent Nothing (Ident "FiniteSet" 0)) [(VariableType (Ident "key" 0))]))))+,(FunctionDecl (687,1) (Ident "emptySet" 0) [(Equation (687,1) (FunLhs (Ident "emptySet" 0) []) (SimpleRhs (687,12) (Variable (QualIdent (Just "FiniteMap") (Ident "emptyFM" 0))) []))])+,(FunctionDecl (688,1) (Ident "mkSet" 0) [(Equation (688,1) (FunLhs (Ident "mkSet" 0) [(VariablePattern (Ident "le" 394)),(VariablePattern (Ident "xs" 394))]) (SimpleRhs (688,15) (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "listToFM" 0))) (Variable (QualIdent Nothing (Ident "le" 394)))) (ListCompr (Tuple [(Variable (QualIdent Nothing (Ident "x" 396))),(Tuple [])]) [(StmtBind (VariablePattern (Ident "x" 396)) (Variable (QualIdent Nothing (Ident "xs" 394))))])) []))])+,(FunctionDecl (689,1) (Ident "isEmptySet" 0) [(Equation (689,1) (FunLhs (Ident "isEmptySet" 0) []) (SimpleRhs (689,14) (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM" 0))) []))])+,(FunctionDecl (690,1) (Ident "elementOf" 0) [(Equation (690,1) (FunLhs (Ident "elementOf" 0) []) (SimpleRhs (690,13) (Variable (QualIdent (Just "FiniteMap") (Ident "elemFM" 0))) []))])+,(FunctionDecl (691,1) (Ident "minusSet" 0) [(Equation (691,1) (FunLhs (Ident "minusSet" 0) []) (SimpleRhs (691,13) (Variable (QualIdent (Just "FiniteMap") (Ident "minusFM" 0))) []))])+,(FunctionDecl (692,1) (Ident "setToList" 0) [(Equation (692,1) (FunLhs (Ident "setToList" 0) []) (SimpleRhs (692,13) (Variable (QualIdent (Just "FiniteMap") (Ident "keysFM" 0))) []))])+,(FunctionDecl (693,1) (Ident "union" 0) [(Equation (693,1) (FunLhs (Ident "union" 0) []) (SimpleRhs (693,9) (Variable (QualIdent (Just "FiniteMap") (Ident "plusFM" 0))) []))])+]
+ src/lib/Curry/Module/.curry/FiniteMap.efc view
@@ -0,0 +1,1 @@+Prog "FiniteMap" ["Maybe","Prelude"] [TypeSyn ((Nothing,Nothing,"FiniteMap","LeKey")) Private [0] (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))),TypeSyn ((Nothing,Nothing,"FiniteMap","FiniteSet")) Private [0] (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]),Type ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) Public [0,1] [Cons ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) 2 Private [FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])),TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]]],Type ((Nothing,Nothing,"FiniteMap","FiniteMap")) Private [0,1] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) 0 Private [],Cons ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) 5 Private [TVar 0,TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1],TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]]]] [Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1])),"FiniteMap","emptyFM")) 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1])) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1])))),"FiniteMap","unitFM")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TVar 0),2),(Just (TVar 1),3)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","unitFM'")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","unitFM'")) 2 Private (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 1),2)),Lit (Intc  1),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","listToFM")) 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","addListToFM")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1])),"FiniteMap","emptyFM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1])))),"FiniteMap","addToFM")) 3 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1])))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TVar 0),2),(Just (TVar 1),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addToFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)),Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addToFM'")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TVar 0),3),(Just (TVar 1),4)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","addToFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),"FiniteMap","addToFM'._#lambda2")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)),Var ((Just (TVar 0),3)),Var ((Just (TVar 1),4))])),Func ((Nothing,Just (FuncType (TVar 270) (FuncType (TVar 270) (TVar 270))),"FiniteMap","addToFM'._#lambda2")) 2 Private (FuncType (TVar 270) (FuncType (TVar 270) (TVar 270))) (Rule [(Just (TVar 270),1),(Just (TVar 270),2)] (Var ((Just (TVar 270),2)))),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","addToFM_C'")) 5 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3),(Just (TVar 0),4),(Just (TVar 1),5)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","unitFM'")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),6),(Just (TVar 1),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),4))],Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),6)),Var ((Just (TVar 1),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","addToFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)),Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (TVar 1),7))],Var ((Just (TVar 1),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),6)),Var ((Just (TVar 1),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","addToFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10)),Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5))]])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","addListToFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","addListToFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","addListToFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addListToFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),"FiniteMap","addListToFM'._#lambda3")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),3))])),Func ((Nothing,Just (FuncType (TVar 246) (FuncType (TVar 246) (TVar 246))),"FiniteMap","addListToFM'._#lambda3")) 2 Private (FuncType (TVar 246) (FuncType (TVar 246) (TVar 246))) (Rule [(Just (TVar 246),1),(Just (TVar 246),2)] (Var ((Just (TVar 246),2)))),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addListToFM_C'")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),4)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"Prelude","foldl")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addListToFM_C'.add.30")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),4))])),Func ((Nothing,Just (FuncType (FuncType (TVar 235) (FuncType (TVar 235) (TVar 235))) (FuncType (FuncType (TVar 234) (FuncType (TVar 234) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 234,TVar 235]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 234,TVar 235]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 234,TVar 235]))))),"FiniteMap","addListToFM_C'.add.30")) 4 Private (FuncType (FuncType (TVar 235) (FuncType (TVar 235) (TVar 235))) (FuncType (FuncType (TVar 234) (FuncType (TVar 234) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 234,TVar 235]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 234,TVar 235]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 234,TVar 235]))))) (Rule [(Just (FuncType (TVar 235) (FuncType (TVar 235) (TVar 235))),1),(Just (FuncType (TVar 234) (FuncType (TVar 234) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 234,TVar 235]),3),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 234,TVar 235]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 234,TVar 235]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 234) (FuncType (TVar 235) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 234,TVar 235]))),"Prelude","(,)")) [(Just (TVar 234),5),(Just (TVar 235),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 234) (FuncType (TVar 234) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 235) (FuncType (TVar 235) (TVar 235))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 234,TVar 235]) (FuncType (TVar 234) (FuncType (TVar 235) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 234,TVar 235])))))),"FiniteMap","addToFM_C'")) [Var ((Just (FuncType (TVar 234) (FuncType (TVar 234) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (FuncType (TVar 235) (FuncType (TVar 235) (TVar 235))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 234,TVar 235]),3)),Var ((Just (TVar 234),5)),Var ((Just (TVar 235),6))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TVar 1) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))))),"FiniteMap","addToFM_C")) 4 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0]) (FuncType (TVar 1) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),2),(Just (TVar 1),3),(Just (TVar 0),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [(Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (FuncType (TVar 1) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0])))))),"FiniteMap","addToFM_C'")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),6)),Var ((Just (TVar 1),3)),Var ((Just (TVar 0),4))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0])))),"FiniteMap","addListToFM_C")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 0]]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [(Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]))))),"FiniteMap","addListToFM_C'")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","delFromFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TVar 0),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","delFromFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TVar 0),2))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","delFromFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TVar 0),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","delFromFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","delFromFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TVar 0),3))]])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","delListFromFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"Prelude","foldl")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","delFromFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 1)) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1])))),"FiniteMap","updFM")) 3 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 1)) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1])))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TVar 0),2),(Just (FuncType (TVar 1) (TVar 1)),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","updFM.upd.49")) [Var ((Just (FuncType (TVar 1) (TVar 1)),3)),Var ((Just (TVar 0),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 523) (TVar 523)) (FuncType (TVar 535) (FuncType (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]))))),"FiniteMap","updFM.upd.49")) 4 Private (FuncType (FuncType (TVar 523) (TVar 523)) (FuncType (TVar 535) (FuncType (FuncType (TVar 535) (FuncType (TVar 535) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 535,TVar 523]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 535,TVar 523]))))) (Rule [(Just (FuncType (TVar 523) (TVar 523)),1),(Just (TVar 535),2),(Just (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 535) (FuncType (TVar 523) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523])))))),"FiniteMap","Branch")) [(Just (TVar 535),5),(Just (TVar 523),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),9)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 535),2)),Var ((Just (TVar 535),5))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 535) (FuncType (TVar 523) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523])))))),"FiniteMap","Branch")) [Var ((Just (TVar 535),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 523) (TVar 523)) (FuncType (TVar 523) (TVar 523))),"Prelude","apply")) [Var ((Just (FuncType (TVar 523) (TVar 523)),1)),Var ((Just (TVar 523),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),9))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TVar 535),2))],Var ((Just (TVar 535),5))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 535) (FuncType (TVar 523) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523])))))),"FiniteMap","Branch")) [Var ((Just (TVar 535),5)),Var ((Just (TVar 523),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 523) (TVar 523)) (FuncType (TVar 535) (FuncType (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]))))),"FiniteMap","updFM.upd.49")) [Var ((Just (FuncType (TVar 523) (TVar 523)),1)),Var ((Just (TVar 535),2)),Var ((Just (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),8))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),9))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 535) (FuncType (TVar 523) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523])))))),"FiniteMap","Branch")) [Var ((Just (TVar 535),5)),Var ((Just (TVar 523),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),8)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 523) (TVar 523)) (FuncType (TVar 535) (FuncType (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]))))),"FiniteMap","updFM.upd.49")) [Var ((Just (FuncType (TVar 523) (TVar 523)),1)),Var ((Just (TVar 535),2)),Var ((Just (FuncType (TVar 535) (FuncType (TVar 535) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),9))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 535,TVar 523]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]]))),"FiniteMap","splitFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1],TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]]) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]])))),"Prelude","maybe")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]]),"Prelude","Nothing")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]])))),"FiniteMap","splitFM._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)),Var ((Just (TVar 0),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"FiniteMap","lookupFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)),Var ((Just (TVar 0),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600]) (FuncType (TVar 593) (FuncType (TVar 600) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 593,TVar 600]]])))),"FiniteMap","splitFM._#lambda4")) 3 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 593,TVar 600]) (FuncType (TVar 593) (FuncType (TVar 600) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 593,TVar 600],TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 593,TVar 600]]])))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600]),1),(Just (TVar 593),2),(Just (TVar 600),3)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 593,TVar 600]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 593,TVar 600]]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600]) (FuncType (TVar 611) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600],TCons (Nothing,Nothing,"Prelude","(,)") [TVar 593,TVar 600]]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600]) (FuncType (TVar 593) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600]))),"FiniteMap","delFromFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 593,TVar 600]),1)),Var ((Just (TVar 593),2))],Comb ConsCall ((Nothing,Just (FuncType (TVar 593) (FuncType (TVar 600) (TVar 611))),"Prelude","(,)")) [Var ((Just (TVar 593),2)),Var ((Just (TVar 600),3))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","plusFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","plusFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","plusFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),9),(Just (TVar 1),10),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13)]) (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14),Comb ConsCall ((Nothing,Just (FuncType (TVar 766) (FuncType (TVar 767) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 766,TVar 767]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 766,TVar 767]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 766,TVar 767])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 768) (FuncType (TVar 768) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 768,TVar 769]) (FuncType (TVar 768) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 768,TVar 769])))),"FiniteMap","splitLT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)),Var ((Just (TVar 0),9))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 770) (FuncType (TVar 770) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 770,TVar 771]) (FuncType (TVar 770) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 770,TVar 771])))),"FiniteMap","splitGT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)),Var ((Just (TVar 0),9))])] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),9)),Var ((Just (TVar 1),10)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","plusFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","plusFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13))]]))))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0])))),"FiniteMap","plusFM_C")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 1,TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [(Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [(Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 1,TVar 0]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]))))),"FiniteMap","plusFM_C'")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 0]),7))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","plusFM_C'")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),5),(Just (TVar 1),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),5)),Var ((Just (TVar 1),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),10),(Just (TVar 1),11),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),12),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)]) (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15),Comb ConsCall ((Nothing,Just (FuncType (TVar 853) (FuncType (TVar 854) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 853,TVar 854]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 853,TVar 854]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 853,TVar 854])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),5)),Var ((Just (TVar 1),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 855) (FuncType (TVar 855) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 855,TVar 856]) (FuncType (TVar 855) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 855,TVar 856])))),"FiniteMap","splitLT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TVar 0),10))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 857) (FuncType (TVar 857) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 857,TVar 858]) (FuncType (TVar 857) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 857,TVar 858])))),"FiniteMap","splitGT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TVar 0),10))])] (Let [((Just (TVar 1),18),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 859) (FuncType (TVar 859) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 859,TVar 860]) (FuncType (TVar 859) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 860])))),"FiniteMap","lookupFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TVar 0),10))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 865]),"Prelude","Nothing")) []) (Var ((Just (TVar 1),11))),Branch (Pattern ((Nothing,Just (FuncType (TVar 866) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 866])),"Prelude","Just")) [(Just (TVar 850),19)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 863) (TVar 864)) (FuncType (TVar 863) (TVar 864))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 861) (TVar 862)) (FuncType (TVar 861) (TVar 862))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (TVar 850),19))],Var ((Just (TVar 1),11))])])] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),10)),Var ((Just (TVar 1),18)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","plusFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","plusFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14))]])))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","minusFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","minusFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","minusFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 2]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2])))))),"FiniteMap","Branch")) [(Just (TVar 0),9),(Just (TVar 2),10),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),12),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),13)]) (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14),Comb ConsCall ((Nothing,Just (FuncType (TVar 952) (FuncType (TVar 953) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 952,TVar 953]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 952,TVar 953]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 952,TVar 953])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 954) (FuncType (TVar 954) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 954,TVar 955]) (FuncType (TVar 954) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 954,TVar 955])))),"FiniteMap","splitLT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)),Var ((Just (TVar 0),9))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 956) (FuncType (TVar 956) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 956,TVar 957]) (FuncType (TVar 956) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 956,TVar 957])))),"FiniteMap","splitGT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)),Var ((Just (TVar 0),9))])] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueVBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","minusFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),12))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","minusFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),13))]]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","intersectFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","intersectFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2])))),"FiniteMap","intersectFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 2]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 2])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]))))),"FiniteMap","intersectFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2))),"FiniteMap","intersectFM'._#lambda6")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),3))])),Func ((Nothing,Just (FuncType (TVar 1051) (FuncType (TVar 1052) (TVar 1052))),"FiniteMap","intersectFM'._#lambda6")) 2 Private (FuncType (TVar 1051) (FuncType (TVar 1052) (TVar 1052))) (Rule [(Just (TVar 1051),1),(Just (TVar 1052),2)] (Var ((Just (TVar 1052),2)))),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 1])))),"FiniteMap","intersectFM_C")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 2,TVar 0]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 2,TVar 0]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 2,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]))),"FiniteMap","FM")) [(Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 0]))),"FiniteMap","FM")) [(Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 2,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 1]))))),"FiniteMap","intersectFM_C'")) [Var ((Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 0]),7))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]))))),"FiniteMap","intersectFM_C'")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 2]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 3]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2])))))),"FiniteMap","Branch")) [(Just (TVar 0),5),(Just (TVar 2),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),10),(Just (TVar 1),11),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),12),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)]) (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15),Comb ConsCall ((Nothing,Just (FuncType (TVar 1022) (FuncType (TVar 1023) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1022,TVar 1023]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1022,TVar 1023]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1022,TVar 1023])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),10)),Var ((Just (TVar 1),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),12)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1024) (FuncType (TVar 1024) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1024,TVar 1025]) (FuncType (TVar 1024) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1024,TVar 1025])))),"FiniteMap","splitLT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TVar 0),5))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1026) (FuncType (TVar 1026) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1026,TVar 1027]) (FuncType (TVar 1026) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1026,TVar 1027])))),"FiniteMap","splitGT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TVar 0),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),18),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1028) (FuncType (TVar 1028) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1028,TVar 1029]) (FuncType (TVar 1028) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1029])))),"FiniteMap","lookupFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)),Var ((Just (TVar 0),5))])] (Let [((Just (TVar 1017),19),Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),18)))] (Let [((Just (TVar 1),20),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1030]) (TVar 1030)),"FiniteMap","intersectFM_C'._#selFP3#elt1'")) [Var ((Just (TVar 1017),19))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Maybe","isJust")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),18))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (TVar 3)) (FuncType (TVar 2) (TVar 3))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TVar 1),20))],Var ((Just (TVar 2),6))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]))))),"FiniteMap","intersectFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]))))),"FiniteMap","intersectFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),9))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3])))),"FiniteMap","glueVBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]))))),"FiniteMap","intersectFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),8))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]))))),"FiniteMap","intersectFM_C'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]),9))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 3]),"Prelude","failed")) [])])])))))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1000]) (TVar 1000)),"FiniteMap","intersectFM_C'._#selFP3#elt1'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1000]) (TVar 1000)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1000]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1000]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1000) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1000])),"Prelude","Just")) [(Just (TVar 1000),2)]) (Var ((Just (TVar 1000),2)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TVar 2)))),"FiniteMap","foldFM")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))) (FuncType (TVar 2) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TVar 2)))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))),1),(Just (TVar 2),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TVar 2))))),"FiniteMap","foldFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))),1)),Var ((Just (TVar 2),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))) (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TVar 3))))),"FiniteMap","foldFM'")) 4 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))) (FuncType (TVar 3) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 1,TVar 2]) (TVar 3))))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))),2),(Just (TVar 3),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),"FiniteMap","EmptyFM")) []) (Var ((Just (TVar 3),3))),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2])))))),"FiniteMap","Branch")) [(Just (TVar 1),5),(Just (TVar 2),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))) (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TVar 3))))),"FiniteMap","foldFM'")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 3) (TVar 3)) (FuncType (TVar 3) (TVar 3))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))) (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3))))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))),2)),Var ((Just (TVar 1),5))],Var ((Just (TVar 2),6))],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))) (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TVar 3))))),"FiniteMap","foldFM'")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))),2)),Var ((Just (TVar 3),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),9))]],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),8))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 2]))),"FiniteMap","mapFM")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 2]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 2]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 2])))),"FiniteMap","mapFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3])))),"FiniteMap","mapFM'")) 3 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 1,TVar 2]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 1,TVar 3])))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2])))))),"FiniteMap","Branch")) [(Just (TVar 1),4),(Just (TVar 2),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),8)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3])))))),"FiniteMap","Branch")) [Var ((Just (TVar 1),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (TVar 3)) (FuncType (TVar 2) (TVar 3))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TVar 1),4))],Var ((Just (TVar 2),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3])))),"FiniteMap","mapFM'")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),7))],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 3])))),"FiniteMap","mapFM'")) [Var ((Just (TVar 0),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 1,TVar 2]),8))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","filterFM")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","filterFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","filterFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),4))],Var ((Just (TVar 1),5))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","filterFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","filterFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueVBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","filterFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","filterFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"FiniteMap","eqFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","fmToList")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","fmToList")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))],Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"FiniteMap","elemFM")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Maybe","isJust")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"FiniteMap","lookupFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),2)),Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"FiniteMap","lookupFM")) 2 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TVar 0),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"FiniteMap","lookupFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TVar 0),2))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"FiniteMap","lookupFM'")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TVar 0),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"FiniteMap","lookupFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TVar 0),3))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),"Prelude","Just")) [Var ((Just (TVar 1),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"FiniteMap","lookupFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TVar 0),3))])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 1)))),"FiniteMap","lookupWithDefaultFM")) 3 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 1)))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1),(Just (TVar 1),2),(Just (TVar 0),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"FiniteMap","lookupFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","Nothing")) []) (Var ((Just (TVar 1),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),"Prelude","Just")) [(Just (TVar 1),4)]) (Var ((Just (TVar 1),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"FiniteMap","keyOrder")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)]) (Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","minFM")) 0 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","minFM.min.215")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])),"FiniteMap","tree")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","minFM.min.215")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","minFM.min.215")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","maxFM")) 0 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","maxFM.max.223")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])),"FiniteMap","tree")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","maxFM.max.223")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","maxFM.max.223")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","fmToList")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))),"FiniteMap","foldFM")) [Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))),"FiniteMap","fmToList._#lambda8")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))])),Func ((Nothing,Just (FuncType (TVar 1237) (FuncType (TVar 1238) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]])))),"FiniteMap","fmToList._#lambda8")) 3 Private (FuncType (TVar 1237) (FuncType (TVar 1238) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1237,TVar 1238]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1237,TVar 1238]])))) (Rule [(Just (TVar 1237),1),(Just (TVar 1238),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]]),3)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 1237) (FuncType (TVar 1238) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]))),"Prelude","(,)")) [Var ((Just (TVar 1237),1)),Var ((Just (TVar 1238),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1237,TVar 1238]]),3))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"FiniteMap","keysFM")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"FiniteMap","foldFM")) [Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"FiniteMap","keysFM._#lambda9")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))])),Func ((Nothing,Just (FuncType (TVar 1356) (FuncType (TVar 1353) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1356]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1356])))),"FiniteMap","keysFM._#lambda9")) 3 Private (FuncType (TVar 1356) (FuncType (TVar 1353) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1356]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1356])))) (Rule [(Just (TVar 1356),1),(Just (TVar 1353),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1356]),3)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 1356) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1356]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1356]))),"Prelude",":")) [Var ((Just (TVar 1356),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1356]),3))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),"FiniteMap","eltsFM")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"FiniteMap","foldFM")) [Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"FiniteMap","eltsFM._#lambda10")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))])),Func ((Nothing,Just (FuncType (TVar 1363) (FuncType (TVar 1367) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1367]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1367])))),"FiniteMap","eltsFM._#lambda10")) 3 Private (FuncType (TVar 1363) (FuncType (TVar 1367) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1367]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1367])))) (Rule [(Just (TVar 1363),1),(Just (TVar 1367),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1367]),3)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 1367) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1367]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1367]))),"Prelude",":")) [Var ((Just (TVar 1367),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1367]),3))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"FiniteMap","fmToListPreOrder")) 1 Public (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"FiniteMap","fmToListPreOrder.pre.243")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","[]")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"FiniteMap","fmToListPreOrder.pre.243")) 2 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),3),(Just (TVar 1),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 1),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"FiniteMap","fmToListPreOrder.pre.243")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"FiniteMap","fmToListPreOrder.pre.243")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2))]]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"FiniteMap","fmSortBy")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 4]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"FiniteMap","keysFM")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 4]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 4])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 4]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 4]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 4]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 4]))),"FiniteMap","listToFM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 4]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 4]]))),"Prelude","zip")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)),Comb FuncCall ((Nothing,Just (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 4])),"Prelude","repeat")) [Comb ConsCall ((Nothing,Just (TVar 4),"Prelude","()")) []]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])),"FiniteMap","tree")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TVar 1]))),"FiniteMap","FM")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)]) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"FiniteMap","toGT")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TVar 0),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),2))],Var ((Just (TVar 0),3))]],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 0),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))],Lit (Intc  0)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  5))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkBranch")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 2,TVar 3]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 4,TVar 5]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))])] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","mkBranch.unbox.264")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Lit (Intc  1),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))]],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))])))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","mkBranch.unbox.264")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) 4 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 181,TVar 182]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 183,TVar 184]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Lit (Intc  2)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkBranch")) [Lit (Intc  1),Var ((Just (TVar 0),1)),Var ((Just (TVar 1),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),7),(Just (TVar 1),8),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),9),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch.single_L.273")) [Var ((Just (TVar 1),2)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch.double_L.273")) [Var ((Just (TVar 1),2)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"Prelude","failed")) [])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),12),(Just (TVar 1),13),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),14),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch.single_R.273")) [Var ((Just (TVar 1),2)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch.double_R.273")) [Var ((Just (TVar 1),2)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"Prelude","failed")) [])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkBranch")) [Lit (Intc  2),Var ((Just (TVar 0),1)),Var ((Just (TVar 1),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"Prelude","failed")) [])])])])])))),Func ((Nothing,Just (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]))))),"FiniteMap","mkBalBranch.single_L.273")) 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]))))) (Rule [(Just (TVar 170),1),(Just (TVar 169),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","Branch")) [(Just (TVar 169),5),(Just (TVar 170),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  3),Var ((Just (TVar 169),5)),Var ((Just (TVar 170),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  4),Var ((Just (TVar 169),2)),Var ((Just (TVar 170),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9))])])),Func ((Nothing,Just (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]))))),"FiniteMap","mkBalBranch.double_L.273")) 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]))))) (Rule [(Just (TVar 170),1),(Just (TVar 169),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","Branch")) [(Just (TVar 169),5),(Just (TVar 170),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","Branch")) [(Just (TVar 169),10),(Just (TVar 170),11),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),12),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),13),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),14)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  5),Var ((Just (TVar 169),10)),Var ((Just (TVar 170),11)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  6),Var ((Just (TVar 169),2)),Var ((Just (TVar 170),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),13))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  7),Var ((Just (TVar 169),5)),Var ((Just (TVar 170),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),14)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9))]])])])),Func ((Nothing,Just (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]))))),"FiniteMap","mkBalBranch.single_R.273")) 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]))))) (Rule [(Just (TVar 170),1),(Just (TVar 169),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","Branch")) [(Just (TVar 169),5),(Just (TVar 170),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  8),Var ((Just (TVar 169),5)),Var ((Just (TVar 170),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  9),Var ((Just (TVar 169),2)),Var ((Just (TVar 170),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4))]])])),Func ((Nothing,Just (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]))))),"FiniteMap","mkBalBranch.double_R.273")) 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 169,TVar 170]))))) (Rule [(Just (TVar 170),1),(Just (TVar 169),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","Branch")) [(Just (TVar 169),5),(Just (TVar 170),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","Branch")) [(Just (TVar 169),10),(Just (TVar 170),11),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),12),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),13),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),14)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  10),Var ((Just (TVar 169),10)),Var ((Just (TVar 170),11)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  11),Var ((Just (TVar 169),5)),Var ((Just (TVar 170),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),13))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 169) (FuncType (TVar 170) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170])))))),"FiniteMap","mkBranch")) [Lit (Intc  12),Var ((Just (TVar 169),2)),Var ((Just (TVar 170),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),14)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 169,TVar 170]),4))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) 5 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addToFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5)),Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),6),(Just (TVar 1),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","addToFM'")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),6)),Var ((Just (TVar 1),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10))],Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),11),(Just (TVar 1),12),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),13),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15)]) (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16),Comb ConsCall ((Nothing,Just (FuncType (TVar 659) (FuncType (TVar 660) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 659,TVar 660]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 659,TVar 660]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 659,TVar 660])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),6)),Var ((Just (TVar 1),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17),Comb ConsCall ((Nothing,Just (FuncType (TVar 661) (FuncType (TVar 662) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 661,TVar 662]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 661,TVar 662]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 661,TVar 662])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),11)),Var ((Just (TVar 1),12)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),13)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),18),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 663,TVar 664]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),19),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 665,TVar 666]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),18))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),19))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),11)),Var ((Just (TVar 1),12)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),14))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),15))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),19))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),18))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),6)),Var ((Just (TVar 1),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),9)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkBranch")) [Lit (Intc  13),Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),16)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),17))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"Prelude","failed")) [])])])])))))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueBal")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 441),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 447,TVar 448]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 447,TVar 448])),"FiniteMap","findMax")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))])] (Let [((Just (TVar 0),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 449,TVar 450]) (TVar 449)),"FiniteMap","glueBal._#selFP8#mid_key1")) [Var ((Just (TVar 441),4))])] (Let [((Just (TVar 1),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 451,TVar 452]) (TVar 452)),"FiniteMap","glueBal._#selFP9#mid_elt1")) [Var ((Just (TVar 441),4))])] (Let [((Just (TVar 442),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 453,TVar 454]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 453,TVar 454])),"FiniteMap","findMin")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))])] (Let [((Just (TVar 0),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 455,TVar 456]) (TVar 455)),"FiniteMap","glueBal._#selFP6#mid_key2")) [Var ((Just (TVar 442),7))])] (Let [((Just (TVar 1),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 457,TVar 458]) (TVar 458)),"FiniteMap","glueBal._#selFP7#mid_elt2")) [Var ((Just (TVar 442),7))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),8)),Var ((Just (TVar 1),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","deleteMin")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),5)),Var ((Just (TVar 1),6)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","deleteMax")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))])])))))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]) (TVar 439)),"FiniteMap","glueBal._#selFP8#mid_key1")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 439,TVar 440]) (TVar 439)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 439) (FuncType (TVar 443) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]))),"Prelude","(,)")) [(Just (TVar 439),2),(Just (TVar 443),3)]) (Var ((Just (TVar 439),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]) (TVar 440)),"FiniteMap","glueBal._#selFP9#mid_elt1")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 439,TVar 440]) (TVar 440)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 442) (FuncType (TVar 440) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]))),"Prelude","(,)")) [(Just (TVar 442),2),(Just (TVar 440),3)]) (Var ((Just (TVar 440),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]) (TVar 439)),"FiniteMap","glueBal._#selFP6#mid_key2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 439,TVar 440]) (TVar 439)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 439) (FuncType (TVar 443) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]))),"Prelude","(,)")) [(Just (TVar 439),2),(Just (TVar 443),3)]) (Var ((Just (TVar 439),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]) (TVar 440)),"FiniteMap","glueBal._#selFP7#mid_elt2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 439,TVar 440]) (TVar 440)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 442) (FuncType (TVar 440) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 439,TVar 440]))),"Prelude","(,)")) [(Just (TVar 442),2),(Just (TVar 440),3)]) (Var ((Just (TVar 440),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueVBal")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 878),4),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)))] (Let [((Just (TVar 0),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 884,TVar 885]) (TVar 884)),"FiniteMap","glueVBal._#selFP16#key_l")) [Var ((Just (TVar 878),4))])] (Let [((Just (TVar 1),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 886,TVar 887]) (TVar 887)),"FiniteMap","glueVBal._#selFP17#elt_l")) [Var ((Just (TVar 878),4))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 888,TVar 889]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 888,TVar 889])),"FiniteMap","glueVBal._#selFP18#fm_ll")) [Var ((Just (TVar 878),4))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 890,TVar 891]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 890,TVar 891])),"FiniteMap","glueVBal._#selFP19#fm_lr")) [Var ((Just (TVar 878),4))])] (Let [((Just (TVar 879),9),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3)))] (Let [((Just (TVar 0),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 892,TVar 893]) (TVar 892)),"FiniteMap","glueVBal._#selFP12#key_r")) [Var ((Just (TVar 879),9))])] (Let [((Just (TVar 1),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 894,TVar 895]) (TVar 895)),"FiniteMap","glueVBal._#selFP13#elt_r")) [Var ((Just (TVar 879),9))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 896,TVar 897]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 896,TVar 897])),"FiniteMap","glueVBal._#selFP14#fm_rl")) [Var ((Just (TVar 879),9))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 898,TVar 899]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 898,TVar 899])),"FiniteMap","glueVBal._#selFP15#fm_rr")) [Var ((Just (TVar 879),9))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),14),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 900,TVar 901]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),15),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 902,TVar 903]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM'")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),14))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),15))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),10)),Var ((Just (TVar 1),11)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueVBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),13))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"FiniteMap","sIZE_RATIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),15))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),14))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),5)),Var ((Just (TVar 1),6)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueVBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","glueBal")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),3))])])])))))))))))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 876)),"FiniteMap","glueVBal._#selFP16#key_l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TVar 876)) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TVar 876),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 877)),"FiniteMap","glueVBal._#selFP17#elt_l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TVar 877)) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TVar 877),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])),"FiniteMap","glueVBal._#selFP18#fm_ll")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])),"FiniteMap","glueVBal._#selFP19#fm_lr")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 876)),"FiniteMap","glueVBal._#selFP12#key_r")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TVar 876)) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TVar 876),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 877)),"FiniteMap","glueVBal._#selFP13#elt_r")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TVar 877)) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TVar 877),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])),"FiniteMap","glueVBal._#selFP14#fm_rl")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])),"FiniteMap","glueVBal._#selFP15#fm_rr")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 876,TVar 877])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 876) (FuncType (TVar 877) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877])))))),"FiniteMap","Branch")) [(Just (TVar 876),2),(Just (TVar 877),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)]) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 876,TVar 877]),6)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","splitLT")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TVar 0),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","splitLT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TVar 0),3))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","splitLT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TVar 0),3))]])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","splitGT")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2),(Just (TVar 0),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),4),(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","mkVBalBranch")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),4)),Var ((Just (TVar 1),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","splitGT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)),Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))),"FiniteMap","splitGT")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),8)),Var ((Just (TVar 0),3))])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1])),"FiniteMap","findMin")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),7),(Just (TVar 1),8),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),9),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1])),"FiniteMap","findMin")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),7)),Var ((Just (TVar 1),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","deleteMin")) 2 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),3),(Just (TVar 1),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),8),(Just (TVar 1),9),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),10),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 1),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","deleteMin")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),8)),Var ((Just (TVar 1),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12))]],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1])),"FiniteMap","findMax")) 1 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1])) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),7),(Just (TVar 1),8),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),9),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1])),"FiniteMap","findMax")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),7)),Var ((Just (TVar 1),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),10)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","deleteMax")) 2 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"FiniteMap","FiniteMap")) [TVar 0,TVar 1]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),3),(Just (TVar 1),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),7))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),"FiniteMap","EmptyFM")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [(Just (TVar 0),8),(Just (TVar 1),9),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),10),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11),(Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12)]) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))))),"FiniteMap","mkBalBranch")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 1),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),6)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]))),"FiniteMap","deleteMax")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1])))))),"FiniteMap","Branch")) [Var ((Just (TVar 0),8)),Var ((Just (TVar 1),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),11)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FiniteMap") [TVar 0,TVar 1]),12))]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])),"FiniteMap","emptySet")) 0 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])),"FiniteMap","emptyFM")) [])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"FiniteMap","mkSet")) 2 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"FiniteMap","listToFM")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])),"FiniteMap","mkSet._#lambda13")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])),Func ((Nothing,Just (FuncType (TVar 1421) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1421,TCons (Nothing,Nothing,"Prelude","()") []])),"FiniteMap","mkSet._#lambda13")) 1 Private (FuncType (TVar 1421) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1421,TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TVar 1421),1)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 1421) (FuncType (TVar 1424) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1421,TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","(,)")) [Var ((Just (TVar 1421),1)),Comb ConsCall ((Nothing,Just (TVar 1424),"Prelude","()")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptySet")) 0 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM")) [])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"FiniteMap","elementOf")) 0 Private (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"FiniteMap","elemFM")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"FiniteMap","minusSet")) 0 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"FiniteMap","minusFM")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"FiniteMap","setToList")) 0 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"FiniteMap","keysFM")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"FiniteMap","union")) 0 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]))),"FiniteMap","plusFM")) []))] []
+ src/lib/Curry/Module/.curry/FiniteMap.fcy view
@@ -0,0 +1,1 @@+Prog "FiniteMap" ["Maybe","Prelude"] [TypeSyn ("FiniteMap","LeKey") Private [0] (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))),TypeSyn ("FiniteMap","FiniteSet") Private [0] (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]),Type ("FiniteMap","FM") Public [0,1] [Cons ("FiniteMap","FM") 2 Private [FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])),TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]]],Type ("FiniteMap","FiniteMap") Private [0,1] [Cons ("FiniteMap","EmptyFM") 0 Private [],Cons ("FiniteMap","Branch") 5 Private [TVar 0,TVar 1,TCons ("Prelude","Int") [],TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1],TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]]]] [Func ("FiniteMap","emptyFM") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])) (Rule [1] (Comb ConsCall ("FiniteMap","FM") [Var 1,Comb ConsCall ("FiniteMap","EmptyFM") []])),Func ("FiniteMap","unitFM") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])))) (Rule [1,2,3] (Comb ConsCall ("FiniteMap","FM") [Var 1,Comb FuncCall ("FiniteMap","unitFM'") [Var 2,Var 3]])),Func ("FiniteMap","unitFM'") 2 Private (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))) (Rule [1,2] (Comb ConsCall ("FiniteMap","Branch") [Var 1,Var 2,Lit (Intc  1),Comb ConsCall ("FiniteMap","EmptyFM") [],Comb ConsCall ("FiniteMap","EmptyFM") []])),Func ("FiniteMap","listToFM") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1] (Comb (FuncPartCall 1) ("FiniteMap","addListToFM") [Comb FuncCall ("FiniteMap","emptyFM") [Var 1]])),Func ("FiniteMap","addToFM") 3 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [4,5]) (Comb ConsCall ("FiniteMap","FM") [Var 4,Comb FuncCall ("FiniteMap","addToFM'") [Var 4,Var 5,Var 2,Var 3]])])),Func ("FiniteMap","addToFM'") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))))) (Rule [1,2,3,4] (Comb FuncCall ("FiniteMap","addToFM_C'") [Var 1,Comb (FuncPartCall 2) ("FiniteMap","addToFM'._#lambda2") [],Var 2,Var 3,Var 4])),Func ("FiniteMap","addToFM'._#lambda2") 2 Private (FuncType (TVar 270) (FuncType (TVar 270) (TVar 270))) (Rule [1,2] (Var 2)),Func ("FiniteMap","addToFM_C'") 5 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))))) (Rule [1,2,3,4,5] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb FuncCall ("FiniteMap","unitFM'") [Var 4,Var 5]),Branch (Pattern ("FiniteMap","Branch") [6,7,8,9,10]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 6,Var 7,Comb FuncCall ("FiniteMap","addToFM_C'") [Var 1,Var 2,Var 9,Var 4,Var 5],Var 10]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 4,Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("FiniteMap","Branch") [Var 4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 7],Var 5],Var 8,Var 9,Var 10]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 6,Var 7,Var 9,Comb FuncCall ("FiniteMap","addToFM_C'") [Var 1,Var 2,Var 10,Var 4,Var 5]])])])])),Func ("FiniteMap","addListToFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","addListToFM'") [Var 3,Var 4,Var 2]])])),Func ("FiniteMap","addListToFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Comb FuncCall ("FiniteMap","addListToFM_C'") [Var 1,Comb (FuncPartCall 2) ("FiniteMap","addListToFM'._#lambda3") [],Var 2,Var 3])),Func ("FiniteMap","addListToFM'._#lambda3") 2 Private (FuncType (TVar 246) (FuncType (TVar 246) (TVar 246))) (Rule [1,2] (Var 2)),Func ("FiniteMap","addListToFM_C'") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))))) (Rule [1,2,3,4] (Comb FuncCall ("Prelude","foldl") [Comb (FuncPartCall 2) ("FiniteMap","addListToFM_C'.add.30") [Var 2,Var 1],Var 3,Var 4])),Func ("FiniteMap","addListToFM_C'.add.30") 4 Private (FuncType (FuncType (TVar 235) (FuncType (TVar 235) (TVar 235))) (FuncType (FuncType (TVar 234) (FuncType (TVar 234) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 234,TVar 235]) (FuncType (TCons ("Prelude","(,)") [TVar 234,TVar 235]) (TCons ("FiniteMap","FiniteMap") [TVar 234,TVar 235]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,)") [5,6]) (Comb FuncCall ("FiniteMap","addToFM_C'") [Var 2,Var 1,Var 3,Var 5,Var 6])])),Func ("FiniteMap","addToFM_C") 4 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TVar 1) (FuncType (TVar 0) (TCons ("FiniteMap","FM") [TVar 1,TVar 0]))))) (Rule [1,2,3,4] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [5,6]) (Comb ConsCall ("FiniteMap","FM") [Var 5,Comb FuncCall ("FiniteMap","addToFM_C'") [Var 5,Var 1,Var 6,Var 3,Var 4]])])),Func ("FiniteMap","addListToFM_C") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 0]]) (TCons ("FiniteMap","FM") [TVar 1,TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [4,5]) (Comb ConsCall ("FiniteMap","FM") [Var 4,Comb FuncCall ("FiniteMap","addListToFM_C'") [Var 4,Var 1,Var 5,Var 3]])])),Func ("FiniteMap","delFromFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","delFromFM'") [Var 3,Var 4,Var 2]])])),Func ("FiniteMap","delFromFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 4,Var 5,Comb FuncCall ("FiniteMap","delFromFM'") [Var 1,Var 7,Var 3],Var 8]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","glueBal") [Var 1,Var 7,Var 8]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 4,Var 5,Var 7,Comb FuncCall ("FiniteMap","delFromFM'") [Var 1,Var 8,Var 3]])])])])),Func ("FiniteMap","delListFromFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("Prelude","foldl") [Comb (FuncPartCall 2) ("FiniteMap","delFromFM'") [Var 3],Var 4,Var 2]])])),Func ("FiniteMap","updFM") 3 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 1)) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [4,5]) (Comb ConsCall ("FiniteMap","FM") [Var 4,Comb FuncCall ("FiniteMap","updFM.upd.49") [Var 3,Var 2,Var 4,Var 5]])])),Func ("FiniteMap","updFM.upd.49") 4 Private (FuncType (FuncType (TVar 523) (TVar 523)) (FuncType (TVar 535) (FuncType (FuncType (TVar 535) (FuncType (TVar 535) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 535,TVar 523]) (TCons ("FiniteMap","FiniteMap") [TVar 535,TVar 523]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Var 5]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("FiniteMap","Branch") [Var 5,Comb FuncCall ("Prelude","apply") [Var 1,Var 6],Var 7,Var 8,Var 9]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Var 2],Var 5]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("FiniteMap","Branch") [Var 5,Var 6,Var 7,Comb FuncCall ("FiniteMap","updFM.upd.49") [Var 1,Var 2,Var 3,Var 8],Var 9]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("FiniteMap","Branch") [Var 5,Var 6,Var 7,Var 8,Comb FuncCall ("FiniteMap","updFM.upd.49") [Var 1,Var 2,Var 3,Var 9]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("FiniteMap","splitFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TCons ("FiniteMap","FM") [TVar 0,TVar 1],TCons ("Prelude","(,)") [TVar 0,TVar 1]]]))) (Rule [1,2] (Comb FuncCall ("Prelude","maybe") [Comb ConsCall ("Prelude","Nothing") [],Comb (FuncPartCall 1) ("FiniteMap","splitFM._#lambda4") [Var 1,Var 2],Comb FuncCall ("FiniteMap","lookupFM") [Var 1,Var 2]])),Func ("FiniteMap","splitFM._#lambda4") 3 Private (FuncType (TCons ("FiniteMap","FM") [TVar 593,TVar 600]) (FuncType (TVar 593) (FuncType (TVar 600) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TCons ("FiniteMap","FM") [TVar 593,TVar 600],TCons ("Prelude","(,)") [TVar 593,TVar 600]]])))) (Rule [1,2,3] (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("FiniteMap","delFromFM") [Var 1,Var 2],Comb ConsCall ("Prelude","(,)") [Var 2,Var 3]]])),Func ("FiniteMap","plusFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [5,6]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","plusFM'") [Var 3,Var 4,Var 6]])])])),Func ("FiniteMap","plusFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Var 3),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","Branch") [Var 4,Var 5,Var 6,Var 7,Var 8]),Branch (Pattern ("FiniteMap","Branch") [9,10,11,12,13]) (Let [(14,Comb ConsCall ("FiniteMap","Branch") [Var 4,Var 5,Var 6,Var 7,Var 8])] (Let [(15,Comb FuncCall ("FiniteMap","splitLT") [Var 1,Var 14,Var 9])] (Let [(16,Comb FuncCall ("FiniteMap","splitGT") [Var 1,Var 14,Var 9])] (Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 9,Var 10,Comb FuncCall ("FiniteMap","plusFM'") [Var 1,Var 15,Var 12],Comb FuncCall ("FiniteMap","plusFM'") [Var 1,Var 16,Var 13]]))))])])),Func ("FiniteMap","plusFM_C") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (TCons ("FiniteMap","FM") [TVar 1,TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","FM") [6,7]) (Comb ConsCall ("FiniteMap","FM") [Var 4,Comb FuncCall ("FiniteMap","plusFM_C'") [Var 4,Var 1,Var 5,Var 7]])])])),Func ("FiniteMap","plusFM_C'") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))))) (Rule [1,2,3,4] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Var 4),Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","Branch") [Var 5,Var 6,Var 7,Var 8,Var 9]),Branch (Pattern ("FiniteMap","Branch") [10,11,12,13,14]) (Let [(15,Comb ConsCall ("FiniteMap","Branch") [Var 5,Var 6,Var 7,Var 8,Var 9])] (Let [(16,Comb FuncCall ("FiniteMap","splitLT") [Var 1,Var 15,Var 10])] (Let [(17,Comb FuncCall ("FiniteMap","splitGT") [Var 1,Var 15,Var 10])] (Let [(18,Case  Rigid (Comb FuncCall ("FiniteMap","lookupFM'") [Var 1,Var 15,Var 10]) [Branch (Pattern ("Prelude","Nothing") []) (Var 11),Branch (Pattern ("Prelude","Just") [19]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 19],Var 11])])] (Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 10,Var 18,Comb FuncCall ("FiniteMap","plusFM_C'") [Var 1,Var 2,Var 16,Var 13],Comb FuncCall ("FiniteMap","plusFM_C'") [Var 1,Var 2,Var 17,Var 14]])))))])])),Func ("FiniteMap","minusFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [5,6]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","minusFM'") [Var 3,Var 4,Var 6]])])])),Func ("FiniteMap","minusFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","Branch") [Var 4,Var 5,Var 6,Var 7,Var 8]),Branch (Pattern ("FiniteMap","Branch") [9,10,11,12,13]) (Let [(14,Comb ConsCall ("FiniteMap","Branch") [Var 4,Var 5,Var 6,Var 7,Var 8])] (Let [(15,Comb FuncCall ("FiniteMap","splitLT") [Var 1,Var 14,Var 9])] (Let [(16,Comb FuncCall ("FiniteMap","splitGT") [Var 1,Var 14,Var 9])] (Comb FuncCall ("FiniteMap","glueVBal") [Var 1,Comb FuncCall ("FiniteMap","minusFM'") [Var 1,Var 15,Var 12],Comb FuncCall ("FiniteMap","minusFM'") [Var 1,Var 16,Var 13]]))))])])),Func ("FiniteMap","intersectFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [5,6]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","intersectFM'") [Var 3,Var 4,Var 6]])])])),Func ("FiniteMap","intersectFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 2])))) (Rule [1,2,3] (Comb FuncCall ("FiniteMap","intersectFM_C'") [Var 1,Comb (FuncPartCall 2) ("FiniteMap","intersectFM'._#lambda6") [],Var 2,Var 3])),Func ("FiniteMap","intersectFM'._#lambda6") 2 Private (FuncType (TVar 1051) (FuncType (TVar 1052) (TVar 1052))) (Rule [1,2] (Var 2)),Func ("FiniteMap","intersectFM_C") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))) (FuncType (TCons ("FiniteMap","FM") [TVar 2,TVar 0]) (FuncType (TCons ("FiniteMap","FM") [TVar 2,TVar 0]) (TCons ("FiniteMap","FM") [TVar 2,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","FM") [6,7]) (Comb ConsCall ("FiniteMap","FM") [Var 4,Comb FuncCall ("FiniteMap","intersectFM_C'") [Var 4,Var 1,Var 5,Var 7]])])])),Func ("FiniteMap","intersectFM_C'") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 2]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 3]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [10,11,12,13,14]) (Let [(15,Comb ConsCall ("FiniteMap","Branch") [Var 10,Var 11,Var 12,Var 13,Var 14])] (Let [(16,Comb FuncCall ("FiniteMap","splitLT") [Var 1,Var 15,Var 5])] (Let [(17,Comb FuncCall ("FiniteMap","splitGT") [Var 1,Var 15,Var 5])] (Let [(18,Comb FuncCall ("FiniteMap","lookupFM'") [Var 1,Var 15,Var 5])] (Let [(19,Var 18)] (Let [(20,Comb FuncCall ("FiniteMap","intersectFM_C'._#selFP3#elt1'") [Var 19])] (Case  Rigid (Comb FuncCall ("Maybe","isJust") [Var 18]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 5,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 20],Var 6],Comb FuncCall ("FiniteMap","intersectFM_C'") [Var 1,Var 2,Var 16,Var 8],Comb FuncCall ("FiniteMap","intersectFM_C'") [Var 1,Var 2,Var 17,Var 9]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","glueVBal") [Var 1,Comb FuncCall ("FiniteMap","intersectFM_C'") [Var 1,Var 2,Var 16,Var 8],Comb FuncCall ("FiniteMap","intersectFM_C'") [Var 1,Var 2,Var 17,Var 9]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])))))))])])),Func ("FiniteMap","intersectFM_C'._#selFP3#elt1'") 1 Private (FuncType (TCons ("Prelude","Maybe") [TVar 1000]) (TVar 1000)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Just") [2]) (Var 2)])),Func ("FiniteMap","foldFM") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))) (FuncType (TVar 2) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TVar 2)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","FM") [4,5]) (Comb FuncCall ("FiniteMap","foldFM'") [Var 4,Var 1,Var 2,Var 5])])),Func ("FiniteMap","foldFM'") 4 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 3)))) (FuncType (TVar 3) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TVar 3))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Var 3),Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Comb FuncCall ("FiniteMap","foldFM'") [Var 1,Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 5],Var 6],Comb FuncCall ("FiniteMap","foldFM'") [Var 1,Var 2,Var 3,Var 9]],Var 8])])),Func ("FiniteMap","mapFM") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 2]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","mapFM'") [Var 3,Var 1,Var 4]])])),Func ("FiniteMap","mapFM'") 3 Private (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 1,TVar 2]) (TCons ("FiniteMap","FiniteMap") [TVar 1,TVar 3])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Comb ConsCall ("FiniteMap","Branch") [Var 4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Var 5],Var 6,Comb FuncCall ("FiniteMap","mapFM'") [Var 1,Var 2,Var 7],Comb FuncCall ("FiniteMap","mapFM'") [Var 1,Var 2,Var 8]])])),Func ("FiniteMap","filterFM") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Comb ConsCall ("FiniteMap","FM") [Var 3,Comb FuncCall ("FiniteMap","filterFM'") [Var 3,Var 1,Var 4]])])),Func ("FiniteMap","filterFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Var 5]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 4,Var 5,Comb FuncCall ("FiniteMap","filterFM'") [Var 1,Var 2,Var 7],Comb FuncCall ("FiniteMap","filterFM'") [Var 1,Var 2,Var 8]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","glueVBal") [Var 1,Comb FuncCall ("FiniteMap","filterFM'") [Var 1,Var 2,Var 7],Comb FuncCall ("FiniteMap","filterFM'") [Var 1,Var 2,Var 8]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("FiniteMap","sizeFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Lit (Intc  0)),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Var 6)])])),Func ("FiniteMap","sizeFM'") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Lit (Intc  0)),Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 4)])),Func ("FiniteMap","eqFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Comb FuncCall ("FiniteMap","sizeFM") [Var 1],Comb FuncCall ("FiniteMap","sizeFM") [Var 2]],Comb FuncCall ("Prelude","==") [Comb FuncCall ("FiniteMap","fmToList") [Var 1],Comb FuncCall ("FiniteMap","fmToList") [Var 2]]])),Func ("FiniteMap","isEmptyFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("FiniteMap","sizeFM") [Var 1],Lit (Intc  0)])),Func ("FiniteMap","elemFM") 2 Public (FuncType (TVar 0) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Maybe","isJust") [Comb FuncCall ("FiniteMap","lookupFM") [Var 2,Var 1]])),Func ("FiniteMap","lookupFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [3,4]) (Comb FuncCall ("FiniteMap","lookupFM'") [Var 3,Var 4,Var 2])])),Func ("FiniteMap","lookupFM'") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","lookupFM'") [Var 1,Var 7,Var 3]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","Just") [Var 5]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","lookupFM'") [Var 1,Var 8,Var 3])])])])),Func ("FiniteMap","lookupWithDefaultFM") 3 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 1)))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("FiniteMap","lookupFM") [Var 1,Var 3]) [Branch (Pattern ("Prelude","Nothing") []) (Var 2),Branch (Pattern ("Prelude","Just") [4]) (Var 4)])),Func ("FiniteMap","keyOrder") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])))) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [2,3]) (Var 2)])),Func ("FiniteMap","minFM") 0 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("FiniteMap","minFM.min.215") [],Comb (FuncPartCall 1) ("FiniteMap","tree") []])),Func ("FiniteMap","minFM.min.215") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 5,Comb ConsCall ("FiniteMap","EmptyFM") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Var 2,Var 3]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","minFM.min.215") [Var 5]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("FiniteMap","maxFM") 0 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("FiniteMap","maxFM.max.223") [],Comb (FuncPartCall 1) ("FiniteMap","tree") []])),Func ("FiniteMap","maxFM.max.223") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 6,Comb ConsCall ("FiniteMap","EmptyFM") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,)") [Var 2,Var 3]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","maxFM.max.223") [Var 6]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("FiniteMap","fmToList") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [1] (Comb FuncCall ("FiniteMap","foldFM") [Comb (FuncPartCall 3) ("FiniteMap","fmToList._#lambda8") [],Comb ConsCall ("Prelude","[]") [],Var 1])),Func ("FiniteMap","fmToList._#lambda8") 3 Private (FuncType (TVar 1237) (FuncType (TVar 1238) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1237,TVar 1238]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1237,TVar 1238]])))) (Rule [1,2,3] (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 1,Var 2],Var 3])),Func ("FiniteMap","keysFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb FuncCall ("FiniteMap","foldFM") [Comb (FuncPartCall 3) ("FiniteMap","keysFM._#lambda9") [],Comb ConsCall ("Prelude","[]") [],Var 1])),Func ("FiniteMap","keysFM._#lambda9") 3 Private (FuncType (TVar 1356) (FuncType (TVar 1353) (FuncType (TCons ("Prelude","[]") [TVar 1356]) (TCons ("Prelude","[]") [TVar 1356])))) (Rule [1,2,3] (Comb ConsCall ("Prelude",":") [Var 1,Var 3])),Func ("FiniteMap","eltsFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TVar 1])) (Rule [1] (Comb FuncCall ("FiniteMap","foldFM") [Comb (FuncPartCall 3) ("FiniteMap","eltsFM._#lambda10") [],Comb ConsCall ("Prelude","[]") [],Var 1])),Func ("FiniteMap","eltsFM._#lambda10") 3 Private (FuncType (TVar 1363) (FuncType (TVar 1367) (FuncType (TCons ("Prelude","[]") [TVar 1367]) (TCons ("Prelude","[]") [TVar 1367])))) (Rule [1,2,3] (Comb ConsCall ("Prelude",":") [Var 2,Var 3])),Func ("FiniteMap","fmToListPreOrder") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [2,3]) (Comb FuncCall ("FiniteMap","fmToListPreOrder.pre.243") [Var 3,Comb ConsCall ("Prelude","[]") []])])),Func ("FiniteMap","fmToListPreOrder.pre.243") 2 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Var 2),Branch (Pattern ("FiniteMap","Branch") [3,4,5,6,7]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 3,Var 4],Comb FuncCall ("FiniteMap","fmToListPreOrder.pre.243") [Var 6,Comb FuncCall ("FiniteMap","fmToListPreOrder.pre.243") [Var 7,Var 2]]])])),Func ("FiniteMap","fmSortBy") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("FiniteMap","keysFM") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("FiniteMap","listToFM") [Var 1],Comb FuncCall ("Prelude","zip") [Var 2,Comb FuncCall ("Prelude","repeat") [Comb ConsCall ("Prelude","()") []]]]])),Func ("FiniteMap","tree") 1 Private (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","FM") [2,3]) (Var 3)])),Func ("FiniteMap","toGT") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","not") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Var 3]],Comb FuncCall ("Prelude","/=") [Var 2,Var 3]])),Func ("FiniteMap","isEmptyFM'") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("FiniteMap","sizeFM'") [Var 1],Lit (Intc  0)])),Func ("FiniteMap","sIZE_RATIO") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  5))),Func ("FiniteMap","mkBranch") 5 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))))) (Rule [1,2,3,4,5] (Let [(6,Comb FuncCall ("FiniteMap","sizeFM'") [Var 4])] (Let [(7,Comb FuncCall ("FiniteMap","sizeFM'") [Var 5])] (Comb ConsCall ("FiniteMap","Branch") [Var 2,Var 3,Comb FuncCall ("FiniteMap","mkBranch.unbox.264") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","+") [Lit (Intc  1),Var 6],Var 7]],Var 4,Var 5])))),Func ("FiniteMap","mkBranch.unbox.264") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Var 1)),Func ("FiniteMap","mkBalBranch") 4 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))))) (Rule [1,2,3,4] (Let [(5,Comb FuncCall ("FiniteMap","sizeFM'") [Var 3])] (Let [(6,Comb FuncCall ("FiniteMap","sizeFM'") [Var 4])] (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","+") [Var 5,Var 6],Lit (Intc  2)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  1),Var 1,Var 2,Var 3,Var 4]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 6,Comb FuncCall ("Prelude","*") [Comb FuncCall ("FiniteMap","sIZE_RATIO") [],Var 5]]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Var 4) [Branch (Pattern ("FiniteMap","Branch") [7,8,9,10,11]) (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("FiniteMap","sizeFM'") [Var 10],Comb FuncCall ("Prelude","*") [Lit (Intc  2),Comb FuncCall ("FiniteMap","sizeFM'") [Var 11]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch.single_L.273") [Var 2,Var 1,Var 3,Var 4]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","mkBalBranch.double_L.273") [Var 2,Var 1,Var 3,Var 4])]),Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb FuncCall ("Prelude","failed") [])]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 5,Comb FuncCall ("Prelude","*") [Comb FuncCall ("FiniteMap","sIZE_RATIO") [],Var 6]]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Var 3) [Branch (Pattern ("FiniteMap","Branch") [12,13,14,15,16]) (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("FiniteMap","sizeFM'") [Var 16],Comb FuncCall ("Prelude","*") [Lit (Intc  2),Comb FuncCall ("FiniteMap","sizeFM'") [Var 15]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch.single_R.273") [Var 2,Var 1,Var 3,Var 4]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","mkBalBranch.double_R.273") [Var 2,Var 1,Var 3,Var 4])]),Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb FuncCall ("Prelude","failed") [])]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  2),Var 1,Var 2,Var 3,Var 4]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])))),Func ("FiniteMap","mkBalBranch.single_L.273") 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  3),Var 5,Var 6,Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  4),Var 2,Var 1,Var 3,Var 8],Var 9])])),Func ("FiniteMap","mkBalBranch.double_L.273") 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("FiniteMap","Branch") [10,11,12,13,14]) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  5),Var 10,Var 11,Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  6),Var 2,Var 1,Var 3,Var 13],Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  7),Var 5,Var 6,Var 14,Var 9]])])])),Func ("FiniteMap","mkBalBranch.single_R.273") 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]))))) (Rule [1,2,3,4] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  8),Var 5,Var 6,Var 8,Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  9),Var 2,Var 1,Var 9,Var 4]])])),Func ("FiniteMap","mkBalBranch.double_R.273") 4 Private (FuncType (TVar 170) (FuncType (TVar 169) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]) (TCons ("FiniteMap","FiniteMap") [TVar 169,TVar 170]))))) (Rule [1,2,3,4] (Case  Flex (Var 3) [Branch (Pattern ("FiniteMap","Branch") [5,6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("FiniteMap","Branch") [10,11,12,13,14]) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  10),Var 10,Var 11,Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  11),Var 5,Var 6,Var 8,Var 13],Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  12),Var 2,Var 1,Var 14,Var 4]])])])),Func ("FiniteMap","mkVBalBranch") 5 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))))) (Rule [1,2,3,4,5] (Case  Flex (Var 4) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb FuncCall ("FiniteMap","addToFM'") [Var 1,Var 5,Var 2,Var 3]),Branch (Pattern ("FiniteMap","Branch") [6,7,8,9,10]) (Case  Flex (Var 5) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb FuncCall ("FiniteMap","addToFM'") [Var 1,Comb ConsCall ("FiniteMap","Branch") [Var 6,Var 7,Var 8,Var 9,Var 10],Var 2,Var 3]),Branch (Pattern ("FiniteMap","Branch") [11,12,13,14,15]) (Let [(16,Comb ConsCall ("FiniteMap","Branch") [Var 6,Var 7,Var 8,Var 9,Var 10])] (Let [(17,Comb ConsCall ("FiniteMap","Branch") [Var 11,Var 12,Var 13,Var 14,Var 15])] (Let [(18,Comb FuncCall ("FiniteMap","sizeFM'") [Var 16])] (Let [(19,Comb FuncCall ("FiniteMap","sizeFM'") [Var 17])] (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","*") [Comb FuncCall ("FiniteMap","sIZE_RATIO") [],Var 18],Var 19]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 11,Var 12,Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 2,Var 3,Var 16,Var 14],Var 15]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","*") [Comb FuncCall ("FiniteMap","sIZE_RATIO") [],Var 19],Var 18]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 6,Var 7,Var 9,Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 2,Var 3,Var 10,Var 17]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBranch") [Lit (Intc  13),Var 2,Var 3,Var 16,Var 17]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])))))])])),Func ("FiniteMap","glueBal") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("FiniteMap","isEmptyFM'") [Var 2]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("FiniteMap","isEmptyFM'") [Var 3]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Let [(4,Comb FuncCall ("FiniteMap","findMax") [Var 2])] (Let [(5,Comb FuncCall ("FiniteMap","glueBal._#selFP8#mid_key1") [Var 4])] (Let [(6,Comb FuncCall ("FiniteMap","glueBal._#selFP9#mid_elt1") [Var 4])] (Let [(7,Comb FuncCall ("FiniteMap","findMin") [Var 3])] (Let [(8,Comb FuncCall ("FiniteMap","glueBal._#selFP6#mid_key2") [Var 7])] (Let [(9,Comb FuncCall ("FiniteMap","glueBal._#selFP7#mid_elt2") [Var 7])] (Case  Rigid (Comb FuncCall ("Prelude",">") [Comb FuncCall ("FiniteMap","sizeFM'") [Var 3],Comb FuncCall ("FiniteMap","sizeFM'") [Var 2]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 8,Var 9,Var 2,Comb FuncCall ("FiniteMap","deleteMin") [Var 1,Var 3]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 5,Var 6,Comb FuncCall ("FiniteMap","deleteMax") [Var 1,Var 2],Var 3])])))))))])])),Func ("FiniteMap","glueBal._#selFP8#mid_key1") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 439,TVar 440]) (TVar 439)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("FiniteMap","glueBal._#selFP9#mid_elt1") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 439,TVar 440]) (TVar 440)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("FiniteMap","glueBal._#selFP6#mid_key2") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 439,TVar 440]) (TVar 439)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("FiniteMap","glueBal._#selFP7#mid_elt2") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 439,TVar 440]) (TVar 440)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("FiniteMap","glueVBal") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("FiniteMap","isEmptyFM'") [Var 2]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("FiniteMap","isEmptyFM'") [Var 3]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Let [(4,Var 2)] (Let [(5,Comb FuncCall ("FiniteMap","glueVBal._#selFP16#key_l") [Var 4])] (Let [(6,Comb FuncCall ("FiniteMap","glueVBal._#selFP17#elt_l") [Var 4])] (Let [(7,Comb FuncCall ("FiniteMap","glueVBal._#selFP18#fm_ll") [Var 4])] (Let [(8,Comb FuncCall ("FiniteMap","glueVBal._#selFP19#fm_lr") [Var 4])] (Let [(9,Var 3)] (Let [(10,Comb FuncCall ("FiniteMap","glueVBal._#selFP12#key_r") [Var 9])] (Let [(11,Comb FuncCall ("FiniteMap","glueVBal._#selFP13#elt_r") [Var 9])] (Let [(12,Comb FuncCall ("FiniteMap","glueVBal._#selFP14#fm_rl") [Var 9])] (Let [(13,Comb FuncCall ("FiniteMap","glueVBal._#selFP15#fm_rr") [Var 9])] (Let [(14,Comb FuncCall ("FiniteMap","sizeFM'") [Var 2])] (Let [(15,Comb FuncCall ("FiniteMap","sizeFM'") [Var 3])] (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","*") [Comb FuncCall ("FiniteMap","sIZE_RATIO") [],Var 14],Var 15]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 10,Var 11,Comb FuncCall ("FiniteMap","glueVBal") [Var 1,Var 2,Var 12],Var 13]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","*") [Comb FuncCall ("FiniteMap","sIZE_RATIO") [],Var 15],Var 14]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 5,Var 6,Var 7,Comb FuncCall ("FiniteMap","glueVBal") [Var 1,Var 8,Var 3]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","glueBal") [Var 1,Var 2,Var 3])])])))))))))))))])])),Func ("FiniteMap","glueVBal._#selFP16#key_l") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 876)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 2)])),Func ("FiniteMap","glueVBal._#selFP17#elt_l") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 877)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 3)])),Func ("FiniteMap","glueVBal._#selFP18#fm_ll") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 5)])),Func ("FiniteMap","glueVBal._#selFP19#fm_lr") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 6)])),Func ("FiniteMap","glueVBal._#selFP12#key_r") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 876)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 2)])),Func ("FiniteMap","glueVBal._#selFP13#elt_r") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TVar 877)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 3)])),Func ("FiniteMap","glueVBal._#selFP14#fm_rl") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 5)])),Func ("FiniteMap","glueVBal._#selFP15#fm_rr") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877]) (TCons ("FiniteMap","FiniteMap") [TVar 876,TVar 877])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Var 6)])),Func ("FiniteMap","splitLT") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","splitLT") [Var 1,Var 7,Var 3]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Var 7),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 4,Var 5,Var 7,Comb FuncCall ("FiniteMap","splitLT") [Var 1,Var 8,Var 3]])])])])),Func ("FiniteMap","splitGT") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("FiniteMap","EmptyFM") []),Branch (Pattern ("FiniteMap","Branch") [4,5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("FiniteMap","mkVBalBranch") [Var 1,Var 4,Var 5,Comb FuncCall ("FiniteMap","splitGT") [Var 1,Var 7,Var 3],Var 8]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Var 8),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("FiniteMap","splitGT") [Var 1,Var 8,Var 3])])])])),Func ("FiniteMap","findMin") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TVar 0,TVar 1])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Case  Flex (Var 5) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("Prelude","(,)") [Var 2,Var 3]),Branch (Pattern ("FiniteMap","Branch") [7,8,9,10,11]) (Comb FuncCall ("FiniteMap","findMin") [Comb ConsCall ("FiniteMap","Branch") [Var 7,Var 8,Var 9,Var 10,Var 11]])])])),Func ("FiniteMap","deleteMin") 2 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","Branch") [3,4,5,6,7]) (Case  Flex (Var 6) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Var 7),Branch (Pattern ("FiniteMap","Branch") [8,9,10,11,12]) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 3,Var 4,Comb FuncCall ("FiniteMap","deleteMin") [Var 1,Comb ConsCall ("FiniteMap","Branch") [Var 8,Var 9,Var 10,Var 11,Var 12]],Var 7])])])),Func ("FiniteMap","findMax") 1 Private (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TVar 0,TVar 1])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("FiniteMap","Branch") [2,3,4,5,6]) (Case  Flex (Var 6) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Comb ConsCall ("Prelude","(,)") [Var 2,Var 3]),Branch (Pattern ("FiniteMap","Branch") [7,8,9,10,11]) (Comb FuncCall ("FiniteMap","findMax") [Comb ConsCall ("FiniteMap","Branch") [Var 7,Var 8,Var 9,Var 10,Var 11]])])])),Func ("FiniteMap","deleteMax") 2 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]) (TCons ("FiniteMap","FiniteMap") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("FiniteMap","Branch") [3,4,5,6,7]) (Case  Flex (Var 7) [Branch (Pattern ("FiniteMap","EmptyFM") []) (Var 6),Branch (Pattern ("FiniteMap","Branch") [8,9,10,11,12]) (Comb FuncCall ("FiniteMap","mkBalBranch") [Var 3,Var 4,Var 6,Comb FuncCall ("FiniteMap","deleteMax") [Var 1,Comb ConsCall ("FiniteMap","Branch") [Var 8,Var 9,Var 10,Var 11,Var 12]]])])])),Func ("FiniteMap","emptySet") 0 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []])) (Rule [] (Comb (FuncPartCall 1) ("FiniteMap","emptyFM") [])),Func ("FiniteMap","mkSet") 2 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("FiniteMap","listToFM") [Var 1],Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("FiniteMap","mkSet._#lambda13") [],Var 2]])),Func ("FiniteMap","mkSet._#lambda13") 1 Private (FuncType (TVar 1421) (TCons ("Prelude","(,)") [TVar 1421,TCons ("Prelude","()") []])) (Rule [1] (Comb ConsCall ("Prelude","(,)") [Var 1,Comb ConsCall ("Prelude","()") []])),Func ("FiniteMap","isEmptySet") 0 Private (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (TCons ("Prelude","Bool") [])) (Rule [] (Comb (FuncPartCall 1) ("FiniteMap","isEmptyFM") [])),Func ("FiniteMap","elementOf") 0 Private (FuncType (TVar 0) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (TCons ("Prelude","Bool") []))) (Rule [] (Comb (FuncPartCall 2) ("FiniteMap","elemFM") [])),Func ("FiniteMap","minusSet") 0 Private (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]))) (Rule [] (Comb (FuncPartCall 2) ("FiniteMap","minusFM") [])),Func ("FiniteMap","setToList") 0 Private (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("FiniteMap","keysFM") [])),Func ("FiniteMap","union") 0 Private (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]) (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]))) (Rule [] (Comb (FuncPartCall 2) ("FiniteMap","plusFM") []))] []
+ src/lib/Curry/Module/.curry/FiniteMap.fint view
@@ -0,0 +1,1 @@+Prog "FiniteMap" ["Maybe","Prelude"] [TypeSyn ("FiniteMap","LeKey") Private [0] (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))),TypeSyn ("FiniteMap","FiniteSet") Private [0] (TCons ("FiniteMap","FM") [TVar 0,TCons ("Prelude","()") []]),Type ("FiniteMap","FM") Public [0,1] []] [Func ("FiniteMap","emptyFM") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])) (Rule [] (Var 0)),Func ("FiniteMap","unitFM") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])))) (Rule [] (Var 0)),Func ("FiniteMap","listToFM") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","addToFM") 3 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])))) (Rule [] (Var 0)),Func ("FiniteMap","addListToFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","addToFM_C") 4 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TVar 1) (FuncType (TVar 0) (TCons ("FiniteMap","FM") [TVar 1,TVar 0]))))) (Rule [] (Var 0)),Func ("FiniteMap","addListToFM_C") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 0]]) (TCons ("FiniteMap","FM") [TVar 1,TVar 0])))) (Rule [] (Var 0)),Func ("FiniteMap","delFromFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","delListFromFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","updFM") 3 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 1)) (TCons ("FiniteMap","FM") [TVar 0,TVar 1])))) (Rule [] (Var 0)),Func ("FiniteMap","splitFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TCons ("FiniteMap","FM") [TVar 0,TVar 1],TCons ("Prelude","(,)") [TVar 0,TVar 1]]]))) (Rule [] (Var 0)),Func ("FiniteMap","plusFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","plusFM_C") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (FuncType (TCons ("FiniteMap","FM") [TVar 1,TVar 0]) (TCons ("FiniteMap","FM") [TVar 1,TVar 0])))) (Rule [] (Var 0)),Func ("FiniteMap","minusFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","intersectFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","intersectFM_C") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 1))) (FuncType (TCons ("FiniteMap","FM") [TVar 2,TVar 0]) (FuncType (TCons ("FiniteMap","FM") [TVar 2,TVar 0]) (TCons ("FiniteMap","FM") [TVar 2,TVar 1])))) (Rule [] (Var 0)),Func ("FiniteMap","foldFM") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 2)))) (FuncType (TVar 2) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TVar 2)))) (Rule [] (Var 0)),Func ("FiniteMap","mapFM") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 2]))) (Rule [] (Var 0)),Func ("FiniteMap","filterFM") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("FiniteMap","FM") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","sizeFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("FiniteMap","eqFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("FiniteMap","isEmptyFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("FiniteMap","elemFM") 2 Public (FuncType (TVar 0) (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("FiniteMap","lookupFM") 2 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [] (Var 0)),Func ("FiniteMap","lookupWithDefaultFM") 3 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 1)))) (Rule [] (Var 0)),Func ("FiniteMap","keyOrder") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])))) (Rule [] (Var 0)),Func ("FiniteMap","minFM") 0 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("FiniteMap","maxFM") 0 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("FiniteMap","fmToList") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("FiniteMap","keysFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("FiniteMap","eltsFM") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TVar 1])) (Rule [] (Var 0)),Func ("FiniteMap","fmToListPreOrder") 1 Public (FuncType (TCons ("FiniteMap","FM") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("FiniteMap","fmSortBy") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/FiniteMap.uacy view
@@ -0,0 +1,78 @@+CurryProg "FiniteMap"+ ["Prelude","Maybe"]+ [CTypeSyn ("FiniteMap","LeKey") Private [(0,"key")] (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (0,"key")) (CTCons ("Prelude","Bool") []))),+  CType ("FiniteMap","FM") Public [(0,"key"),(1,"elt")] [CCons ("FiniteMap","FM") 2 Public [CTCons ("FiniteMap","LeKey") [CTVar (0,"key")],CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]]],+  CType ("FiniteMap","FiniteMap") Private [(0,"key"),(1,"elt")] [CCons ("FiniteMap","EmptyFM") 0 Private [],CCons ("FiniteMap","Branch") 5 Private [CTVar (0,"key"),CTVar (1,"elt"),CTCons ("Prelude","Int") [],CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")],CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]]],+  CTypeSyn ("FiniteMap","FiniteSet") Private [(0,"key")] (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTCons ("Prelude","()") []])]+ [CFunc ("FiniteMap","addListToFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"elt")]]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","addListToFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"key_elt_pairs"))))] []]),+  CFunc ("FiniteMap","addListToFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm"),CPVar (2,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addListToFM_C'")) (CVar (0,"le"))) (CLambda [CPVar (3,"_"),CPVar (4,"new")] (CVar (4,"new")))) (CVar (1,"fm"))) (CVar (2,"key_elt_pairs")))] []]),+  CFunc ("FiniteMap","addListToFM_C") 3 Public (CFuncType (CFuncType (CTVar (0,"elt")) (CFuncType (CTVar (0,"elt")) (CTVar (0,"elt")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"key"),CTVar (0,"elt")]]) (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")])))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")],CPVar (3,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addListToFM_C'")) (CVar (1,"le"))) (CVar (0,"combiner"))) (CVar (2,"fm"))) (CVar (3,"key_elt_pairs"))))] []]),+  CFunc ("FiniteMap","addListToFM_C'") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"combiner"),CPVar (2,"fm"),CPVar (3,"key_elt_pairs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CSymbol ("FiniteMap","add"))) (CVar (2,"fm"))) (CVar (3,"key_elt_pairs")))] [CLocalFunc (CFunc ("FiniteMap","add") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (4,"fmap"),CPComb ("Prelude","(,)") [CPVar (5,"key"),CPVar (6,"elt")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (0,"le"))) (CVar (1,"combiner"))) (CVar (4,"fmap"))) (CVar (5,"key"))) (CVar (6,"elt")))] []]))]]),+  CFunc ("FiniteMap","addToFM") 3 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")])))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"key"),CPVar (3,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"key"))) (CVar (3,"elt"))))] []]),+  CFunc ("FiniteMap","addToFM'") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm"),CPVar (2,"key"),CPVar (3,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (0,"le"))) (CLambda [CPVar (4,"_"),CPVar (5,"new")] (CVar (5,"new")))) (CVar (1,"fm"))) (CVar (2,"key"))) (CVar (3,"elt")))] []]),+  CFunc ("FiniteMap","addToFM_C") 4 Public (CFuncType (CFuncType (CTVar (0,"elt")) (CFuncType (CTVar (0,"elt")) (CTVar (0,"elt")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")]) (CFuncType (CTVar (1,"key")) (CFuncType (CTVar (0,"elt")) (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")]))))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")],CPVar (3,"key"),CPVar (4,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (1,"le"))) (CVar (0,"combiner"))) (CVar (2,"fm"))) (CVar (3,"key"))) (CVar (4,"elt"))))] []]),+  CFunc ("FiniteMap","addToFM_C'") 5 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (2,"key"),CPVar (3,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","unitFM'")) (CVar (2,"key"))) (CVar (3,"elt")))] [],CRule [CPVar (4,"le"),CPVar (5,"combiner"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"size"),CPVar (9,"fm_l"),CPVar (10,"fm_r")],CPVar (11,"new_key"),CPVar (12,"new_elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (4,"le")) (CVar (11,"new_key"))) (CVar (6,"key")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (4,"le"))) (CVar (5,"combiner"))) (CVar (9,"fm_l"))) (CVar (11,"new_key"))) (CVar (12,"new_elt")))) (CVar (10,"fm_r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (11,"new_key"))) (CVar (6,"key")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (11,"new_key"))) (CApply (CApply (CVar (5,"combiner")) (CVar (7,"elt"))) (CVar (12,"new_elt")))) (CVar (8,"size"))) (CVar (9,"fm_l"))) (CVar (10,"fm_r")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CVar (9,"fm_l"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM_C'")) (CVar (4,"le"))) (CVar (5,"combiner"))) (CVar (10,"fm_r"))) (CVar (11,"new_key"))) (CVar (12,"new_elt"))))))] []]),+  CFunc ("FiniteMap","delFromFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTVar (0,"key")) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"del_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"del_key"))))] []]),+  CFunc ("FiniteMap","delFromFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"del_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"del_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"key"))) (CVar (4,"elt"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"del_key")))) (CVar (7,"fm_r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"del_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueBal")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (7,"fm_r")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"key"))) (CVar (4,"elt"))) (CVar (6,"fm_l"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"del_key"))))))] []]),+  CFunc ("FiniteMap","delListFromFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"key")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"keys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CApply (CSymbol ("FiniteMap","delFromFM'")) (CVar (0,"le")))) (CVar (1,"fm"))) (CVar (2,"keys"))))] []]),+  CFunc ("FiniteMap","deleteMax") 2 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","Branch") [CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"fm_l"),CPComb ("FiniteMap","EmptyFM") []]] [(CSymbol ("Prelude","success"),CVar (4,"fm_l"))] [],CRule [CPVar (5,"le"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"_"),CPVar (9,"fm_l"),CPComb ("FiniteMap","Branch") [CPVar (10,"key_r"),CPVar (11,"elt_r"),CPVar (12,"s_r"),CPVar (13,"fm_rl"),CPVar (14,"fm_rr")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CVar (9,"fm_l"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMax")) (CVar (5,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (10,"key_r"))) (CVar (11,"elt_r"))) (CVar (12,"s_r"))) (CVar (13,"fm_rl"))) (CVar (14,"fm_rr")))))] []]),+  CFunc ("FiniteMap","deleteMin") 2 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","Branch") [CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (4,"fm_r")]] [(CSymbol ("Prelude","success"),CVar (4,"fm_r"))] [],CRule [CPVar (5,"le"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"_"),CPComb ("FiniteMap","Branch") [CPVar (9,"key_l"),CPVar (10,"elt_l"),CPVar (11,"s_l"),CPVar (12,"fm_ll"),CPVar (13,"fm_lr")],CPVar (14,"fm_r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (6,"key"))) (CVar (7,"elt"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMin")) (CVar (5,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (9,"key_l"))) (CVar (10,"elt_l"))) (CVar (11,"s_l"))) (CVar (12,"fm_ll"))) (CVar (13,"fm_lr"))))) (CVar (14,"fm_r")))] []]),+  CFunc ("FiniteMap","elemFM") 2 Public (CFuncType (CTVar (0,"key")) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"_")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"fm")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Maybe","isJust")) (CApply (CApply (CSymbol ("FiniteMap","lookupFM")) (CVar (1,"fm"))) (CVar (0,"key"))))] []]),+  CFunc ("FiniteMap","elementOf") 0 Private (CFuncType (CTVar (0,"key")) (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","elemFM"))] []]),+  CFunc ("FiniteMap","eltsFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"_"),CTVar (1,"elt")]) (CTCons ("Prelude","[]") [CTVar (1,"elt")])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM")) (CLambda [CPVar (1,"_"),CPVar (2,"elt"),CPVar (3,"rest")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"elt"))) (CVar (3,"rest"))))) (CSymbol ("Prelude","[]"))) (CVar (0,"fm")))] []]),+  CFunc ("FiniteMap","emptyFM") 1 Public (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"_")])) (CRules CFlex [CRule [CPVar (0,"le")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CSymbol ("FiniteMap","EmptyFM")))] []]),+  CFunc ("FiniteMap","emptySet") 0 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","emptyFM"))] []]),+  CFunc ("FiniteMap","eqFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"fm_1"),CPVar (1,"fm_2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (0,"fm_1")))) (CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (1,"fm_2"))))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"fm_1")))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (1,"fm_2")))))] []]),+  CFunc ("FiniteMap","filterFM") 2 Public (CFuncType (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (1,"le"))) (CVar (0,"p"))) (CVar (2,"fm"))))] []]),+  CFunc ("FiniteMap","filterFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPVar (3,"p"),CPComb ("FiniteMap","Branch") [CPVar (4,"key"),CPVar (5,"elt"),CPVar (6,"_"),CPVar (7,"fm_l"),CPVar (8,"fm_r")]] [(CApply (CApply (CVar (3,"p")) (CVar (4,"key"))) (CVar (5,"elt")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (2,"le"))) (CVar (4,"key"))) (CVar (5,"elt"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (7,"fm_l")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (8,"fm_r")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (2,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (7,"fm_l")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","filterFM'")) (CVar (2,"le"))) (CVar (3,"p"))) (CVar (8,"fm_r"))))] []]),+  CFunc ("FiniteMap","findMax") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"elt")])) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"key"),CPVar (1,"elt"),CPVar (2,"_"),CPVar (3,"_"),CPComb ("FiniteMap","EmptyFM") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"key"))) (CVar (1,"elt")))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_"),CPVar (7,"_"),CPComb ("FiniteMap","Branch") [CPVar (8,"key_r"),CPVar (9,"elt_r"),CPVar (10,"s_r"),CPVar (11,"fm_rl"),CPVar (12,"fm_rr")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","findMax")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (8,"key_r"))) (CVar (9,"elt_r"))) (CVar (10,"s_r"))) (CVar (11,"fm_rl"))) (CVar (12,"fm_rr"))))] []]),+  CFunc ("FiniteMap","findMin") 1 Private (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"elt")])) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"key"),CPVar (1,"elt"),CPVar (2,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"key"))) (CVar (1,"elt")))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_l"),CPVar (8,"elt_l"),CPVar (9,"s_l"),CPVar (10,"fm_ll"),CPVar (11,"fm_lr")],CPVar (12,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","findMin")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (7,"key_l"))) (CVar (8,"elt_l"))) (CVar (9,"s_l"))) (CVar (10,"fm_ll"))) (CVar (11,"fm_lr"))))] []]),+  CFunc ("FiniteMap","fmSortBy") 2 Public (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"key")]) (CTCons ("Prelude","[]") [CTVar (0,"key")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","keysFM")) (CApply (CApply (CSymbol ("FiniteMap","listToFM")) (CVar (0,"p"))) (CApply (CApply (CSymbol ("Prelude","zip")) (CVar (1,"l"))) (CApply (CSymbol ("Prelude","repeat")) (CSymbol ("Prelude","()"))))))] []]),+  CFunc ("FiniteMap","fmToList") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"elt")]])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM")) (CLambda [CPVar (1,"key"),CPVar (2,"elt"),CPVar (3,"rest")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"key"))) (CVar (2,"elt")))) (CVar (3,"rest"))))) (CSymbol ("Prelude","[]"))) (CVar (0,"fm")))] []]),+  CFunc ("FiniteMap","fmToListPreOrder") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"elt")]])) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"_"),CPVar (1,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","pre")) (CVar (1,"fm"))) (CSymbol ("Prelude","[]")))] [CLocalFunc (CFunc ("FiniteMap","pre") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") [],CPVar (2,"xs")] [(CSymbol ("Prelude","success"),CVar (2,"xs"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (3,"k"),CPVar (4,"x"),CPVar (5,"_"),CPVar (6,"l"),CPVar (7,"r")],CPVar (8,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"k"))) (CVar (4,"x")))) (CApply (CApply (CSymbol ("FiniteMap","pre")) (CVar (6,"l"))) (CApply (CApply (CSymbol ("FiniteMap","pre")) (CVar (7,"r"))) (CVar (8,"xs")))))] []]))]]),+  CFunc ("FiniteMap","foldFM") 3 Public (CFuncType (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CFuncType (CTVar (2,"a")) (CTVar (2,"a"))))) (CFuncType (CTVar (2,"a")) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTVar (2,"a"))))) (CRules CFlex [CRule [CPVar (0,"k"),CPVar (1,"z"),CPComb ("FiniteMap","FM") [CPVar (2,"le"),CPVar (3,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM'")) (CVar (2,"le"))) (CVar (0,"k"))) (CVar (1,"z"))) (CVar (3,"fm")))] []]),+  CFunc ("FiniteMap","foldFM'") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"z"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CVar (2,"z"))] [],CRule [CPVar (3,"le"),CPVar (4,"k"),CPVar (5,"z"),CPComb ("FiniteMap","Branch") [CPVar (6,"key"),CPVar (7,"elt"),CPVar (8,"_"),CPVar (9,"fm_l"),CPVar (10,"fm_r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM'")) (CVar (3,"le"))) (CVar (4,"k"))) (CApply (CApply (CApply (CVar (4,"k")) (CVar (6,"key"))) (CVar (7,"elt"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM'")) (CVar (3,"le"))) (CVar (4,"k"))) (CVar (5,"z"))) (CVar (10,"fm_r"))))) (CVar (9,"fm_l")))] []]),+  CFunc ("FiniteMap","glueBal") 3 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm1"),CPVar (2,"fm2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (1,"fm1")))) (CVar (2,"fm2"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (2,"fm2")))) (CVar (1,"fm1"))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"mid_key1"),CPVar (4,"mid_elt1")]) (CApply (CSymbol ("FiniteMap","findMax")) (CVar (1,"fm1"))) [],CLocalPat (CPComb ("Prelude","(,)") [CPVar (5,"mid_key2"),CPVar (6,"mid_elt2")]) (CApply (CSymbol ("FiniteMap","findMin")) (CVar (2,"fm2"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (2,"fm2")))) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (1,"fm1"))))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (5,"mid_key2"))) (CVar (6,"mid_elt2"))) (CVar (1,"fm1"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMin")) (CVar (0,"le"))) (CVar (2,"fm2"))))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"mid_key1"))) (CVar (4,"mid_elt1"))) (CApply (CApply (CSymbol ("FiniteMap","deleteMax")) (CVar (0,"le"))) (CVar (1,"fm1")))) (CVar (2,"fm2")))))))] []]),+  CFunc ("FiniteMap","glueVBal") 3 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm_l"),CPVar (2,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (1,"fm_l")))) (CVar (2,"fm_r"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("FiniteMap","isEmptyFM'")) (CVar (2,"fm_r")))) (CVar (1,"fm_l"))) (CLetDecl [CLocalPat (CPComb ("FiniteMap","Branch") [CPVar (3,"key_l"),CPVar (4,"elt_l"),CPVar (5,"_"),CPVar (6,"fm_ll"),CPVar (7,"fm_lr")]) (CVar (1,"fm_l")) [],CLocalPat (CPComb ("FiniteMap","Branch") [CPVar (8,"key_r"),CPVar (9,"elt_r"),CPVar (10,"_"),CPVar (11,"fm_rl"),CPVar (12,"fm_rr")]) (CVar (2,"fm_r")) [],CLocalPat (CPVar (13,"size_l")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (1,"fm_l"))) [],CLocalPat (CPVar (14,"size_r")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (2,"fm_r"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (13,"size_l")))) (CVar (14,"size_r")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (8,"key_r"))) (CVar (9,"elt_r"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (0,"le"))) (CVar (1,"fm_l"))) (CVar (11,"fm_rl")))) (CVar (12,"fm_rr")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (14,"size_r")))) (CVar (13,"size_l")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (3,"key_l"))) (CVar (4,"elt_l"))) (CVar (6,"fm_ll"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (0,"le"))) (CVar (7,"fm_lr"))) (CVar (2,"fm_r"))))) (CApply (CApply (CApply (CSymbol ("FiniteMap","glueBal")) (CVar (0,"le"))) (CVar (1,"fm_l"))) (CVar (2,"fm_r"))))))))] []]),+  CFunc ("FiniteMap","intersectFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le1"),CPVar (1,"fm1")],CPComb ("FiniteMap","FM") [CPVar (2,"_"),CPVar (3,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le1"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM'")) (CVar (0,"le1"))) (CVar (1,"fm1"))) (CVar (3,"fm2"))))] []]),+  CFunc ("FiniteMap","intersectFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"fm1"),CPVar (2,"fm2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (0,"le"))) (CLambda [CPVar (3,"_"),CPVar (4,"right")] (CVar (4,"right")))) (CVar (1,"fm1"))) (CVar (2,"fm2")))] []]),+  CFunc ("FiniteMap","intersectFM_C") 3 Public (CFuncType (CFuncType (CTVar (0,"elt")) (CFuncType (CTVar (0,"elt")) (CTVar (1,"elt2")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (2,"key"),CTVar (0,"elt")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (2,"key"),CTVar (0,"elt")]) (CTCons ("FiniteMap","FM") [CTVar (2,"key"),CTVar (1,"elt2")])))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le1"),CPVar (2,"fm1")],CPComb ("FiniteMap","FM") [CPVar (3,"_"),CPVar (4,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le1"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (1,"le1"))) (CVar (0,"combiner"))) (CVar (2,"fm1"))) (CVar (4,"fm2"))))] []]),+  CFunc ("FiniteMap","intersectFM_C'") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (3,"_"),CPVar (4,"_"),CPComb ("FiniteMap","EmptyFM") [],CPComb ("FiniteMap","Branch") [CPVar (5,"_"),CPVar (6,"_"),CPVar (7,"_"),CPVar (8,"_"),CPVar (9,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (10,"le"),CPVar (11,"combiner"),CPComb ("FiniteMap","Branch") [CPVar (12,"split_key1"),CPVar (13,"elt1"),CPVar (14,"s1"),CPVar (15,"left1"),CPVar (16,"right1")],CPComb ("FiniteMap","Branch") [CPVar (17,"split_key"),CPVar (18,"elt2"),CPVar (19,"_"),CPVar (20,"left"),CPVar (21,"right")]] [(CApply (CSymbol ("Maybe","isJust")) (CVar (25,"maybe_elt1")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (10,"le"))) (CVar (17,"split_key"))) (CApply (CApply (CVar (11,"combiner")) (CVar (26,"elt1'"))) (CVar (18,"elt2")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (23,"lts"))) (CVar (20,"left")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (24,"gts"))) (CVar (21,"right")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (10,"le"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (23,"lts"))) (CVar (20,"left")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","intersectFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (24,"gts"))) (CVar (21,"right"))))] [CLocalPat (CPVar (22,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (12,"split_key1"))) (CVar (13,"elt1"))) (CVar (14,"s1"))) (CVar (15,"left1"))) (CVar (16,"right1"))) [],CLocalPat (CPVar (23,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (24,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (25,"maybe_elt1")) (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPComb ("Prelude","Just") [CPVar (26,"elt1'")]) (CVar (25,"maybe_elt1")) []]]),+  CFunc ("FiniteMap","isEmptyFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (0,"fm")))) (CLit (CIntc 0)))] []]),+  CFunc ("FiniteMap","isEmptyFM'") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (0,"fm")))) (CLit (CIntc 0)))] []]),+  CFunc ("FiniteMap","isEmptySet") 0 Private (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","isEmptyFM"))] []]),+  CFunc ("FiniteMap","keyOrder") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"_")]) (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (0,"key")) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"lt"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"lt"))] []]),+  CFunc ("FiniteMap","keysFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"_")]) (CTCons ("Prelude","[]") [CTVar (0,"key")])) (CRules CFlex [CRule [CPVar (0,"fm")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","foldFM")) (CLambda [CPVar (1,"key"),CPVar (2,"_"),CPVar (3,"rest")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"key"))) (CVar (3,"rest"))))) (CSymbol ("Prelude","[]"))) (CVar (0,"fm")))] []]),+  CFunc ("FiniteMap","listToFM") 1 Public (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"elt")]]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPVar (0,"le")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","addListToFM")) (CApply (CSymbol ("FiniteMap","emptyFM")) (CVar (0,"le"))))] []]),+  CFunc ("FiniteMap","lookupFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTVar (0,"key")) (CTCons ("Prelude","Maybe") [CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le"),CPVar (1,"fm")],CPVar (2,"key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (0,"le"))) (CVar (1,"fm"))) (CVar (2,"key")))] []]),+  CFunc ("FiniteMap","lookupFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"key_to_find")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"key_to_find"))) (CVar (3,"key")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"key_to_find")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"key_to_find"))) (CVar (3,"key")))) (CApply (CSymbol ("Prelude","Just")) (CVar (4,"elt")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"key_to_find")))))] []]),+  CFunc ("FiniteMap","lookupWithDefaultFM") 3 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTVar (1,"elt")) (CFuncType (CTVar (0,"key")) (CTVar (1,"elt"))))) (CRules CFlex [CRule [CPVar (0,"fm"),CPVar (1,"deflt"),CPVar (2,"key")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("FiniteMap","lookupFM")) (CVar (0,"fm"))) (CVar (2,"key"))) [CBranch (CPComb ("Prelude","Nothing") []) (CVar (1,"deflt")),CBranch (CPComb ("Prelude","Just") [CPVar (3,"elt")]) (CVar (3,"elt"))])] []]),+  CFunc ("FiniteMap","mapFM") 2 Public (CFuncType (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt1")) (CTVar (2,"elt2")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt1")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (2,"elt2")]))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("FiniteMap","FM") [CPVar (1,"le"),CPVar (2,"fm")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","mapFM'")) (CVar (1,"le"))) (CVar (0,"f"))) (CVar (2,"fm"))))] []]),+  CFunc ("FiniteMap","mapFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPVar (3,"f"),CPComb ("FiniteMap","Branch") [CPVar (4,"key"),CPVar (5,"elt"),CPVar (6,"size"),CPVar (7,"fm_l"),CPVar (8,"fm_r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"key"))) (CApply (CApply (CVar (3,"f")) (CVar (4,"key"))) (CVar (5,"elt")))) (CVar (6,"size"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","mapFM'")) (CVar (2,"le"))) (CVar (3,"f"))) (CVar (7,"fm_l")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","mapFM'")) (CVar (2,"le"))) (CVar (3,"f"))) (CVar (8,"fm_r"))))] []]),+  CFunc ("FiniteMap","maxFM") 0 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("FiniteMap","max"))) (CSymbol ("FiniteMap","tree")))] [CLocalFunc (CFunc ("FiniteMap","max") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"k"),CPVar (1,"x"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"r")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"r"))) (CSymbol ("FiniteMap","EmptyFM")),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CVar (1,"x")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("FiniteMap","max")) (CVar (4,"r")))] []]))]]),+  CFunc ("FiniteMap","minFM") 0 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("FiniteMap","min"))) (CSymbol ("FiniteMap","tree")))] [CLocalFunc (CFunc ("FiniteMap","min") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"k"),CPVar (1,"x"),CPVar (2,"_"),CPVar (3,"l"),CPVar (4,"_")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"l"))) (CSymbol ("FiniteMap","EmptyFM")),CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CVar (1,"x")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("FiniteMap","min")) (CVar (3,"l")))] []]))]]),+  CFunc ("FiniteMap","minusFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le1"),CPVar (1,"fm1")],CPComb ("FiniteMap","FM") [CPVar (2,"_"),CPVar (3,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le1"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","minusFM'")) (CVar (0,"le1"))) (CVar (1,"fm1"))) (CVar (3,"fm2"))))] []]),+  CFunc ("FiniteMap","minusFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"_"),CPComb ("FiniteMap","Branch") [CPVar (3,"split_key1"),CPVar (4,"elt1"),CPVar (5,"s1"),CPVar (6,"left1"),CPVar (7,"right1")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (3,"split_key1"))) (CVar (4,"elt1"))) (CVar (5,"s1"))) (CVar (6,"left1"))) (CVar (7,"right1")))] [],CRule [CPVar (8,"le"),CPComb ("FiniteMap","Branch") [CPVar (9,"split_key1"),CPVar (10,"elt1"),CPVar (11,"s1"),CPVar (12,"left1"),CPVar (13,"right1")],CPComb ("FiniteMap","Branch") [CPVar (14,"split_key"),CPVar (15,"_"),CPVar (16,"_"),CPVar (17,"left"),CPVar (18,"right")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("FiniteMap","glueVBal")) (CVar (8,"le"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","minusFM'")) (CVar (8,"le"))) (CVar (20,"lts"))) (CVar (17,"left")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","minusFM'")) (CVar (8,"le"))) (CVar (21,"gts"))) (CVar (18,"right"))))] [CLocalPat (CPVar (19,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (9,"split_key1"))) (CVar (10,"elt1"))) (CVar (11,"s1"))) (CVar (12,"left1"))) (CVar (13,"right1"))) [],CLocalPat (CPVar (20,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) [],CLocalPat (CPVar (21,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) []]]),+  CFunc ("FiniteMap","minusSet") 0 Private (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]) (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","minusFM"))] []]),+  CFunc ("FiniteMap","mkBalBranch") 4 Private (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]))))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"elt"),CPVar (2,"fm_L"),CPVar (3,"fm_R")] [(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (4,"size_l"))) (CVar (5,"size_r")))) (CLit (CIntc 2)),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 1))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (2,"fm_L"))) (CVar (3,"fm_R"))),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (5,"size_r"))) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (4,"size_l"))),CCase (CVar (3,"fm_R")) [CBranch (CPComb ("FiniteMap","Branch") [CPVar (6,"_"),CPVar (7,"_"),CPVar (8,"_"),CPVar (9,"fm_rl"),CPVar (10,"fm_rr")]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (9,"fm_rl")))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (10,"fm_rr")))))) (CApply (CApply (CSymbol ("FiniteMap","single_L")) (CVar (2,"fm_L"))) (CVar (3,"fm_R")))) (CApply (CApply (CSymbol ("FiniteMap","double_L")) (CVar (2,"fm_L"))) (CVar (3,"fm_R"))))]),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (4,"size_l"))) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (5,"size_r"))),CCase (CVar (2,"fm_L")) [CBranch (CPComb ("FiniteMap","Branch") [CPVar (11,"_"),CPVar (12,"_"),CPVar (13,"_"),CPVar (14,"fm_ll"),CPVar (15,"fm_lr")]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (15,"fm_lr")))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (14,"fm_ll")))))) (CApply (CApply (CSymbol ("FiniteMap","single_R")) (CVar (2,"fm_L"))) (CVar (3,"fm_R")))) (CApply (CApply (CSymbol ("FiniteMap","double_R")) (CVar (2,"fm_L"))) (CVar (3,"fm_R"))))]),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 2))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (2,"fm_L"))) (CVar (3,"fm_R")))] [CLocalPat (CPVar (4,"size_l")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (2,"fm_L"))) [],CLocalPat (CPVar (5,"size_r")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (3,"fm_R"))) [],CLocalFunc (CFunc ("FiniteMap","single_L") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (6,"fm_l"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_r"),CPVar (8,"elt_r"),CPVar (9,"_"),CPVar (10,"fm_rl"),CPVar (11,"fm_rr")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 3))) (CVar (7,"key_r"))) (CVar (8,"elt_r"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 4))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (6,"fm_l"))) (CVar (10,"fm_rl")))) (CVar (11,"fm_rr")))] []])),CLocalFunc (CFunc ("FiniteMap","double_L") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (6,"fm_l"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_r"),CPVar (8,"elt_r"),CPVar (9,"_"),CPComb ("FiniteMap","Branch") [CPVar (10,"key_rl"),CPVar (11,"elt_rl"),CPVar (12,"_"),CPVar (13,"fm_rll"),CPVar (14,"fm_rlr")],CPVar (15,"fm_rr")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 5))) (CVar (10,"key_rl"))) (CVar (11,"elt_rl"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 6))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (6,"fm_l"))) (CVar (13,"fm_rll")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 7))) (CVar (7,"key_r"))) (CVar (8,"elt_r"))) (CVar (14,"fm_rlr"))) (CVar (15,"fm_rr"))))] []])),CLocalFunc (CFunc ("FiniteMap","single_R") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (6,"key_l"),CPVar (7,"elt_l"),CPVar (8,"_"),CPVar (9,"fm_ll"),CPVar (10,"fm_lr")],CPVar (11,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 8))) (CVar (6,"key_l"))) (CVar (7,"elt_l"))) (CVar (9,"fm_ll"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 9))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (10,"fm_lr"))) (CVar (11,"fm_r"))))] []])),CLocalFunc (CFunc ("FiniteMap","double_R") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","Branch") [CPVar (6,"key_l"),CPVar (7,"elt_l"),CPVar (8,"_"),CPVar (9,"fm_ll"),CPComb ("FiniteMap","Branch") [CPVar (10,"key_lr"),CPVar (11,"elt_lr"),CPVar (12,"_"),CPVar (13,"fm_lrl"),CPVar (14,"fm_lrr")]],CPVar (15,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 10))) (CVar (10,"key_lr"))) (CVar (11,"elt_lr"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 11))) (CVar (6,"key_l"))) (CVar (7,"elt_l"))) (CVar (9,"fm_ll"))) (CVar (13,"fm_lrl")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 12))) (CVar (0,"key"))) (CVar (1,"elt"))) (CVar (14,"fm_lrr"))) (CVar (15,"fm_r"))))] []]))]]),+  CFunc ("FiniteMap","mkBranch") 5 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")])))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"key"),CPVar (2,"elt"),CPVar (3,"fm_l"),CPVar (4,"fm_r")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (7,"result")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (1,"key"))) (CVar (2,"elt"))) (CApply (CSymbol ("FiniteMap","unbox")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CLit (CIntc 1))) (CVar (5,"left_size")))) (CVar (6,"right_size"))))) (CVar (3,"fm_l"))) (CVar (4,"fm_r"))) []] (CVar (7,"result")))] [CLocalPat (CPVar (5,"left_size")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (3,"fm_l"))) [],CLocalPat (CPVar (6,"right_size")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (4,"fm_r"))) [],CLocalFunc (CFunc ("FiniteMap","unbox") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (7,"x")] [(CSymbol ("Prelude","success"),CVar (7,"x"))] []]))]]),+  CFunc ("FiniteMap","mkSet") 2 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"key")]) (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","listToFM")) (CVar (0,"le"))) (CListComp (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (2,"x"))) (CSymbol ("Prelude","()"))) [CSPat (CPVar (2,"x")) (CVar (1,"xs"))]))] []]),+  CFunc ("FiniteMap","mkVBalBranch") 5 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")])))))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"key"),CPVar (2,"elt"),CPComb ("FiniteMap","EmptyFM") [],CPVar (3,"fm_r")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM'")) (CVar (0,"le"))) (CVar (3,"fm_r"))) (CVar (1,"key"))) (CVar (2,"elt")))] [],CRule [CPVar (4,"le"),CPVar (5,"key"),CPVar (6,"elt"),CPComb ("FiniteMap","Branch") [CPVar (7,"key_l"),CPVar (8,"elt_l"),CPVar (9,"s_l"),CPVar (10,"fm_ll"),CPVar (11,"fm_lr")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM'")) (CVar (4,"le"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (7,"key_l"))) (CVar (8,"elt_l"))) (CVar (9,"s_l"))) (CVar (10,"fm_ll"))) (CVar (11,"fm_lr")))) (CVar (5,"key"))) (CVar (6,"elt")))] [],CRule [CPVar (12,"le"),CPVar (13,"key"),CPVar (14,"elt"),CPComb ("FiniteMap","Branch") [CPVar (15,"key_l"),CPVar (16,"elt_l"),CPVar (17,"s_l"),CPVar (18,"fm_ll"),CPVar (19,"fm_lr")],CPComb ("FiniteMap","Branch") [CPVar (20,"key_r"),CPVar (21,"elt_r"),CPVar (22,"s_r"),CPVar (23,"fm_rl"),CPVar (24,"fm_rr")]] [(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (27,"size_l")))) (CVar (28,"size_r")),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (20,"key_r"))) (CVar (21,"elt_r"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (12,"le"))) (CVar (13,"key"))) (CVar (14,"elt"))) (CVar (25,"fm_l"))) (CVar (23,"fm_rl")))) (CVar (24,"fm_rr"))),(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CApply (CSymbol ("Prelude","*")) (CSymbol ("FiniteMap","sIZE_RATIO"))) (CVar (28,"size_r")))) (CVar (27,"size_l")),CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBalBranch")) (CVar (15,"key_l"))) (CVar (16,"elt_l"))) (CVar (18,"fm_ll"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (12,"le"))) (CVar (13,"key"))) (CVar (14,"elt"))) (CVar (19,"fm_lr"))) (CVar (26,"fm_r")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkBranch")) (CLit (CIntc 13))) (CVar (13,"key"))) (CVar (14,"elt"))) (CVar (25,"fm_l"))) (CVar (26,"fm_r")))] [CLocalPat (CPVar (25,"fm_l")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (15,"key_l"))) (CVar (16,"elt_l"))) (CVar (17,"s_l"))) (CVar (18,"fm_ll"))) (CVar (19,"fm_lr"))) [],CLocalPat (CPVar (26,"fm_r")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (20,"key_r"))) (CVar (21,"elt_r"))) (CVar (22,"s_r"))) (CVar (23,"fm_rl"))) (CVar (24,"fm_rr"))) [],CLocalPat (CPVar (27,"size_l")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (25,"fm_l"))) [],CLocalPat (CPVar (28,"size_r")) (CApply (CSymbol ("FiniteMap","sizeFM'")) (CVar (26,"fm_r"))) []]]),+  CFunc ("FiniteMap","plusFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")]))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"le1"),CPVar (1,"fm1")],CPComb ("FiniteMap","FM") [CPVar (2,"_"),CPVar (3,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le1"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM'")) (CVar (0,"le1"))) (CVar (1,"fm1"))) (CVar (3,"fm2"))))] []]),+  CFunc ("FiniteMap","plusFM'") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"fm2")] [(CSymbol ("Prelude","success"),CVar (1,"fm2"))] [],CRule [CPVar (2,"_"),CPComb ("FiniteMap","Branch") [CPVar (3,"split_key1"),CPVar (4,"elt1"),CPVar (5,"s1"),CPVar (6,"left1"),CPVar (7,"right1")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (3,"split_key1"))) (CVar (4,"elt1"))) (CVar (5,"s1"))) (CVar (6,"left1"))) (CVar (7,"right1")))] [],CRule [CPVar (8,"le"),CPComb ("FiniteMap","Branch") [CPVar (9,"split_key1"),CPVar (10,"elt1"),CPVar (11,"s1"),CPVar (12,"left1"),CPVar (13,"right1")],CPComb ("FiniteMap","Branch") [CPVar (14,"split_key"),CPVar (15,"elt2"),CPVar (16,"_"),CPVar (17,"left"),CPVar (18,"right")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (8,"le"))) (CVar (14,"split_key"))) (CVar (15,"elt2"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM'")) (CVar (8,"le"))) (CVar (20,"lts"))) (CVar (17,"left")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM'")) (CVar (8,"le"))) (CVar (21,"gts"))) (CVar (18,"right"))))] [CLocalPat (CPVar (19,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (9,"split_key1"))) (CVar (10,"elt1"))) (CVar (11,"s1"))) (CVar (12,"left1"))) (CVar (13,"right1"))) [],CLocalPat (CPVar (20,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) [],CLocalPat (CPVar (21,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (8,"le"))) (CVar (19,"fm1"))) (CVar (14,"split_key"))) []]]),+  CFunc ("FiniteMap","plusFM_C") 3 Public (CFuncType (CFuncType (CTVar (0,"elt")) (CFuncType (CTVar (0,"elt")) (CTVar (0,"elt")))) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")]) (CFuncType (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")]) (CTCons ("FiniteMap","FM") [CTVar (1,"key"),CTVar (0,"elt")])))) (CRules CFlex [CRule [CPVar (0,"combiner"),CPComb ("FiniteMap","FM") [CPVar (1,"le1"),CPVar (2,"fm1")],CPComb ("FiniteMap","FM") [CPVar (3,"_"),CPVar (4,"fm2")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (1,"le1"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM_C'")) (CVar (1,"le1"))) (CVar (0,"combiner"))) (CVar (2,"fm1"))) (CVar (4,"fm2"))))] []]),+  CFunc ("FiniteMap","plusFM_C'") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (2,"fm2")] [(CSymbol ("Prelude","success"),CVar (2,"fm2"))] [],CRule [CPVar (3,"_"),CPVar (4,"_"),CPComb ("FiniteMap","Branch") [CPVar (5,"split_key1"),CPVar (6,"elt1"),CPVar (7,"s1"),CPVar (8,"left1"),CPVar (9,"right1")],CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (5,"split_key1"))) (CVar (6,"elt1"))) (CVar (7,"s1"))) (CVar (8,"left1"))) (CVar (9,"right1")))] [],CRule [CPVar (10,"le"),CPVar (11,"combiner"),CPComb ("FiniteMap","Branch") [CPVar (12,"split_key1"),CPVar (13,"elt1"),CPVar (14,"s1"),CPVar (15,"left1"),CPVar (16,"right1")],CPComb ("FiniteMap","Branch") [CPVar (17,"split_key"),CPVar (18,"elt2"),CPVar (19,"_"),CPVar (20,"left"),CPVar (21,"right")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (10,"le"))) (CVar (17,"split_key"))) (CVar (25,"new_elt"))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (23,"lts"))) (CVar (20,"left")))) (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","plusFM_C'")) (CVar (10,"le"))) (CVar (11,"combiner"))) (CVar (24,"gts"))) (CVar (21,"right"))))] [CLocalPat (CPVar (22,"fm1")) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (12,"split_key1"))) (CVar (13,"elt1"))) (CVar (14,"s1"))) (CVar (15,"left1"))) (CVar (16,"right1"))) [],CLocalPat (CPVar (23,"lts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (24,"gts")) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [],CLocalPat (CPVar (25,"new_elt")) (CCase (CApply (CApply (CApply (CSymbol ("FiniteMap","lookupFM'")) (CVar (10,"le"))) (CVar (22,"fm1"))) (CVar (17,"split_key"))) [CBranch (CPComb ("Prelude","Nothing") []) (CVar (18,"elt2")),CBranch (CPComb ("Prelude","Just") [CPVar (26,"elt1'")]) (CApply (CApply (CVar (11,"combiner")) (CVar (26,"elt1'"))) (CVar (18,"elt2")))]) []]]),+  CFunc ("FiniteMap","sIZE_RATIO") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 5))] []]),+  CFunc ("FiniteMap","setToList") 0 Private (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]) (CTCons ("Prelude","[]") [CTVar (0,"key")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","keysFM"))] []]),+  CFunc ("FiniteMap","sizeFM") 1 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") []]] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("FiniteMap","FM") [CPVar (1,"_"),CPComb ("FiniteMap","Branch") [CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"size"),CPVar (5,"_"),CPVar (6,"_")]]] [(CSymbol ("Prelude","success"),CVar (4,"size"))] []]),+  CFunc ("FiniteMap","sizeFM'") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"size"),CPVar (3,"_"),CPVar (4,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"size"))] []]),+  CFunc ("FiniteMap","splitFM") 2 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")],CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CSymbol ("Prelude","Nothing"))) (CLambda [CPVar (2,"x")] (CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("FiniteMap","delFromFM")) (CVar (0,"g"))) (CVar (1,"v")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"v"))) (CVar (2,"x"))))))) (CApply (CApply (CSymbol ("FiniteMap","lookupFM")) (CVar (0,"g"))) (CVar (1,"v"))))] []]),+  CFunc ("FiniteMap","splitGT") 3 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTVar (0,"key")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"split_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (2,"le"))) (CVar (3,"key"))) (CVar (4,"elt"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"split_key")))) (CVar (7,"fm_r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CVar (7,"fm_r"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitGT")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"split_key")))))] []]),+  CFunc ("FiniteMap","splitLT") 3 Private (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")]) (CFuncType (CTVar (0,"key")) (CTCons ("FiniteMap","FiniteMap") [CTVar (0,"key"),CTVar (1,"elt")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("FiniteMap","EmptyFM") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPVar (2,"le"),CPComb ("FiniteMap","Branch") [CPVar (3,"key"),CPVar (4,"elt"),CPVar (5,"_"),CPVar (6,"fm_l"),CPVar (7,"fm_r")],CPVar (8,"split_key")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (2,"le"))) (CVar (6,"fm_l"))) (CVar (8,"split_key")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"split_key"))) (CVar (3,"key")))) (CVar (6,"fm_l"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","mkVBalBranch")) (CVar (2,"le"))) (CVar (3,"key"))) (CVar (4,"elt"))) (CVar (6,"fm_l"))) (CApply (CApply (CApply (CSymbol ("FiniteMap","splitLT")) (CVar (2,"le"))) (CVar (7,"fm_r"))) (CVar (8,"split_key"))))))] []]),+  CFunc ("FiniteMap","toGT") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"x"),CPVar (2,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","not")) (CApply (CApply (CVar (0,"le")) (CVar (1,"x"))) (CVar (2,"y"))))) (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (1,"x"))) (CVar (2,"y"))))] []]),+  CFunc ("FiniteMap","tree") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"_"),CPVar (1,"fm")]] [(CSymbol ("Prelude","success"),CVar (1,"fm"))] []]),+  CFunc ("FiniteMap","union") 0 Private (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]) (CFuncType (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]) (CTCons ("FiniteMap","FiniteSet") [CTVar (0,"key")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","plusFM"))] []]),+  CFunc ("FiniteMap","unitFM") 3 Public (CFuncType (CTCons ("FiniteMap","LeKey") [CTVar (0,"key")]) (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"elt")) (CTCons ("FiniteMap","FM") [CTVar (0,"key"),CTVar (1,"elt")])))) (CRules CFlex [CRule [CPVar (0,"le"),CPVar (1,"key"),CPVar (2,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"le"))) (CApply (CApply (CSymbol ("FiniteMap","unitFM'")) (CVar (1,"key"))) (CVar (2,"elt"))))] []]),+  CFunc ("FiniteMap","unitFM'") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"elt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (0,"key"))) (CVar (1,"elt"))) (CLit (CIntc 1))) (CSymbol ("FiniteMap","EmptyFM"))) (CSymbol ("FiniteMap","EmptyFM")))] []]),+  CFunc ("FiniteMap","updFM") 3 Public (CFuncType (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (1,"b"))) (CTCons ("FiniteMap","FM") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPComb ("FiniteMap","FM") [CPVar (0,"lt"),CPVar (1,"fm")],CPVar (2,"i"),CPVar (3,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("FiniteMap","FM")) (CVar (0,"lt"))) (CApply (CSymbol ("FiniteMap","upd")) (CVar (1,"fm"))))] [CLocalFunc (CFunc ("FiniteMap","upd") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("FiniteMap","EmptyFM") []] [(CSymbol ("Prelude","success"),CSymbol ("FiniteMap","EmptyFM"))] [],CRule [CPComb ("FiniteMap","Branch") [CPVar (4,"k"),CPVar (5,"x"),CPVar (6,"h"),CPVar (7,"l"),CPVar (8,"r")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"i"))) (CVar (4,"k")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"k"))) (CApply (CVar (3,"f")) (CVar (5,"x")))) (CVar (6,"h"))) (CVar (7,"l"))) (CVar (8,"r"))),(CApply (CApply (CVar (0,"lt")) (CVar (2,"i"))) (CVar (4,"k")),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"k"))) (CVar (5,"x"))) (CVar (6,"h"))) (CApply (CSymbol ("FiniteMap","upd")) (CVar (7,"l")))) (CVar (8,"r"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CApply (CSymbol ("FiniteMap","Branch")) (CVar (4,"k"))) (CVar (5,"x"))) (CVar (6,"h"))) (CVar (7,"l"))) (CApply (CSymbol ("FiniteMap","upd")) (CVar (8,"r"))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/Float.acy view
@@ -0,0 +1,40 @@+CurryProg "Float"+ ["Prelude"]+ []+ [CFunc ("Float","*.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_times"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","+.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_plus"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","-.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_minus"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","/.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_divide"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","<.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_lt"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","<=.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_leq"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float",">.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_gt"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float",">=.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_geq"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","atan") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_atan"))) (CVar (0,"x")))] []]),+  CFunc ("Float","cos") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_cos"))) (CVar (0,"x")))] []]),+  CFunc ("Float","exp") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_exp"))) (CVar (0,"x")))] []]),+  CFunc ("Float","i2f") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_i2f"))) (CVar (0,"x")))] []]),+  CFunc ("Float","log") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_log"))) (CVar (0,"x")))] []]),+  CFunc ("Float","prim_Float_divide") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_divide"),+  CFunc ("Float","prim_Float_geq") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_geq"),+  CFunc ("Float","prim_Float_gt") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_gt"),+  CFunc ("Float","prim_Float_leq") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_leq"),+  CFunc ("Float","prim_Float_lt") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_lt"),+  CFunc ("Float","prim_Float_minus") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_minus"),+  CFunc ("Float","prim_Float_plus") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_plus"),+  CFunc ("Float","prim_Float_times") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_times"),+  CFunc ("Float","prim_atan") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_atan"),+  CFunc ("Float","prim_cos") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_cos"),+  CFunc ("Float","prim_exp") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_exp"),+  CFunc ("Float","prim_i2f") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_i2f"),+  CFunc ("Float","prim_log") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_log"),+  CFunc ("Float","prim_round") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CExternal "prim_round"),+  CFunc ("Float","prim_sin") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_sin"),+  CFunc ("Float","prim_sqrt") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_sqrt"),+  CFunc ("Float","prim_tan") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_tan"),+  CFunc ("Float","prim_truncate") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CExternal "prim_truncate"),+  CFunc ("Float","round") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_round"))) (CVar (0,"x")))] []]),+  CFunc ("Float","sin") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_sin"))) (CVar (0,"x")))] []]),+  CFunc ("Float","sqrt") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_sqrt"))) (CVar (0,"x")))] []]),+  CFunc ("Float","tan") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_tan"))) (CVar (0,"x")))] []]),+  CFunc ("Float","truncate") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_truncate"))) (CVar (0,"x")))] []])]+ [COp ("Float","/.") CInfixlOp 7,COp ("Float","*.") CInfixlOp 7,COp ("Float","-.") CInfixlOp 6,COp ("Float","+.") CInfixlOp 6,COp ("Float",">=.") CInfixOp 4,COp ("Float","<=.") CInfixOp 4,COp ("Float",">.") CInfixOp 4,COp ("Float","<.") CInfixOp 4]
+ src/lib/Curry/Module/.curry/Float.cy view
@@ -0,0 +1,79 @@+Module "Float"+(Just (Exporting (5,14) [(Export (QualIdent Nothing (Ident "*." 0))),(Export (QualIdent Nothing (Ident "/." 0))),(Export (QualIdent Nothing (Ident "+." 0))),(Export (QualIdent Nothing (Ident "-." 0))),(Export (QualIdent Nothing (Ident "<." 0))),(Export (QualIdent Nothing (Ident ">." 0))),(Export (QualIdent Nothing (Ident "<=." 0))),(Export (QualIdent Nothing (Ident ">=." 0))),(Export (QualIdent Nothing (Ident "i2f" 0))),(Export (QualIdent Nothing (Ident "truncate" 0))),(Export (QualIdent Nothing (Ident "round" 0))),(Export (QualIdent Nothing (Ident "sqrt" 0))),(Export (QualIdent Nothing (Ident "log" 0))),(Export (QualIdent Nothing (Ident "exp" 0))),(Export (QualIdent Nothing (Ident "sin" 0))),(Export (QualIdent Nothing (Ident "cos" 0))),(Export (QualIdent Nothing (Ident "tan" 0))),(Export (QualIdent Nothing (Ident "atan" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(InfixDecl (15,1) InfixL 7 [(Ident "*." 0),(Ident "/." 0)])+,(InfixDecl (16,1) InfixL 6 [(Ident "+." 0),(Ident "-." 0)])+,(InfixDecl (17,1) Infix 4 [(Ident "<." 0),(Ident ">." 0),(Ident "<=." 0),(Ident ">=." 0)])+,(TypeSig (25,1) [(Ident "+." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FunctionDecl (26,1) (Ident "+." 0) [(Equation (26,1) (OpLhs (VariablePattern (Ident "x" 2)) (Ident "+." 0) (VariablePattern (Ident "y" 2))) (SimpleRhs (26,10) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_plus" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 2))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 2)))) []))])+,(TypeSig (28,1) [(Ident "prim_Float_plus" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FlatExternalDecl (29,1) [(Ident "prim_Float_plus" 0)])+,(TypeSig (33,1) [(Ident "-." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FunctionDecl (34,1) (Ident "-." 0) [(Equation (34,1) (OpLhs (VariablePattern (Ident "x" 4)) (Ident "-." 0) (VariablePattern (Ident "y" 4))) (SimpleRhs (34,10) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_minus" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 4))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 4)))) []))])+,(TypeSig (36,1) [(Ident "prim_Float_minus" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FlatExternalDecl (37,1) [(Ident "prim_Float_minus" 0)])+,(TypeSig (41,1) [(Ident "*." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FunctionDecl (42,1) (Ident "*." 0) [(Equation (42,1) (OpLhs (VariablePattern (Ident "x" 6)) (Ident "*." 0) (VariablePattern (Ident "y" 6))) (SimpleRhs (42,10) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_times" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 6))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 6)))) []))])+,(TypeSig (44,1) [(Ident "prim_Float_times" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FlatExternalDecl (45,1) [(Ident "prim_Float_times" 0)])+,(TypeSig (49,1) [(Ident "/." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FunctionDecl (50,1) (Ident "/." 0) [(Equation (50,1) (OpLhs (VariablePattern (Ident "x" 8)) (Ident "/." 0) (VariablePattern (Ident "y" 8))) (SimpleRhs (50,10) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_divide" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 8))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 8)))) []))])+,(TypeSig (52,1) [(Ident "prim_Float_divide" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []))))+,(FlatExternalDecl (53,1) [(Ident "prim_Float_divide" 0)])+,(TypeSig (57,1) [(Ident "<." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (58,1) (Ident "<." 0) [(Equation (58,1) (OpLhs (VariablePattern (Ident "x" 10)) (Ident "<." 0) (VariablePattern (Ident "y" 10))) (SimpleRhs (58,10) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_lt" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 10))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 10)))) []))])+,(TypeSig (60,1) [(Ident "prim_Float_lt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (61,1) [(Ident "prim_Float_lt" 0)])+,(TypeSig (65,1) [(Ident ">." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (66,1) (Ident ">." 0) [(Equation (66,1) (OpLhs (VariablePattern (Ident "x" 12)) (Ident ">." 0) (VariablePattern (Ident "y" 12))) (SimpleRhs (66,10) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_gt" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 12))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 12)))) []))])+,(TypeSig (68,1) [(Ident "prim_Float_gt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (69,1) [(Ident "prim_Float_gt" 0)])+,(TypeSig (73,1) [(Ident "<=." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (74,1) (Ident "<=." 0) [(Equation (74,1) (OpLhs (VariablePattern (Ident "x" 14)) (Ident "<=." 0) (VariablePattern (Ident "y" 14))) (SimpleRhs (74,11) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_leq" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 14))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 14)))) []))])+,(TypeSig (76,1) [(Ident "prim_Float_leq" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (77,1) [(Ident "prim_Float_leq" 0)])+,(TypeSig (81,1) [(Ident ">=." 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (82,1) (Ident ">=." 0) [(Equation (82,1) (OpLhs (VariablePattern (Ident "x" 16)) (Ident ">=." 0) (VariablePattern (Ident "y" 16))) (SimpleRhs (82,11) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_Float_geq" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 16))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "y" 16)))) []))])+,(TypeSig (84,1) [(Ident "prim_Float_geq" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (85,1) [(Ident "prim_Float_geq" 0)])+,(TypeSig (90,1) [(Ident "i2f" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (91,1) (Ident "i2f" 0) [(Equation (91,1) (FunLhs (Ident "i2f" 0) [(VariablePattern (Ident "x" 18))]) (SimpleRhs (91,9) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_i2f" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 18)))) []))])+,(TypeSig (93,1) [(Ident "prim_i2f" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (94,1) [(Ident "prim_i2f" 0)])+,(TypeSig (99,1) [(Ident "truncate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (100,1) (Ident "truncate" 0) [(Equation (100,1) (FunLhs (Ident "truncate" 0) [(VariablePattern (Ident "x" 20))]) (SimpleRhs (100,14) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_truncate" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 20)))) []))])+,(TypeSig (102,1) [(Ident "prim_truncate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FlatExternalDecl (103,1) [(Ident "prim_truncate" 0)])+,(TypeSig (110,1) [(Ident "round" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (111,1) (Ident "round" 0) [(Equation (111,1) (FunLhs (Ident "round" 0) [(VariablePattern (Ident "x" 22))]) (SimpleRhs (111,11) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_round" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 22)))) []))])+,(TypeSig (113,1) [(Ident "prim_round" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FlatExternalDecl (114,1) [(Ident "prim_round" 0)])+,(TypeSig (118,1) [(Ident "sqrt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (119,1) (Ident "sqrt" 0) [(Equation (119,1) (FunLhs (Ident "sqrt" 0) [(VariablePattern (Ident "x" 24))]) (SimpleRhs (119,10) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_sqrt" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 24)))) []))])+,(TypeSig (121,1) [(Ident "prim_sqrt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (122,1) [(Ident "prim_sqrt" 0)])+,(TypeSig (126,1) [(Ident "log" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (127,1) (Ident "log" 0) [(Equation (127,1) (FunLhs (Ident "log" 0) [(VariablePattern (Ident "x" 26))]) (SimpleRhs (127,9) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_log" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 26)))) []))])+,(TypeSig (129,1) [(Ident "prim_log" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (130,1) [(Ident "prim_log" 0)])+,(TypeSig (134,1) [(Ident "exp" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (135,1) (Ident "exp" 0) [(Equation (135,1) (FunLhs (Ident "exp" 0) [(VariablePattern (Ident "x" 28))]) (SimpleRhs (135,9) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_exp" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 28)))) []))])+,(TypeSig (137,1) [(Ident "prim_exp" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (138,1) [(Ident "prim_exp" 0)])+,(TypeSig (142,1) [(Ident "sin" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (143,1) (Ident "sin" 0) [(Equation (143,1) (FunLhs (Ident "sin" 0) [(VariablePattern (Ident "x" 30))]) (SimpleRhs (143,9) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_sin" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 30)))) []))])+,(TypeSig (145,1) [(Ident "prim_sin" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (146,1) [(Ident "prim_sin" 0)])+,(TypeSig (150,1) [(Ident "cos" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (151,1) (Ident "cos" 0) [(Equation (151,1) (FunLhs (Ident "cos" 0) [(VariablePattern (Ident "x" 32))]) (SimpleRhs (151,9) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_cos" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 32)))) []))])+,(TypeSig (153,1) [(Ident "prim_cos" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (154,1) [(Ident "prim_cos" 0)])+,(TypeSig (158,1) [(Ident "tan" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (159,1) (Ident "tan" 0) [(Equation (159,1) (FunLhs (Ident "tan" 0) [(VariablePattern (Ident "x" 34))]) (SimpleRhs (159,9) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_tan" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 34)))) []))])+,(TypeSig (161,1) [(Ident "prim_tan" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (162,1) [(Ident "prim_tan" 0)])+,(TypeSig (164,1) [(Ident "atan" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FunctionDecl (165,1) (Ident "atan" 0) [(Equation (165,1) (FunLhs (Ident "atan" 0) [(VariablePattern (Ident "x" 36))]) (SimpleRhs (165,10) (InfixApply (Variable (QualIdent (Just "Float") (Ident "prim_atan" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "x" 36)))) []))])+,(TypeSig (167,1) [(Ident "prim_atan" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Float" 0)) [])))+,(FlatExternalDecl (168,1) [(Ident "prim_atan" 0)])+]
+ src/lib/Curry/Module/.curry/Float.efc view
@@ -0,0 +1,1 @@+Prog "Float" ["Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","+.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_plus")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_plus")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (External "Float.prim_Float_plus"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","-.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_minus")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_minus")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (External "Float.prim_Float_minus"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","*.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_times")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_times")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (External "Float.prim_Float_times"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","/.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_divide")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","prim_Float_divide")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) []))) (External "Float.prim_Float_divide"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","<.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_lt")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_lt")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Float.prim_Float_lt"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float",">.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_gt")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_gt")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Float.prim_Float_gt"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","<=.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_leq")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_leq")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Float.prim_Float_leq"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float",">=.")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Float") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_geq")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","prim_Float_geq")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Float.prim_Float_geq"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","i2f")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_i2f")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_i2f")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_i2f"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Float","truncate")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Float","prim_truncate")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Float","prim_truncate")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (External "Float.prim_truncate"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Float","round")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Float","prim_round")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Float","prim_round")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (External "Float.prim_round"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","sqrt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_sqrt")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_sqrt")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_sqrt"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","log")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_log")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_log")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_log"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","exp")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_exp")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_exp")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_exp"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","sin")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_sin")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_sin")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_sin"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","cos")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_cos")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_cos")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_cos"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","tan")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_tan")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_tan")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_tan"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","atan")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_atan")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") [])),"Float","prim_atan")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Prelude","Float")) [])) (External "Float.prim_atan")] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","*.")) InfixlOp 7,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","/.")) InfixlOp 7,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","+.")) InfixlOp 6,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Float") []))),"Float","-.")) InfixlOp 6,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","<.")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float",">.")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float","<=.")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Float",">=.")) InfixOp 4]
+ src/lib/Curry/Module/.curry/Float.fcy view
@@ -0,0 +1,1 @@+Prog "Float" ["Prelude"] [] [Func ("Float","+.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_plus") [],Var 1],Var 2])),Func ("Float","prim_Float_plus") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (External "Float.prim_Float_plus"),Func ("Float","-.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_minus") [],Var 1],Var 2])),Func ("Float","prim_Float_minus") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (External "Float.prim_Float_minus"),Func ("Float","*.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_times") [],Var 1],Var 2])),Func ("Float","prim_Float_times") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (External "Float.prim_Float_times"),Func ("Float","/.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_divide") [],Var 1],Var 2])),Func ("Float","prim_Float_divide") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (External "Float.prim_Float_divide"),Func ("Float","<.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_lt") [],Var 1],Var 2])),Func ("Float","prim_Float_lt") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (External "Float.prim_Float_lt"),Func ("Float",">.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_gt") [],Var 1],Var 2])),Func ("Float","prim_Float_gt") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (External "Float.prim_Float_gt"),Func ("Float","<=.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_leq") [],Var 1],Var 2])),Func ("Float","prim_Float_leq") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (External "Float.prim_Float_leq"),Func ("Float",">=.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Float","prim_Float_geq") [],Var 1],Var 2])),Func ("Float","prim_Float_geq") 2 Private (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (External "Float.prim_Float_geq"),Func ("Float","i2f") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_i2f") [],Var 1])),Func ("Float","prim_i2f") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Float") [])) (External "Float.prim_i2f"),Func ("Float","truncate") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_truncate") [],Var 1])),Func ("Float","prim_truncate") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Int") [])) (External "Float.prim_truncate"),Func ("Float","round") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_round") [],Var 1])),Func ("Float","prim_round") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Int") [])) (External "Float.prim_round"),Func ("Float","sqrt") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_sqrt") [],Var 1])),Func ("Float","prim_sqrt") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_sqrt"),Func ("Float","log") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_log") [],Var 1])),Func ("Float","prim_log") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_log"),Func ("Float","exp") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_exp") [],Var 1])),Func ("Float","prim_exp") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_exp"),Func ("Float","sin") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_sin") [],Var 1])),Func ("Float","prim_sin") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_sin"),Func ("Float","cos") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_cos") [],Var 1])),Func ("Float","prim_cos") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_cos"),Func ("Float","tan") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_tan") [],Var 1])),Func ("Float","prim_tan") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_tan"),Func ("Float","atan") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Float","prim_atan") [],Var 1])),Func ("Float","prim_atan") 1 Private (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (External "Float.prim_atan")] [Op ("Float","*.") InfixlOp 7,Op ("Float","/.") InfixlOp 7,Op ("Float","+.") InfixlOp 6,Op ("Float","-.") InfixlOp 6,Op ("Float","<.") InfixOp 4,Op ("Float",">.") InfixOp 4,Op ("Float","<=.") InfixOp 4,Op ("Float",">=.") InfixOp 4]
+ src/lib/Curry/Module/.curry/Float.fint view
@@ -0,0 +1,1 @@+Prog "Float" ["Prelude"] [] [Func ("Float","+.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [] (Var 0)),Func ("Float","-.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [] (Var 0)),Func ("Float","*.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [] (Var 0)),Func ("Float","/.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") []))) (Rule [] (Var 0)),Func ("Float","<.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Float",">.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Float","<=.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Float",">=.") 2 Public (FuncType (TCons ("Prelude","Float") []) (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Float","i2f") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","truncate") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Float","round") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Float","sqrt") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","log") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","exp") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","sin") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","cos") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","tan") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0)),Func ("Float","atan") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Prelude","Float") [])) (Rule [] (Var 0))] [Op ("Float","*.") InfixlOp 7,Op ("Float","/.") InfixlOp 7,Op ("Float","+.") InfixlOp 6,Op ("Float","-.") InfixlOp 6,Op ("Float","<.") InfixOp 4,Op ("Float",">.") InfixOp 4,Op ("Float","<=.") InfixOp 4,Op ("Float",">=.") InfixOp 4]
+ src/lib/Curry/Module/.curry/Float.uacy view
@@ -0,0 +1,40 @@+CurryProg "Float"+ ["Prelude"]+ []+ [CFunc ("Float","*.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_times"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","+.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_plus"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","-.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_minus"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","/.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_divide"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","<.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_lt"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","<=.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_leq"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float",">.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_gt"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float",">=.") 2 Public (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_Float_geq"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Float","atan") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_atan"))) (CVar (0,"x")))] []]),+  CFunc ("Float","cos") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_cos"))) (CVar (0,"x")))] []]),+  CFunc ("Float","exp") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_exp"))) (CVar (0,"x")))] []]),+  CFunc ("Float","i2f") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_i2f"))) (CVar (0,"x")))] []]),+  CFunc ("Float","log") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_log"))) (CVar (0,"x")))] []]),+  CFunc ("Float","prim_Float_divide") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_divide"),+  CFunc ("Float","prim_Float_geq") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_geq"),+  CFunc ("Float","prim_Float_gt") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_gt"),+  CFunc ("Float","prim_Float_leq") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_leq"),+  CFunc ("Float","prim_Float_lt") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Bool") []))) (CExternal "prim_Float_lt"),+  CFunc ("Float","prim_Float_minus") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_minus"),+  CFunc ("Float","prim_Float_plus") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_plus"),+  CFunc ("Float","prim_Float_times") 2 Private (CFuncType (CTCons ("Prelude","Float") []) (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") []))) (CExternal "prim_Float_times"),+  CFunc ("Float","prim_atan") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_atan"),+  CFunc ("Float","prim_cos") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_cos"),+  CFunc ("Float","prim_exp") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_exp"),+  CFunc ("Float","prim_i2f") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_i2f"),+  CFunc ("Float","prim_log") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_log"),+  CFunc ("Float","prim_round") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CExternal "prim_round"),+  CFunc ("Float","prim_sin") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_sin"),+  CFunc ("Float","prim_sqrt") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_sqrt"),+  CFunc ("Float","prim_tan") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CExternal "prim_tan"),+  CFunc ("Float","prim_truncate") 1 Private (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CExternal "prim_truncate"),+  CFunc ("Float","round") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_round"))) (CVar (0,"x")))] []]),+  CFunc ("Float","sin") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_sin"))) (CVar (0,"x")))] []]),+  CFunc ("Float","sqrt") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_sqrt"))) (CVar (0,"x")))] []]),+  CFunc ("Float","tan") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Float") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_tan"))) (CVar (0,"x")))] []]),+  CFunc ("Float","truncate") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Float","prim_truncate"))) (CVar (0,"x")))] []])]+ [COp ("Float","/.") CInfixlOp 7,COp ("Float","*.") CInfixlOp 7,COp ("Float","-.") CInfixlOp 6,COp ("Float","+.") CInfixlOp 6,COp ("Float",">=.") CInfixOp 4,COp ("Float","<=.") CInfixOp 4,COp ("Float",">.") CInfixOp 4,COp ("Float","<.") CInfixOp 4]
+ src/lib/Curry/Module/.curry/Global.acy view
@@ -0,0 +1,10 @@+CurryProg "Global"+ ["Prelude"]+ [CType ("Global","Global") Public [(0,"a")] [],+  CType ("Global","GlobalSpec") Public [] [CCons ("Global","Temporary") 0 Public [],CCons ("Global","Persistent") 1 Public [CTCons ("Prelude","String") []]]]+ [CFunc ("Global","global") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Global","GlobalSpec") []) (CTCons ("Global","Global") [CTVar (0,"a")]))) (CExternal "global"),+  CFunc ("Global","prim_readGlobal") 1 Private (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "prim_readGlobal"),+  CFunc ("Global","prim_writeGlobal") 2 Private (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_writeGlobal"),+  CFunc ("Global","readGlobal") 1 Public (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Global","prim_readGlobal"))) (CVar (0,"g")))] []]),+  CFunc ("Global","writeGlobal") 2 Public (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Global","prim_writeGlobal"))) (CVar (0,"g")))) (CVar (1,"v")))] []])]+ []
+ src/lib/Curry/Module/.curry/Global.cy view
@@ -0,0 +1,16 @@+Module "Global"+(Just (Exporting (26,14) [(Export (QualIdent Nothing (Ident "Global" 0))),(ExportTypeAll (QualIdent Nothing (Ident "GlobalSpec" 0))),(Export (QualIdent Nothing (Ident "global" 0))),(Export (QualIdent Nothing (Ident "readGlobal" 0))),(Export (QualIdent Nothing (Ident "writeGlobal" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(DataDecl (31,1) (Ident "Global" 0) [(Ident "a" 0)] [])+,(DataDecl (43,1) (Ident "GlobalSpec" 0) [] [(ConstrDecl (43,19) [] (Ident "Temporary" 0) []),(ConstrDecl (43,32) [] (Ident "Persistent" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])])+,(TypeSig (35,1) [(Ident "global" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "GlobalSpec" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Global" 0)) [(VariableType (Ident "a" 0))]))))+,(FlatExternalDecl (36,1) [(Ident "global" 0)])+,(TypeSig (47,1) [(Ident "readGlobal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Global" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (48,1) (Ident "readGlobal" 0) [(Equation (48,1) (FunLhs (Ident "readGlobal" 0) [(VariablePattern (Ident "g" 2))]) (SimpleRhs (48,16) (InfixApply (Variable (QualIdent (Just "Global") (Ident "prim_readGlobal" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "g" 2)))) []))])+,(TypeSig (50,1) [(Ident "prim_readGlobal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Global" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (51,1) [(Ident "prim_readGlobal" 0)])+,(TypeSig (56,1) [(Ident "writeGlobal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Global" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (57,1) (Ident "writeGlobal" 0) [(Equation (57,1) (FunLhs (Ident "writeGlobal" 0) [(VariablePattern (Ident "g" 4)),(VariablePattern (Ident "v" 4))]) (SimpleRhs (57,19) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Global") (Ident "prim_writeGlobal" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "g" 4))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "v" 4)))) []))])+,(TypeSig (59,1) [(Ident "prim_writeGlobal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Global" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (60,1) [(Ident "prim_writeGlobal" 0)])+]
+ src/lib/Curry/Module/.curry/Global.efc view
@@ -0,0 +1,1 @@+Prog "Global" ["Prelude"] [Type ((Nothing,Nothing,"Global","Global")) Public [0] [],Type ((Nothing,Nothing,"Global","GlobalSpec")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Global","GlobalSpec") []),"Global","Temporary")) 0 Public [],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Global","GlobalSpec") [])),"Global","Persistent")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]] [Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Global","GlobalSpec") []) (TCons (Nothing,Nothing,"Global","Global") [TVar 0]))),"Global","global")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Global","GlobalSpec")) []) (TCons ((Nothing,Nothing,"Global","Global")) [TVar 0]))) (External "Global.global"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Global","readGlobal")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Global","Global")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Global","Global") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Global","prim_readGlobal")) [],Var ((Just (TCons (Nothing,Nothing,"Global","Global") [TVar 0]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Global","prim_readGlobal")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Global","Global")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "Global.prim_readGlobal"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Global","writeGlobal")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Global","Global")) [TVar 0]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Global","Global") [TVar 0]),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Global","prim_writeGlobal")) [],Var ((Just (TCons (Nothing,Nothing,"Global","Global") [TVar 0]),1))],Var ((Just (TVar 0),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Global","prim_writeGlobal")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Global","Global")) [TVar 0]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "Global.prim_writeGlobal")] []
+ src/lib/Curry/Module/.curry/Global.fcy view
@@ -0,0 +1,1 @@+Prog "Global" ["Prelude"] [Type ("Global","Global") Public [0] [],Type ("Global","GlobalSpec") Public [] [Cons ("Global","Temporary") 0 Public [],Cons ("Global","Persistent") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]] [Func ("Global","global") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Global","GlobalSpec") []) (TCons ("Global","Global") [TVar 0]))) (External "Global.global"),Func ("Global","readGlobal") 1 Public (FuncType (TCons ("Global","Global") [TVar 0]) (TCons ("Prelude","IO") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Global","prim_readGlobal") [],Var 1])),Func ("Global","prim_readGlobal") 1 Private (FuncType (TCons ("Global","Global") [TVar 0]) (TCons ("Prelude","IO") [TVar 0])) (External "Global.prim_readGlobal"),Func ("Global","writeGlobal") 2 Public (FuncType (TCons ("Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("Global","prim_writeGlobal") [],Var 1],Var 2])),Func ("Global","prim_writeGlobal") 2 Private (FuncType (TCons ("Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Global.prim_writeGlobal")] []
+ src/lib/Curry/Module/.curry/Global.fint view
@@ -0,0 +1,1 @@+Prog "Global" ["Prelude"] [Type ("Global","Global") Public [0] [],Type ("Global","GlobalSpec") Public [] [Cons ("Global","Temporary") 0 Public [],Cons ("Global","Persistent") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]] [Func ("Global","global") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Global","GlobalSpec") []) (TCons ("Global","Global") [TVar 0]))) (External "Global.global"),Func ("Global","readGlobal") 1 Public (FuncType (TCons ("Global","Global") [TVar 0]) (TCons ("Prelude","IO") [TVar 0])) (Rule [] (Var 0)),Func ("Global","writeGlobal") 2 Public (FuncType (TCons ("Global","Global") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Global.uacy view
@@ -0,0 +1,10 @@+CurryProg "Global"+ ["Prelude"]+ [CType ("Global","Global") Public [(0,"a")] [],+  CType ("Global","GlobalSpec") Public [] [CCons ("Global","Temporary") 0 Public [],CCons ("Global","Persistent") 1 Public [CTCons ("Prelude","String") []]]]+ [CFunc ("Global","global") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Global","GlobalSpec") []) (CTCons ("Global","Global") [CTVar (0,"a")]))) (CExternal "global"),+  CFunc ("Global","prim_readGlobal") 1 Private (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "prim_readGlobal"),+  CFunc ("Global","prim_writeGlobal") 2 Private (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_writeGlobal"),+  CFunc ("Global","readGlobal") 1 Public (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Global","prim_readGlobal"))) (CVar (0,"g")))] []]),+  CFunc ("Global","writeGlobal") 2 Public (CFuncType (CTCons ("Global","Global") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Global","prim_writeGlobal"))) (CVar (0,"g")))) (CVar (1,"v")))] []])]+ []
+ src/lib/Curry/Module/.curry/GraphInductive.acy view
@@ -0,0 +1,97 @@+CurryProg "GraphInductive"+ ["Prelude","FiniteMap","Sort","Maybe"]+ [CType ("GraphInductive","Graph") Public [(0,"nodeLabel"),(1,"edgeLabel")] [CCons ("GraphInductive","Gr") 1 Private [CTCons ("GraphInductive","GraphRep") [CTVar (0,"nodeLabel"),CTVar (1,"edgeLabel")]]],+  CTypeSyn ("GraphInductive","Node") Public [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("GraphInductive","LNode") Public [(0,"a")] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTVar (0,"a")]),+  CTypeSyn ("GraphInductive","UNode") Public [] (CTCons ("GraphInductive","LNode") [CTCons ("Prelude","()") []]),+  CTypeSyn ("GraphInductive","Edge") Public [] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Node") []]),+  CTypeSyn ("GraphInductive","LEdge") Public [(0,"b")] (CTCons ("Prelude","(,,)") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Node") [],CTVar (0,"b")]),+  CTypeSyn ("GraphInductive","UEdge") Public [] (CTCons ("GraphInductive","LEdge") [CTCons ("Prelude","()") []]),+  CTypeSyn ("GraphInductive","Context") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,,,)") [CTCons ("GraphInductive","Adj") [CTVar (1,"b")],CTCons ("GraphInductive","Node") [],CTVar (0,"a"),CTCons ("GraphInductive","Adj") [CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","Adj") Private [(0,"b")] (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"b"),CTCons ("GraphInductive","Node") []]]),+  CTypeSyn ("GraphInductive","MContext") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","Maybe") [CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","Context'") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,,)") [CTCons ("GraphInductive","Adj") [CTVar (1,"b")],CTVar (0,"a"),CTCons ("GraphInductive","Adj") [CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","UContext") Public [] (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []],CTCons ("GraphInductive","Node") [],CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]]),+  CTypeSyn ("GraphInductive","GDecomp") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")],CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","Decomp") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","MContext") [CTVar (0,"a"),CTVar (1,"b")],CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","UDecomp") Public [(0,"g")] (CTCons ("Prelude","(,)") [CTCons ("Prelude","Maybe") [CTCons ("GraphInductive","UContext") []],CTVar (0,"g")]),+  CTypeSyn ("GraphInductive","Path") Public [] (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]),+  CTypeSyn ("GraphInductive","LPath") Public [(0,"a")] (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LNode") [CTVar (0,"a")]]),+  CTypeSyn ("GraphInductive","UPath") Public [] (CTCons ("Prelude","[]") [CTCons ("GraphInductive","UNode") []]),+  CTypeSyn ("GraphInductive","GraphRep") Private [(0,"a"),(1,"b")] (CTCons ("FiniteMap","FM") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Context'") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","UGr") Public [] (CTCons ("GraphInductive","Graph") [CTCons ("Prelude","()") [],CTCons ("Prelude","()") []])]+ [CFunc ("GraphInductive",".:") 0 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CTVar (0,"a")))) (CFuncType (CTVar (2,"c")) (CFuncType (CTVar (3,"d")) (CTVar (1,"b")))))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","."))) (CSymbol ("Prelude",".")))] []]),+  CFunc ("GraphInductive",":&") 2 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"v"),CPVar (2,"l"),CPVar (3,"s")],CPComb ("GraphInductive","Gr") [CPVar (4,"g")]] [(CApply (CApply (CSymbol ("FiniteMap","elemFM")) (CVar (1,"v"))) (CVar (4,"g")),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"v")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (2,"l"))))))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("GraphInductive","Gr")) (CVar (7,"g3")))] [CLocalPat (CPVar (5,"g1")) (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM")) (CVar (4,"g"))) (CVar (1,"v"))) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (0,"p"))) (CVar (2,"l"))) (CVar (3,"s")))) [],CLocalPat (CPVar (6,"g2")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (5,"g1"))) (CVar (0,"p"))) (CApply (CSymbol ("GraphInductive","addSucc")) (CVar (1,"v")))) [],CLocalPat (CPVar (7,"g3")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (6,"g2"))) (CVar (3,"s"))) (CApply (CSymbol ("GraphInductive","addPred")) (CVar (1,"v")))) []]]),+  CFunc ("GraphInductive","addPred") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (0,"a")]],CTVar (2,"c"),CTVar (3,"d")]) (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (0,"a")]],CTVar (2,"c"),CTVar (3,"d")])))) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"l"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l'"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"l"))) (CVar (0,"v")))) (CVar (2,"p")))) (CVar (3,"l'"))) (CVar (4,"s")))] []]),+  CFunc ("GraphInductive","addSucc") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","(,,)") [CTVar (2,"c"),CTVar (3,"d"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (0,"a")]]]) (CTCons ("Prelude","(,,)") [CTVar (2,"c"),CTVar (3,"d"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (0,"a")]]])))) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"l"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l'"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (2,"p"))) (CVar (3,"l'"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"l"))) (CVar (0,"v")))) (CVar (4,"s"))))] []]),+  CFunc ("GraphInductive","buildGr") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]]) (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive",":&"))) (CSymbol ("GraphInductive","empty")))] []]),+  CFunc ("GraphInductive","clearPred") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (2,"c"),CTVar (0,"a")]],CTVar (3,"d"),CTVar (4,"e")]) (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (2,"c"),CTVar (0,"a")]],CTVar (3,"d"),CTVar (4,"e")])))) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"_"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (5,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (5,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (2,"p")))) (CVar (3,"l"))) (CVar (4,"s")))] []]),+  CFunc ("GraphInductive","clearSucc") 3 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","(,,)") [CTVar (2,"c"),CTVar (3,"d"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (4,"e"),CTVar (0,"a")]]]) (CTCons ("Prelude","(,,)") [CTVar (2,"c"),CTVar (3,"d"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (4,"e"),CTVar (0,"a")]]])))) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"_"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (2,"p"))) (CVar (3,"l"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (5,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (5,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (4,"s"))))] []]),+  CFunc ("GraphInductive","context") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CVar (0,"g"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Nothing") [],CPVar (2,"_")]) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))) (CApply (CSymbol ("Prelude","show")) (CVar (1,"v"))))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPVar (3,"c")],CPVar (4,"_")]) (CVar (3,"c"))])] []]),+  CFunc ("GraphInductive","context1") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("GraphInductive","fst4"))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","context4") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("GraphInductive","fth4"))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","deg") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"p")))) (CApply (CSymbol ("Prelude","length")) (CVar (3,"s")))))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","deg'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"p")))) (CApply (CSymbol ("Prelude","length")) (CVar (3,"s"))))] []]),+  CFunc ("GraphInductive","delEdge") 2 Public (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPVar (1,"w")],CPVar (2,"g")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (0,"v"))) (CVar (2,"g"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Nothing") [],CPVar (3,"_")]) (CVar (2,"g")),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPComb ("Prelude","(,,,)") [CPVar (4,"p"),CPVar (5,"v'"),CPVar (6,"l"),CPVar (7,"s")]],CPVar (8,"g'")]) (CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (4,"p"))) (CVar (5,"v'"))) (CVar (6,"l"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (9,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (9,"x0"))) (CVar (1,"w"))))) (CSymbol ("Prelude","snd")))) (CVar (7,"s"))))) (CVar (8,"g'")))])] []]),+  CFunc ("GraphInductive","delEdges") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"es"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive","delEdge"))) (CVar (1,"g"))) (CVar (0,"es")))] []]),+  CFunc ("GraphInductive","delNode") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"v")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","delNodes")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"v"))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("GraphInductive","delNodes") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"g")] [(CSymbol ("Prelude","success"),CVar (0,"g"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"v"),CPVar (2,"vs")],CPVar (3,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive","delNodes")) (CVar (2,"vs"))) (CApply (CSymbol ("Prelude","snd")) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CVar (3,"g")))))] []]),+  CFunc ("GraphInductive","edgeComp") 2 Private (CFuncType (CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (0,"a")]) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"e"),CPVar (1,"e'")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"e"))) (CVar (1,"e'")),CSymbol ("Prelude","EQ")),(CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (2,"v"))) (CVar (5,"x")))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"v"))) (CVar (5,"x")))) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (3,"w"))) (CVar (6,"y")))),CSymbol ("Prelude","LT")),(CSymbol ("Prelude","otherwise"),CSymbol ("Prelude","GT"))] [CLocalPat (CPComb ("Prelude","(,,)") [CPVar (2,"v"),CPVar (3,"w"),CPVar (4,"_")]) (CVar (0,"e")) [],CLocalPat (CPComb ("Prelude","(,,)") [CPVar (5,"x"),CPVar (6,"y"),CPVar (7,"_")]) (CVar (1,"e'")) []]]),+  CFunc ("GraphInductive","edges") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,,)") [CPVar (0,"v"),CPVar (1,"w"),CPVar (2,"_")]] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"v"))) (CVar (1,"w")))))) (CSymbol ("GraphInductive","labEdges")))] []]),+  CFunc ("GraphInductive","emap") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (2,"c"),CTVar (0,"a")]) (CTCons ("GraphInductive","Graph") [CTVar (2,"c"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","gmap")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (1,"p"),CPVar (2,"v"),CPVar (3,"l"),CPVar (4,"s")]] (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CApply (CApply (CSymbol ("GraphInductive","map1")) (CVar (0,"f"))) (CVar (1,"p")))) (CVar (2,"v"))) (CVar (3,"l"))) (CApply (CApply (CSymbol ("GraphInductive","map1")) (CVar (0,"f"))) (CVar (4,"s"))))))] [CLocalFunc (CFunc ("GraphInductive","map1") 1 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (2,"c")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (2,"c")]]))) (CRules CFlex [CRule [CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"v")]] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CVar (1,"g")) (CVar (2,"l")))) (CVar (3,"v")))))] []]))]]),+  CFunc ("GraphInductive","empty") 0 Public (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","Gr")) (CApply (CSymbol ("FiniteMap","emptyFM")) (CSymbol ("Prelude","<"))))] []]),+  CFunc ("GraphInductive","equal") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"g'")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("GraphInductive","slabNodes")) (CVar (0,"g")))) (CApply (CSymbol ("GraphInductive","slabNodes")) (CVar (1,"g'"))))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("GraphInductive","slabEdges")) (CVar (0,"g")))) (CApply (CSymbol ("GraphInductive","slabEdges")) (CVar (1,"g'")))))] []]),+  CFunc ("GraphInductive","flip2") 1 Private (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","(,)") [CTVar (1,"b"),CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"x"),CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"y"))) (CVar (0,"x")))] []]),+  CFunc ("GraphInductive","fst4") 1 Private (CFuncType (CTCons ("Prelude","(,,,)") [CTVar (0,"a"),CTVar (1,"b"),CTVar (2,"c"),CTVar (3,"d")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"x"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("GraphInductive","fth4") 1 Private (CFuncType (CTCons ("Prelude","(,,,)") [CTVar (0,"a"),CTVar (1,"b"),CTVar (2,"c"),CTVar (3,"d")]) (CTVar (3,"d"))) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"x")]] [(CSymbol ("Prelude","success"),CVar (3,"x"))] []]),+  CFunc ("GraphInductive","gelem") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Maybe","isJust")) (CApply (CSymbol ("Prelude","fst")) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (0,"v"))) (CVar (1,"g")))))] []]),+  CFunc ("GraphInductive","gmap") 1 Public (CFuncType (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (2,"c"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (3,"d"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (2,"c"),CTCons ("Prelude","Int") []]]])) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]) (CTCons ("GraphInductive","Graph") [CTVar (3,"d"),CTVar (2,"c")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive","ufold")) (CLambda [CPVar (1,"c")] (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CVar (0,"f")) (CVar (1,"c")))) (CVar (2,"x0")))))) (CSymbol ("GraphInductive","empty")))] []]),+  CFunc ("GraphInductive","indeg") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("Prelude","length"))) (CSymbol ("GraphInductive","context1")))] []]),+  CFunc ("GraphInductive","indeg'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","length")) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","inn") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (3,"w"))) (CVar (1,"v"))) (CVar (2,"l"))))) (CApply (CApply (CSymbol ("GraphInductive","context1")) (CVar (0,"g"))) (CVar (1,"v"))))] []]),+  CFunc ("GraphInductive","inn'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"v"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (4,"l"),CPVar (5,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (5,"w"))) (CVar (1,"v"))) (CVar (4,"l"))))) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","insEdge") 2 Public (CFuncType (CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (0,"a")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,,)") [CPVar (0,"v"),CPVar (1,"w"),CPVar (2,"l")],CPVar (3,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (4,"pr"))) (CVar (0,"v"))) (CVar (6,"la"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (2,"l"))) (CVar (1,"w")))) (CVar (7,"su"))))) (CVar (8,"g'")))] [CLocalPat (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPComb ("Prelude","(,,,)") [CPVar (4,"pr"),CPVar (5,"_"),CPVar (6,"la"),CPVar (7,"su")]],CPVar (8,"g'")]) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (0,"v"))) (CVar (3,"g"))) []]]),+  CFunc ("GraphInductive","insEdges") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (0,"a")]]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"es"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive","insEdge"))) (CVar (1,"g"))) (CVar (0,"es")))] []]),+  CFunc ("GraphInductive","insNode") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPVar (1,"l")]] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CSymbol ("Prelude","[]"))) (CVar (0,"v"))) (CVar (1,"l"))) (CSymbol ("Prelude","[]")))) (CVar (2,"x0"))))] []]),+  CFunc ("GraphInductive","insNodes") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"vs"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive","insNode"))) (CVar (1,"g"))) (CVar (0,"vs")))] []]),+  CFunc ("GraphInductive","isEmpty") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","isEmptyFM")) (CVar (0,"g")))] []]),+  CFunc ("GraphInductive","lab") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Maybe",">>-")) (CApply (CSymbol ("Prelude","fst")) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CVar (0,"g"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","Just"))) (CSymbol ("GraphInductive","lab'"))))] []]),+  CFunc ("GraphInductive","lab'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTVar (1,"b"))) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"l"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"l"))] []]),+  CFunc ("GraphInductive","labEdges") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CLambda [CPComb ("Prelude","(,)") [CPVar (1,"v"),CPComb ("Prelude","(,,)") [CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"s")]]] (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (5,"l"),CPVar (6,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"v"))) (CVar (6,"w"))) (CVar (5,"l"))))) (CVar (4,"s"))))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"g"))))] []]),+  CFunc ("GraphInductive","labNode'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (1,"b")])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"v"),CPVar (2,"l"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"v"))) (CVar (2,"l")))] []]),+  CFunc ("GraphInductive","labNodes") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (1,"v"),CPComb ("Prelude","(,,)") [CPVar (2,"_"),CPVar (3,"l"),CPVar (4,"_")]]] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"v"))) (CVar (3,"l"))))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"g"))))] []]),+  CFunc ("GraphInductive","labUEdges") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"a"),CTVar (1,"b"),CTCons ("Prelude","()") []]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPVar (1,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (0,"v"))) (CVar (1,"w"))) (CSymbol ("Prelude","()")))))] []]),+  CFunc ("GraphInductive","labUNodes") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","()") []]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (0,"v")] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"v"))) (CSymbol ("Prelude","()")))))] []]),+  CFunc ("GraphInductive","lpre") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (1,"b")]]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2")))) (CSymbol ("GraphInductive","context1")))] []]),+  CFunc ("GraphInductive","lpre'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2"))) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","lsuc") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (1,"b")]]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2")))) (CSymbol ("GraphInductive","context4")))] []]),+  CFunc ("GraphInductive","lsuc'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2"))) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","match") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]]]],CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"v"),CPComb ("GraphInductive","Gr") [CPVar (1,"g")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","Nothing"))) (CApply (CSymbol ("GraphInductive","Gr")) (CVar (1,"g"))))) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"g'"),CPComb ("Prelude","(,)") [CPVar (3,"_"),CPComb ("Prelude","(,,)") [CPVar (4,"p"),CPVar (5,"l"),CPVar (6,"s")]]]] (CLetDecl [CLocalPat (CPVar (7,"s'")) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (11,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (11,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (6,"s"))) [],CLocalPat (CPVar (8,"p'")) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (12,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (12,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (4,"p"))) [],CLocalPat (CPVar (9,"g1")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (2,"g'"))) (CVar (7,"s'"))) (CApply (CSymbol ("GraphInductive","clearPred")) (CVar (0,"v")))) [],CLocalPat (CPVar (10,"g2")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (9,"g1"))) (CVar (8,"p'"))) (CApply (CSymbol ("GraphInductive","clearSucc")) (CVar (0,"v")))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (8,"p'"))) (CVar (0,"v"))) (CVar (5,"l"))) (CVar (6,"s"))))) (CApply (CSymbol ("GraphInductive","Gr")) (CVar (10,"g2"))))))) (CApply (CApply (CSymbol ("FiniteMap","splitFM")) (CVar (1,"g"))) (CVar (0,"v"))))] []]),+  CFunc ("GraphInductive","matchAny") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (1,"b"),CTCons ("Prelude","Int") []]]],CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CApply (CSymbol ("FiniteMap","isEmptyFM")) (CVar (0,"g")),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'G'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))),(CSymbol ("Prelude","otherwise"),CCase (CApply (CSymbol ("Prelude","head")) (CApply (CSymbol ("FiniteMap","fmToListPreOrder")) (CVar (0,"g")))) [CBranch (CPComb ("Prelude","(,)") [CPVar (1,"v"),CPVar (2,"_")]) (CCase (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CApply (CSymbol ("GraphInductive","Gr")) (CVar (0,"g")))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPVar (3,"c")],CPVar (4,"g'")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"c"))) (CVar (4,"g'")))])])] []]),+  CFunc ("GraphInductive","mkGraph") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (1,"b")]]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"vs"),CPVar (1,"es")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("GraphInductive","insEdges")) (CVar (1,"es")))) (CApply (CSymbol ("GraphInductive","insNodes")) (CVar (0,"vs")))) (CSymbol ("GraphInductive","empty")))] []]),+  CFunc ("GraphInductive","mkUGraph") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]]) (CTCons ("GraphInductive","Graph") [CTCons ("Prelude","()") [],CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"vs"),CPVar (1,"es")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive","mkGraph")) (CApply (CSymbol ("GraphInductive","labUNodes")) (CVar (0,"vs")))) (CApply (CSymbol ("GraphInductive","labUEdges")) (CVar (1,"es"))))] []]),+  CFunc ("GraphInductive","neighbors") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"p"))) (CVar (3,"s")))))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","neighbors'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (0,"p")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (3,"s"))))] []]),+  CFunc ("GraphInductive","newNodes") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"i"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"n"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"n"))) (CVar (0,"i"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"_"),CPVar (3,"n")]) (CApply (CSymbol ("GraphInductive","nodeRange")) (CVar (1,"g"))) []]]),+  CFunc ("GraphInductive","nmap") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (2,"c")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (2,"c")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","gmap")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (1,"p"),CPVar (2,"v"),CPVar (3,"l"),CPVar (4,"s")]] (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (1,"p"))) (CVar (2,"v"))) (CApply (CVar (0,"f")) (CVar (3,"l")))) (CVar (4,"s")))))] []]),+  CFunc ("GraphInductive","noNodes") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (0,"g")))] []]),+  CFunc ("GraphInductive","node'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"v"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"v"))] []]),+  CFunc ("GraphInductive","nodeComp") 2 Private (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"n'")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CVar (1,"n'")),CSymbol ("Prelude","EQ")),(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("Prelude","fst")) (CVar (0,"n")))) (CApply (CSymbol ("Prelude","fst")) (CVar (1,"n'"))),CSymbol ("Prelude","LT")),(CSymbol ("Prelude","otherwise"),CSymbol ("Prelude","GT"))] []]),+  CFunc ("GraphInductive","nodeRange") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CApply (CSymbol ("FiniteMap","isEmptyFM")) (CVar (0,"g")),CApply (CApply (CSymbol ("Prelude","(,)")) (CLit (CIntc 0))) (CLit (CIntc 0))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CVar (1,"ix")) (CApply (CSymbol ("FiniteMap","minFM")) (CVar (0,"g"))))) (CApply (CVar (1,"ix")) (CApply (CSymbol ("FiniteMap","maxFM")) (CVar (0,"g")))))] [CLocalPat (CPVar (1,"ix")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","fst"))) (CSymbol ("Maybe","fromJust"))) []]]),+  CFunc ("GraphInductive","nodes") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","fst")))) (CSymbol ("GraphInductive","labNodes")))] []]),+  CFunc ("GraphInductive","out") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"v"))) (CVar (3,"w"))) (CVar (2,"l"))))) (CApply (CApply (CSymbol ("GraphInductive","context4")) (CVar (0,"g"))) (CVar (1,"v"))))] []]),+  CFunc ("GraphInductive","out'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"v"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (4,"l"),CPVar (5,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"v"))) (CVar (5,"w"))) (CVar (4,"l"))))) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","outdeg") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("Prelude","length"))) (CSymbol ("GraphInductive","context4")))] []]),+  CFunc ("GraphInductive","outdeg'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","length")) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","pre") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd")))) (CSymbol ("GraphInductive","context1")))] []]),+  CFunc ("GraphInductive","pre'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","showGraph") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","showNode"))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"g")))))] []]),+  CFunc ("GraphInductive","showNode") 1 Private (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","(,,)") [CTVar (1,"b"),CTVar (2,"c"),CTVar (3,"d")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPComb ("Prelude","(,,)") [CPVar (1,"_"),CPVar (2,"l'"),CPVar (3,"s")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"v")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"l'")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '>'))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (3,"s")))))))] []]),+  CFunc ("GraphInductive","slabEdges") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("GraphInductive","sortBy")) (CSymbol ("GraphInductive","edgeComp")))) (CSymbol ("GraphInductive","labEdges")))] []]),+  CFunc ("GraphInductive","slabNodes") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTVar (0,"a")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("GraphInductive","sortBy")) (CSymbol ("GraphInductive","nodeComp")))) (CSymbol ("GraphInductive","labNodes")))] []]),+  CFunc ("GraphInductive","sortBy") 1 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Ordering") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","mergeSort")) (CLambda [CPVar (1,"x"),CPVar (2,"y")] (CLetDecl [CLocalPat (CPVar (3,"pxy")) (CApply (CApply (CVar (0,"p")) (CVar (1,"x"))) (CVar (2,"y"))) []] (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"pxy"))) (CSymbol ("Prelude","EQ")))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"pxy"))) (CSymbol ("Prelude","LT")))))))] []]),+  CFunc ("GraphInductive","suc") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd")))) (CSymbol ("GraphInductive","context4")))] []]),+  CFunc ("GraphInductive","suc'") 1 Public (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","ufold") 3 Public (CFuncType (CFuncType (CTCons ("Prelude","(,,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTCons ("Prelude","Int") [],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CFuncType (CTVar (2,"c")) (CTVar (2,"c")))) (CFuncType (CTVar (2,"c")) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"b"),CTVar (0,"a")]) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"u"),CPVar (2,"g")] [(CApply (CSymbol ("GraphInductive","isEmpty")) (CVar (2,"g")),CVar (1,"u")),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (0,"f")) (CVar (3,"c"))) (CApply (CApply (CApply (CSymbol ("GraphInductive","ufold")) (CVar (0,"f"))) (CVar (1,"u"))) (CVar (4,"g'"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"c"),CPVar (4,"g'")]) (CApply (CSymbol ("GraphInductive","matchAny")) (CVar (2,"g"))) []]]),+  CFunc ("GraphInductive","updAdj") 3 Private (CFuncType (CTCons ("FiniteMap","FM") [CTCons ("Prelude","Int") [],CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]) (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]))) (CTCons ("FiniteMap","FM") [CTCons ("Prelude","Int") [],CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]],CTVar (1,"b"),CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","Int") []]]]])))) (CRules CFlex [CRule [CPVar (0,"g"),CPComb ("Prelude","[]") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"g"))] [],CRule [CPVar (2,"g"),CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (3,"l"),CPVar (4,"v")],CPVar (5,"vs")],CPVar (6,"f")] [(CApply (CApply (CSymbol ("FiniteMap","elemFM")) (CVar (4,"v"))) (CVar (2,"g")),CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CApply (CApply (CApply (CSymbol ("FiniteMap","updFM")) (CVar (2,"g"))) (CVar (4,"v"))) (CApply (CVar (6,"f")) (CVar (3,"l"))))) (CVar (5,"vs"))) (CVar (6,"f"))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))) (CApply (CSymbol ("Prelude","show")) (CVar (4,"v")))))] []])]+ [COp ("GraphInductive",".:") CInfixrOp 5,COp ("GraphInductive",":&") CInfixrOp 5]
+ src/lib/Curry/Module/.curry/GraphInductive.cy view
@@ -0,0 +1,165 @@+Module "GraphInductive"+(Just (Exporting (26,23) [(Export (QualIdent Nothing (Ident "empty" 0))),(Export (QualIdent Nothing (Ident "mkGraph" 0))),(Export (QualIdent Nothing (Ident "buildGr" 0))),(Export (QualIdent Nothing (Ident "mkUGraph" 0))),(Export (QualIdent Nothing (Ident ":&" 0))),(Export (QualIdent Nothing (Ident "insNode" 0))),(Export (QualIdent Nothing (Ident "insNodes" 0))),(Export (QualIdent Nothing (Ident "insEdge" 0))),(Export (QualIdent Nothing (Ident "insEdges" 0))),(Export (QualIdent Nothing (Ident "delNode" 0))),(Export (QualIdent Nothing (Ident "delNodes" 0))),(Export (QualIdent Nothing (Ident "delEdge" 0))),(Export (QualIdent Nothing (Ident "delEdges" 0))),(Export (QualIdent Nothing (Ident "isEmpty" 0))),(Export (QualIdent Nothing (Ident "match" 0))),(Export (QualIdent Nothing (Ident "matchAny" 0))),(Export (QualIdent Nothing (Ident "noNodes" 0))),(Export (QualIdent Nothing (Ident "nodeRange" 0))),(Export (QualIdent Nothing (Ident "context" 0))),(Export (QualIdent Nothing (Ident "lab" 0))),(Export (QualIdent Nothing (Ident "neighbors" 0))),(Export (QualIdent Nothing (Ident "suc" 0))),(Export (QualIdent Nothing (Ident "lsuc" 0))),(Export (QualIdent Nothing (Ident "pre" 0))),(Export (QualIdent Nothing (Ident "lpre" 0))),(Export (QualIdent Nothing (Ident "out" 0))),(Export (QualIdent Nothing (Ident "outdeg" 0))),(Export (QualIdent Nothing (Ident "inn" 0))),(Export (QualIdent Nothing (Ident "indeg" 0))),(Export (QualIdent Nothing (Ident "deg" 0))),(Export (QualIdent Nothing (Ident "gelem" 0))),(Export (QualIdent Nothing (Ident "equal" 0))),(Export (QualIdent Nothing (Ident "node'" 0))),(Export (QualIdent Nothing (Ident "lab'" 0))),(Export (QualIdent Nothing (Ident "labNode'" 0))),(Export (QualIdent Nothing (Ident "neighbors'" 0))),(Export (QualIdent Nothing (Ident "suc'" 0))),(Export (QualIdent Nothing (Ident "lsuc'" 0))),(Export (QualIdent Nothing (Ident "pre'" 0))),(Export (QualIdent Nothing (Ident "lpre'" 0))),(Export (QualIdent Nothing (Ident "out'" 0))),(Export (QualIdent Nothing (Ident "outdeg'" 0))),(Export (QualIdent Nothing (Ident "inn'" 0))),(Export (QualIdent Nothing (Ident "indeg'" 0))),(Export (QualIdent Nothing (Ident "deg'" 0))),(Export (QualIdent Nothing (Ident "labNodes" 0))),(Export (QualIdent Nothing (Ident "labEdges" 0))),(Export (QualIdent Nothing (Ident "nodes" 0))),(Export (QualIdent Nothing (Ident "edges" 0))),(Export (QualIdent Nothing (Ident "newNodes" 0))),(Export (QualIdent Nothing (Ident "ufold" 0))),(Export (QualIdent Nothing (Ident "gmap" 0))),(Export (QualIdent Nothing (Ident "nmap" 0))),(Export (QualIdent Nothing (Ident "emap" 0))),(Export (QualIdent Nothing (Ident "labUEdges" 0))),(Export (QualIdent Nothing (Ident "labUNodes" 0))),(Export (QualIdent Nothing (Ident "showGraph" 0))),(Export (QualIdent Nothing (Ident "Graph" 0))),(Export (QualIdent Nothing (Ident "Node" 0))),(Export (QualIdent Nothing (Ident "LNode" 0))),(Export (QualIdent Nothing (Ident "UNode" 0))),(Export (QualIdent Nothing (Ident "Edge" 0))),(Export (QualIdent Nothing (Ident "LEdge" 0))),(Export (QualIdent Nothing (Ident "UEdge" 0))),(Export (QualIdent Nothing (Ident "Context" 0))),(Export (QualIdent Nothing (Ident "MContext" 0))),(Export (QualIdent Nothing (Ident "Context'" 0))),(Export (QualIdent Nothing (Ident "UContext" 0))),(Export (QualIdent Nothing (Ident "GDecomp" 0))),(Export (QualIdent Nothing (Ident "Decomp" 0))),(Export (QualIdent Nothing (Ident "UDecomp" 0))),(Export (QualIdent Nothing (Ident "Path" 0))),(Export (QualIdent Nothing (Ident "LPath" 0))),(Export (QualIdent Nothing (Ident "UPath" 0))),(Export (QualIdent Nothing (Ident "UGr" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (85,1) "FiniteMap" False Nothing Nothing)+,(ImportDecl (86,1) "Sort" False Nothing (Just (Importing (86,13) [(Import (Ident "mergeSort" 0))])))+,(ImportDecl (87,1) "Maybe" False Nothing Nothing)+,(DataDecl (119,1) (Ident "Graph" 0) [(Ident "nodeLabel" 0),(Ident "edgeLabel" 0)] [(ConstrDecl (119,34) [] (Ident "Gr" 0) [(ConstructorType (QualIdent Nothing (Ident "GraphRep" 0)) [(VariableType (Ident "nodeLabel" 0)),(VariableType (Ident "edgeLabel" 0))])])])+,(TypeDecl (129,1) (Ident "Node" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(TypeDecl (131,1) (Ident "LNode" 0) [(Ident "a" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "a" 0))]))+,(TypeDecl (133,1) (Ident "UNode" 0) [] (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(TupleType [])]))+,(TypeDecl (138,1) (Ident "Edge" 0) [] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])]))+,(TypeDecl (140,1) (Ident "LEdge" 0) [(Ident "b" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "b" 0))]))+,(TypeDecl (142,1) (Ident "UEdge" 0) [] (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(TupleType [])]))+,(TypeDecl (148,1) (Ident "Context" 0) [(Ident "a" 0),(Ident "b" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))]),(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "a" 0)),(ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))])]))+,(TypeDecl (151,1) (Ident "Adj" 0) [(Ident "b" 0)] (ListType (TupleType [(VariableType (Ident "b" 0)),(ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])])))+,(TypeDecl (155,1) (Ident "MContext" 0) [(Ident "a" 0),(Ident "b" 0)] (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])]))+,(TypeDecl (157,1) (Ident "Context'" 0) [(Ident "a" 0),(Ident "b" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))]),(VariableType (Ident "a" 0)),(ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))])]))+,(TypeDecl (159,1) (Ident "UContext" 0) [] (TupleType [(ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])),(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []))]))+,(TypeDecl (185,1) (Ident "GDecomp" 0) [(Ident "a" 0),(Ident "b" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]),(ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])]))+,(TypeDecl (188,1) (Ident "Decomp" 0) [(Ident "a" 0),(Ident "b" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "MContext" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]),(ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])]))+,(TypeDecl (191,1) (Ident "UDecomp" 0) [(Ident "g" 0)] (TupleType [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "UContext" 0)) [])]),(VariableType (Ident "g" 0))]))+,(TypeDecl (464,1) (Ident "Path" 0) [] (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])))+,(TypeDecl (466,1) (Ident "LPath" 0) [(Ident "a" 0)] (ListType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "a" 0))])))+,(TypeDecl (468,1) (Ident "UPath" 0) [] (ListType (ConstructorType (QualIdent Nothing (Ident "UNode" 0)) [])))+,(TypeDecl (470,1) (Ident "GraphRep" 0) [(Ident "a" 0),(Ident "b" 0)] (ConstructorType (QualIdent Nothing (Ident "FM" 0)) [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Context'" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])]))+,(TypeDecl (473,1) (Ident "UGr" 0) [] (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(TupleType []),(TupleType [])]))+,(InfixDecl (89,1) InfixR 5 [(Ident ".:" 0)])+,(InfixDecl (96,1) InfixR 5 [(Ident ":&" 0)])+,(TypeSig (108,1) [(Ident ":&" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "nl" 0)),(VariableType (Ident "el" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "nl" 0)),(VariableType (Ident "el" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "nl" 0)),(VariableType (Ident "el" 0))]))))+,(FunctionDecl (109,1) (Ident ":&" 0) [(Equation (109,1) (OpLhs (TuplePattern [(VariablePattern (Ident "p" 2)),(VariablePattern (Ident "v" 2)),(VariablePattern (Ident "l" 2)),(VariablePattern (Ident "s" 2))]) (Ident ":&" 0) (ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 2))]))) (GuardedRhs [(CondExpr (110,3) (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "elemFM" 0))) (Variable (QualIdent Nothing (Ident "v" 2)))) (Variable (QualIdent Nothing (Ident "g" 2)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "Node Exception, Node: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "v" 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ": ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "l" 2)))))))))),(CondExpr (111,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Constructor (QualIdent (Just "GraphInductive") (Ident "Gr" 0))) (Variable (QualIdent Nothing (Ident "g3" 3)))))] [(PatternDecl (112,13) (VariablePattern (Ident "g1" 3)) (SimpleRhs (112,18) (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "addToFM" 0))) (Variable (QualIdent Nothing (Ident "g" 2)))) (Variable (QualIdent Nothing (Ident "v" 2)))) (Tuple [(Variable (QualIdent Nothing (Ident "p" 2))),(Variable (QualIdent Nothing (Ident "l" 2))),(Variable (QualIdent Nothing (Ident "s" 2)))])) [])),(PatternDecl (113,13) (VariablePattern (Ident "g2" 3)) (SimpleRhs (113,18) (Apply (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "updAdj" 0))) (Variable (QualIdent Nothing (Ident "g1" 3)))) (Variable (QualIdent Nothing (Ident "p" 2)))) (Paren (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "addSucc" 0))) (Variable (QualIdent Nothing (Ident "v" 2)))))) [])),(PatternDecl (114,13) (VariablePattern (Ident "g3" 3)) (SimpleRhs (114,18) (Apply (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "updAdj" 0))) (Variable (QualIdent Nothing (Ident "g2" 3)))) (Variable (QualIdent Nothing (Ident "s" 2)))) (Paren (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "addPred" 0))) (Variable (QualIdent Nothing (Ident "v" 2)))))) []))]))])+,(TypeSig (175,1) [(Ident "matchAny" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "GDecomp" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])))+,(FunctionDecl (176,1) (Ident "matchAny" 0) [(Equation (176,1) (FunLhs (Ident "matchAny" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 7))]))]) (GuardedRhs [(CondExpr (177,3) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM" 0))) (Variable (QualIdent Nothing (Ident "g" 7)))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Match Exception, Empty Graph")))),(CondExpr (178,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Case (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "fmToListPreOrder" 0))) (Variable (QualIdent Nothing (Ident "g" 7)))))) [(Alt (179,19) (TuplePattern [(VariablePattern (Ident "v" 9)),(VariablePattern (Ident "_" 10))]) (SimpleRhs (179,28) (Case (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 9)))) (Paren (Apply (Constructor (QualIdent (Just "GraphInductive") (Ident "Gr" 0))) (Variable (QualIdent Nothing (Ident "g" 7)))))) [(Alt (180,29) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "c" 12))]),(VariablePattern (Ident "g'" 12))]) (SimpleRhs (180,44) (Tuple [(Variable (QualIdent Nothing (Ident "c" 12))),(Variable (QualIdent Nothing (Ident "g'" 12)))]) []))]) []))]))] []))])+,(TypeSig (203,1) [(Ident "empty" 0)] (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]))+,(FunctionDecl (204,1) (Ident "empty" 0) [(Equation (204,1) (FunLhs (Ident "empty" 0) []) (SimpleRhs (204,9) (Apply (Constructor (QualIdent (Just "GraphInductive") (Ident "Gr" 0))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "emptyFM" 0))) (Variable (QualIdent (Just "Prelude") (Ident "<" 0)))))) []))])+,(TypeSig (207,1) [(Ident "mkGraph" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "a" 0))])) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (208,1) (Ident "mkGraph" 0) [(Equation (208,1) (FunLhs (Ident "mkGraph" 0) [(VariablePattern (Ident "vs" 16)),(VariablePattern (Ident "es" 16))]) (SimpleRhs (208,18) (Apply (Paren (InfixApply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "insEdges" 0))) (Variable (QualIdent Nothing (Ident "es" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "insNodes" 0))) (Variable (QualIdent Nothing (Ident "vs" 16)))))) (Variable (QualIdent (Just "GraphInductive") (Ident "empty" 0)))) []))])+,(TypeSig (211,1) [(Ident "buildGr" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])))+,(FunctionDecl (212,1) (Ident "buildGr" 0) [(Equation (212,1) (FunLhs (Ident "buildGr" 0) []) (SimpleRhs (212,11) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident ":&" 0)))) (Variable (QualIdent (Just "GraphInductive") (Ident "empty" 0)))) []))])+,(TypeSig (215,1) [(Ident "mkUGraph" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Edge" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(TupleType []),(TupleType [])]))))+,(FunctionDecl (216,1) (Ident "mkUGraph" 0) [(Equation (216,1) (FunLhs (Ident "mkUGraph" 0) [(VariablePattern (Ident "vs" 20)),(VariablePattern (Ident "es" 20))]) (SimpleRhs (216,18) (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "mkGraph" 0))) (Paren (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "labUNodes" 0))) (Variable (QualIdent Nothing (Ident "vs" 20)))))) (Paren (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "labUEdges" 0))) (Variable (QualIdent Nothing (Ident "es" 20)))))) []))])+,(TypeSig (224,1) [(Ident "insNode" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (225,1) (Ident "insNode" 0) [(Equation (225,1) (FunLhs (Ident "insNode" 0) [(TuplePattern [(VariablePattern (Ident "v" 22)),(VariablePattern (Ident "l" 22))])]) (SimpleRhs (225,17) (LeftSection (Tuple [(List []),(Variable (QualIdent Nothing (Ident "v" 22))),(Variable (QualIdent Nothing (Ident "l" 22))),(List [])]) (InfixOp (QualIdent (Just "GraphInductive") (Ident ":&" 0)))) []))])+,(TypeSig (228,1) [(Ident "insEdge" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (229,1) (Ident "insEdge" 0) [(Equation (229,1) (FunLhs (Ident "insEdge" 0) [(TuplePattern [(VariablePattern (Ident "v" 24)),(VariablePattern (Ident "w" 24)),(VariablePattern (Ident "l" 24))]),(VariablePattern (Ident "g" 24))]) (SimpleRhs (229,21) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "pr" 25))),(Variable (QualIdent Nothing (Ident "v" 24))),(Variable (QualIdent Nothing (Ident "la" 25))),(InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "l" 24))),(Variable (QualIdent Nothing (Ident "w" 24)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "su" 25))))]) (InfixOp (QualIdent (Just "GraphInductive") (Ident ":&" 0))) (Variable (QualIdent Nothing (Ident "g'" 25)))) [(PatternDecl (230,27) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(TuplePattern [(VariablePattern (Ident "pr" 25)),(VariablePattern (Ident "_" 26)),(VariablePattern (Ident "la" 25)),(VariablePattern (Ident "su" 25))])]),(VariablePattern (Ident "g'" 25))]) (SimpleRhs (230,52) (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 24)))) (Variable (QualIdent Nothing (Ident "g" 24)))) []))]))])+,(TypeSig (233,1) [(Ident "delNode" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (234,1) (Ident "delNode" 0) [(Equation (234,1) (FunLhs (Ident "delNode" 0) [(VariablePattern (Ident "v" 28))]) (SimpleRhs (234,13) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "delNodes" 0))) (List [(Variable (QualIdent Nothing (Ident "v" 28)))])) []))])+,(TypeSig (237,1) [(Ident "delEdge" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Edge" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (238,1) (Ident "delEdge" 0) [(Equation (238,1) (FunLhs (Ident "delEdge" 0) [(TuplePattern [(VariablePattern (Ident "v" 30)),(VariablePattern (Ident "w" 30))]),(VariablePattern (Ident "g" 30))]) (SimpleRhs (238,19) (Case (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 30)))) (Variable (QualIdent Nothing (Ident "g" 30)))) [(Alt (239,19) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []),(VariablePattern (Ident "_" 33))]) (SimpleRhs (239,41) (Variable (QualIdent Nothing (Ident "g" 30))) [])),(Alt (240,19) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(TuplePattern [(VariablePattern (Ident "p" 35)),(VariablePattern (Ident "v'" 35)),(VariablePattern (Ident "l" 35)),(VariablePattern (Ident "s" 35))])]),(VariablePattern (Ident "g'" 35))]) (SimpleRhs (240,43) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "p" 35))),(Variable (QualIdent Nothing (Ident "v'" 35))),(Variable (QualIdent Nothing (Ident "l" 35))),(Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "w" 30)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))))) (Variable (QualIdent Nothing (Ident "s" 35))))]) (InfixOp (QualIdent (Just "GraphInductive") (Ident ":&" 0))) (Variable (QualIdent Nothing (Ident "g'" 35)))) []))]) []))])+,(TypeSig (243,1) [(Ident "insNodes" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "a" 0))])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (244,1) (Ident "insNodes" 0) [(Equation (244,1) (FunLhs (Ident "insNodes" 0) [(VariablePattern (Ident "vs" 37)),(VariablePattern (Ident "g" 37))]) (SimpleRhs (244,17) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "insNode" 0)))) (Variable (QualIdent Nothing (Ident "g" 37)))) (Variable (QualIdent Nothing (Ident "vs" 37)))) []))])+,(TypeSig (247,1) [(Ident "insEdges" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (248,1) (Ident "insEdges" 0) [(Equation (248,1) (FunLhs (Ident "insEdges" 0) [(VariablePattern (Ident "es" 39)),(VariablePattern (Ident "g" 39))]) (SimpleRhs (248,17) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "insEdge" 0)))) (Variable (QualIdent Nothing (Ident "g" 39)))) (Variable (QualIdent Nothing (Ident "es" 39)))) []))])+,(TypeSig (251,1) [(Ident "delNodes" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (252,1) (Ident "delNodes" 0) [(Equation (252,1) (FunLhs (Ident "delNodes" 0) [(ListPattern []),(VariablePattern (Ident "g" 41))]) (SimpleRhs (252,21) (Variable (QualIdent Nothing (Ident "g" 41))) [])),(Equation (253,1) (FunLhs (Ident "delNodes" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "v" 43)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "vs" 43)))),(VariablePattern (Ident "g" 43))]) (SimpleRhs (253,21) (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "delNodes" 0))) (Variable (QualIdent Nothing (Ident "vs" 43)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 43)))) (Variable (QualIdent Nothing (Ident "g" 43)))))))) []))])+,(TypeSig (256,1) [(Ident "delEdges" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Edge" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (257,1) (Ident "delEdges" 0) [(Equation (257,1) (FunLhs (Ident "delEdges" 0) [(VariablePattern (Ident "es" 45)),(VariablePattern (Ident "g" 45))]) (SimpleRhs (257,17) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "delEdge" 0)))) (Variable (QualIdent Nothing (Ident "g" 45)))) (Variable (QualIdent Nothing (Ident "es" 45)))) []))])+,(TypeSig (265,1) [(Ident "isEmpty" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (266,1) (Ident "isEmpty" 0) [(Equation (266,1) (FunLhs (Ident "isEmpty" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 47))]))]) (SimpleRhs (266,19) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM" 0))) (Variable (QualIdent Nothing (Ident "g" 47)))) []))])+,(TypeSig (270,1) [(Ident "match" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Decomp" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (271,1) (Ident "match" 0) [(Equation (271,1) (FunLhs (Ident "match" 0) [(VariablePattern (Ident "v" 49)),(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 49))]))]) (SimpleRhs (272,3) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Tuple [(Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))),(Apply (Constructor (QualIdent (Just "GraphInductive") (Ident "Gr" 0))) (Variable (QualIdent Nothing (Ident "g" 49))))])) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "g'" 51)),(TuplePattern [(VariablePattern (Ident "_" 52)),(TuplePattern [(VariablePattern (Ident "p" 51)),(VariablePattern (Ident "l" 51)),(VariablePattern (Ident "s" 51))])])])] (Let [(PatternDecl (275,18) (VariablePattern (Ident "s'" 53)) (SimpleRhs (275,25) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "v" 49)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))))) (Variable (QualIdent Nothing (Ident "s" 51)))) [])),(PatternDecl (276,18) (VariablePattern (Ident "p'" 53)) (SimpleRhs (276,25) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "v" 49)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))))) (Variable (QualIdent Nothing (Ident "p" 51)))) [])),(PatternDecl (277,18) (VariablePattern (Ident "g1" 53)) (SimpleRhs (277,25) (Apply (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "updAdj" 0))) (Variable (QualIdent Nothing (Ident "g'" 51)))) (Variable (QualIdent Nothing (Ident "s'" 53)))) (Paren (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "clearPred" 0))) (Variable (QualIdent Nothing (Ident "v" 49)))))) [])),(PatternDecl (278,18) (VariablePattern (Ident "g2" 53)) (SimpleRhs (278,25) (Apply (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "updAdj" 0))) (Variable (QualIdent Nothing (Ident "g1" 53)))) (Variable (QualIdent Nothing (Ident "p'" 53)))) (Paren (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "clearSucc" 0))) (Variable (QualIdent Nothing (Ident "v" 49)))))) []))] (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "p'" 53))),(Variable (QualIdent Nothing (Ident "v" 49))),(Variable (QualIdent Nothing (Ident "l" 51))),(Variable (QualIdent Nothing (Ident "s" 51)))])),(Apply (Constructor (QualIdent (Just "GraphInductive") (Ident "Gr" 0))) (Variable (QualIdent Nothing (Ident "g2" 53))))]))))) (Paren (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "splitFM" 0))) (Variable (QualIdent Nothing (Ident "g" 49)))) (Variable (QualIdent Nothing (Ident "v" 49)))))) []))])+,(TypeSig (285,1) [(Ident "noNodes" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (286,1) (Ident "noNodes" 0) [(Equation (286,1) (FunLhs (Ident "noNodes" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 58))]))]) (SimpleRhs (286,20) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "sizeFM" 0))) (Variable (QualIdent Nothing (Ident "g" 58)))) []))])+,(TypeSig (289,1) [(Ident "nodeRange" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])])))+,(FunctionDecl (290,1) (Ident "nodeRange" 0) [(Equation (290,1) (FunLhs (Ident "nodeRange" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 60))]))]) (GuardedRhs [(CondExpr (290,18) (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "isEmptyFM" 0))) (Variable (QualIdent Nothing (Ident "g" 60)))) (Tuple [(Literal (Int (Ident "_" 63) 0)),(Literal (Int (Ident "_" 64) 0))])),(CondExpr (291,18) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Tuple [(Apply (Variable (QualIdent Nothing (Ident "ix" 61))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "minFM" 0))) (Variable (QualIdent Nothing (Ident "g" 60)))))),(Apply (Variable (QualIdent Nothing (Ident "ix" 61))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "maxFM" 0))) (Variable (QualIdent Nothing (Ident "g" 60))))))]))] [(PatternDecl (291,66) (VariablePattern (Ident "ix" 61)) (SimpleRhs (291,71) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Maybe") (Ident "fromJust" 0)))) []))]))])+,(TypeSig (297,1) [(Ident "context" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (298,1) (Ident "context" 0) [(Equation (298,1) (FunLhs (Ident "context" 0) [(VariablePattern (Ident "g" 65)),(VariablePattern (Ident "v" 65))]) (SimpleRhs (298,15) (Case (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 65)))) (Variable (QualIdent Nothing (Ident "g" 65)))) [(Alt (299,17) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []),(VariablePattern (Ident "_" 68))]) (SimpleRhs (299,32) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "Match Exception, Node: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "v" 65))))))) [])),(Alt (300,17) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "c" 70))]),(VariablePattern (Ident "_" 71))]) (SimpleRhs (300,32) (Variable (QualIdent Nothing (Ident "c" 70))) []))]) []))])+,(TypeSig (303,1) [(Ident "lab" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (304,1) (Ident "lab" 0) [(Equation (304,1) (FunLhs (Ident "lab" 0) [(VariablePattern (Ident "g" 73)),(VariablePattern (Ident "v" 73))]) (SimpleRhs (304,11) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 73)))) (Variable (QualIdent Nothing (Ident "g" 73)))))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (InfixApply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "lab'" 0))))) []))])+,(TypeSig (307,1) [(Ident "neighbors" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])))))+,(FunctionDecl (308,1) (Ident "neighbors" 0) [(Equation (308,1) (FunLhs (Ident "neighbors" 0) []) (SimpleRhs (308,13) (InfixApply (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "p" 77)),(VariablePattern (Ident "_" 78)),(VariablePattern (Ident "_" 79)),(VariablePattern (Ident "s" 77))])] (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 77))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "s" 77)))))))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context" 0)))) []))])+,(TypeSig (311,1) [(Ident "suc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])))))+,(FunctionDecl (312,1) (Ident "suc" 0) [(Equation (312,1) (FunLhs (Ident "suc" 0) []) (SimpleRhs (312,7) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context4" 0)))) []))])+,(TypeSig (315,1) [(Ident "pre" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])))))+,(FunctionDecl (316,1) (Ident "pre" 0) [(Equation (316,1) (FunLhs (Ident "pre" 0) []) (SimpleRhs (316,7) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context1" 0)))) []))])+,(TypeSig (319,1) [(Ident "lsuc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "b" 0))])))))+,(FunctionDecl (320,1) (Ident "lsuc" 0) [(Equation (320,1) (FunLhs (Ident "lsuc" 0) []) (SimpleRhs (320,8) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "flip2" 0)))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context4" 0)))) []))])+,(TypeSig (323,1) [(Ident "lpre" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "b" 0))])))))+,(FunctionDecl (324,1) (Ident "lpre" 0) [(Equation (324,1) (FunLhs (Ident "lpre" 0) []) (SimpleRhs (324,8) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "flip2" 0)))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context1" 0)))) []))])+,(TypeSig (327,1) [(Ident "out" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))])))))+,(FunctionDecl (328,1) (Ident "out" 0) [(Equation (328,1) (FunLhs (Ident "out" 0) [(VariablePattern (Ident "g" 88)),(VariablePattern (Ident "v" 88))]) (SimpleRhs (328,11) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "l" 90)),(VariablePattern (Ident "w" 90))])] (Tuple [(Variable (QualIdent Nothing (Ident "v" 88))),(Variable (QualIdent Nothing (Ident "w" 90))),(Variable (QualIdent Nothing (Ident "l" 90)))])))) (Paren (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "context4" 0))) (Variable (QualIdent Nothing (Ident "g" 88)))) (Variable (QualIdent Nothing (Ident "v" 88)))))) []))])+,(TypeSig (331,1) [(Ident "inn" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))])))))+,(FunctionDecl (332,1) (Ident "inn" 0) [(Equation (332,1) (FunLhs (Ident "inn" 0) [(VariablePattern (Ident "g" 91)),(VariablePattern (Ident "v" 91))]) (SimpleRhs (332,11) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "l" 93)),(VariablePattern (Ident "w" 93))])] (Tuple [(Variable (QualIdent Nothing (Ident "w" 93))),(Variable (QualIdent Nothing (Ident "v" 91))),(Variable (QualIdent Nothing (Ident "l" 93)))])))) (Paren (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "context1" 0))) (Variable (QualIdent Nothing (Ident "g" 91)))) (Variable (QualIdent Nothing (Ident "v" 91)))))) []))])+,(TypeSig (335,1) [(Ident "outdeg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (336,1) (Ident "outdeg" 0) [(Equation (336,1) (FunLhs (Ident "outdeg" 0) []) (SimpleRhs (336,10) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context4" 0)))) []))])+,(TypeSig (339,1) [(Ident "indeg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (340,1) (Ident "indeg" 0) [(Equation (340,1) (FunLhs (Ident "indeg" 0) []) (SimpleRhs (340,10) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context1" 0)))) []))])+,(TypeSig (343,1) [(Ident "deg" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (344,1) (Ident "deg" 0) [(Equation (344,1) (FunLhs (Ident "deg" 0) []) (SimpleRhs (344,7) (InfixApply (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "p" 100)),(VariablePattern (Ident "_" 101)),(VariablePattern (Ident "_" 102)),(VariablePattern (Ident "s" 100))])] (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "p" 100)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 100))))))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context" 0)))) []))])+,(TypeSig (347,1) [(Ident "gelem" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (348,1) (Ident "gelem" 0) [(Equation (348,1) (FunLhs (Ident "gelem" 0) [(VariablePattern (Ident "v" 103)),(VariablePattern (Ident "g" 103))]) (SimpleRhs (348,13) (Apply (Variable (QualIdent (Just "Maybe") (Ident "isJust" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "match" 0))) (Variable (QualIdent Nothing (Ident "v" 103)))) (Variable (QualIdent Nothing (Ident "g" 103)))))))) []))])+,(TypeSig (352,1) [(Ident "equal" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (353,1) (Ident "equal" 0) [(Equation (353,1) (FunLhs (Ident "equal" 0) [(VariablePattern (Ident "g" 105)),(VariablePattern (Ident "g'" 105))]) (SimpleRhs (353,14) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "slabNodes" 0))) (Variable (QualIdent Nothing (Ident "g" 105)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "slabNodes" 0))) (Variable (QualIdent Nothing (Ident "g'" 105))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "slabEdges" 0))) (Variable (QualIdent Nothing (Ident "g" 105)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "slabEdges" 0))) (Variable (QualIdent Nothing (Ident "g'" 105)))))) []))])+,(TypeSig (356,1) [(Ident "nodeComp" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (357,1) (Ident "nodeComp" 0) [(Equation (357,1) (FunLhs (Ident "nodeComp" 0) [(VariablePattern (Ident "n" 107)),(VariablePattern (Ident "n'" 107))]) (GuardedRhs [(CondExpr (357,15) (InfixApply (Variable (QualIdent Nothing (Ident "n" 107))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "n'" 107)))) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0)))),(CondExpr (358,15) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "n" 107)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "n'" 107))))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0)))),(CondExpr (359,15) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))))] []))])+,(TypeSig (362,1) [(Ident "slabNodes" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (363,1) (Ident "slabNodes" 0) [(Equation (363,1) (FunLhs (Ident "slabNodes" 0) []) (SimpleRhs (363,13) (InfixApply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "sortBy" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "nodeComp" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "labNodes" 0)))) []))])+,(TypeSig (366,1) [(Ident "edgeComp" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (367,1) (Ident "edgeComp" 0) [(Equation (367,1) (FunLhs (Ident "edgeComp" 0) [(VariablePattern (Ident "e" 111)),(VariablePattern (Ident "e'" 111))]) (GuardedRhs [(CondExpr (367,15) (InfixApply (Variable (QualIdent Nothing (Ident "e" 111))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "e'" 111)))) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0)))),(CondExpr (368,15) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "v" 112))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "x" 112)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "v" 112))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "x" 112)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "w" 112))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "y" 112))))))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0)))),(CondExpr (369,15) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))))] [(PatternDecl (372,5) (TuplePattern [(VariablePattern (Ident "v" 112)),(VariablePattern (Ident "w" 112)),(VariablePattern (Ident "_" 113))]) (SimpleRhs (372,15) (Variable (QualIdent Nothing (Ident "e" 111))) [])),(PatternDecl (373,5) (TuplePattern [(VariablePattern (Ident "x" 112)),(VariablePattern (Ident "y" 112)),(VariablePattern (Ident "_" 114))]) (SimpleRhs (373,15) (Variable (QualIdent Nothing (Ident "e'" 111))) []))]))])+,(TypeSig (376,1) [(Ident "slabEdges" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (377,1) (Ident "slabEdges" 0) [(Equation (377,1) (FunLhs (Ident "slabEdges" 0) []) (SimpleRhs (377,13) (InfixApply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "sortBy" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "edgeComp" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "labEdges" 0)))) []))])+,(TypeSig (384,1) [(Ident "node'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])))+,(FunctionDecl (385,1) (Ident "node'" 0) [(Equation (385,1) (FunLhs (Ident "node'" 0) [(TuplePattern [(VariablePattern (Ident "_" 120)),(VariablePattern (Ident "v" 119)),(VariablePattern (Ident "_" 121)),(VariablePattern (Ident "_" 122))])]) (SimpleRhs (385,19) (Variable (QualIdent Nothing (Ident "v" 119))) []))])+,(TypeSig (388,1) [(Ident "lab'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "_" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (389,1) (Ident "lab'" 0) [(Equation (389,1) (FunLhs (Ident "lab'" 0) [(TuplePattern [(VariablePattern (Ident "_" 125)),(VariablePattern (Ident "_" 126)),(VariablePattern (Ident "l" 124)),(VariablePattern (Ident "_" 127))])]) (SimpleRhs (389,18) (Variable (QualIdent Nothing (Ident "l" 124))) []))])+,(TypeSig (392,1) [(Ident "labNode'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "LNode" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (393,1) (Ident "labNode'" 0) [(Equation (393,1) (FunLhs (Ident "labNode'" 0) [(TuplePattern [(VariablePattern (Ident "_" 130)),(VariablePattern (Ident "v" 129)),(VariablePattern (Ident "l" 129)),(VariablePattern (Ident "_" 131))])]) (SimpleRhs (393,22) (Tuple [(Variable (QualIdent Nothing (Ident "v" 129))),(Variable (QualIdent Nothing (Ident "l" 129)))]) []))])+,(TypeSig (396,1) [(Ident "neighbors'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []))))+,(FunctionDecl (397,1) (Ident "neighbors'" 0) [(Equation (397,1) (FunLhs (Ident "neighbors'" 0) [(TuplePattern [(VariablePattern (Ident "p" 133)),(VariablePattern (Ident "_" 134)),(VariablePattern (Ident "_" 135)),(VariablePattern (Ident "s" 133))])]) (SimpleRhs (397,24) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (Variable (QualIdent Nothing (Ident "p" 133)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (Variable (QualIdent Nothing (Ident "s" 133))))) []))])+,(TypeSig (400,1) [(Ident "suc'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []))))+,(FunctionDecl (401,1) (Ident "suc'" 0) [(Equation (401,1) (FunLhs (Ident "suc'" 0) [(TuplePattern [(VariablePattern (Ident "_" 138)),(VariablePattern (Ident "_" 139)),(VariablePattern (Ident "_" 140)),(VariablePattern (Ident "s" 137))])]) (SimpleRhs (401,18) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (Variable (QualIdent Nothing (Ident "s" 137)))) []))])+,(TypeSig (404,1) [(Ident "pre'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []))))+,(FunctionDecl (405,1) (Ident "pre'" 0) [(Equation (405,1) (FunLhs (Ident "pre'" 0) [(TuplePattern [(VariablePattern (Ident "p" 142)),(VariablePattern (Ident "_" 143)),(VariablePattern (Ident "_" 144)),(VariablePattern (Ident "_" 145))])]) (SimpleRhs (405,18) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))) (Variable (QualIdent Nothing (Ident "p" 142)))) []))])+,(TypeSig (408,1) [(Ident "lpre'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (409,1) (Ident "lpre'" 0) [(Equation (409,1) (FunLhs (Ident "lpre'" 0) [(TuplePattern [(VariablePattern (Ident "p" 147)),(VariablePattern (Ident "_" 148)),(VariablePattern (Ident "_" 149)),(VariablePattern (Ident "_" 150))])]) (SimpleRhs (409,19) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "flip2" 0)))) (Variable (QualIdent Nothing (Ident "p" 147)))) []))])+,(TypeSig (412,1) [(Ident "lsuc'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "Node" 0)) []),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (413,1) (Ident "lsuc'" 0) [(Equation (413,1) (FunLhs (Ident "lsuc'" 0) [(TuplePattern [(VariablePattern (Ident "_" 153)),(VariablePattern (Ident "_" 154)),(VariablePattern (Ident "_" 155)),(VariablePattern (Ident "s" 152))])]) (SimpleRhs (413,19) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "flip2" 0)))) (Variable (QualIdent Nothing (Ident "s" 152)))) []))])+,(TypeSig (416,1) [(Ident "out'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (417,1) (Ident "out'" 0) [(Equation (417,1) (FunLhs (Ident "out'" 0) [(TuplePattern [(VariablePattern (Ident "_" 158)),(VariablePattern (Ident "v" 157)),(VariablePattern (Ident "_" 159)),(VariablePattern (Ident "s" 157))])]) (SimpleRhs (417,18) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "l" 161)),(VariablePattern (Ident "w" 161))])] (Tuple [(Variable (QualIdent Nothing (Ident "v" 157))),(Variable (QualIdent Nothing (Ident "w" 161))),(Variable (QualIdent Nothing (Ident "l" 161)))])))) (Variable (QualIdent Nothing (Ident "s" 157)))) []))])+,(TypeSig (420,1) [(Ident "inn'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (421,1) (Ident "inn'" 0) [(Equation (421,1) (FunLhs (Ident "inn'" 0) [(TuplePattern [(VariablePattern (Ident "p" 162)),(VariablePattern (Ident "v" 162)),(VariablePattern (Ident "_" 163)),(VariablePattern (Ident "_" 164))])]) (SimpleRhs (421,18) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "l" 166)),(VariablePattern (Ident "w" 166))])] (Tuple [(Variable (QualIdent Nothing (Ident "w" 166))),(Variable (QualIdent Nothing (Ident "v" 162))),(Variable (QualIdent Nothing (Ident "l" 166)))])))) (Variable (QualIdent Nothing (Ident "p" 162)))) []))])+,(TypeSig (424,1) [(Ident "outdeg'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (425,1) (Ident "outdeg'" 0) [(Equation (425,1) (FunLhs (Ident "outdeg'" 0) [(TuplePattern [(VariablePattern (Ident "_" 168)),(VariablePattern (Ident "_" 169)),(VariablePattern (Ident "_" 170)),(VariablePattern (Ident "s" 167))])]) (SimpleRhs (425,21) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 167)))) []))])+,(TypeSig (428,1) [(Ident "indeg'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (429,1) (Ident "indeg'" 0) [(Equation (429,1) (FunLhs (Ident "indeg'" 0) [(TuplePattern [(VariablePattern (Ident "p" 172)),(VariablePattern (Ident "_" 173)),(VariablePattern (Ident "_" 174)),(VariablePattern (Ident "_" 175))])]) (SimpleRhs (429,20) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "p" 172)))) []))])+,(TypeSig (432,1) [(Ident "deg'" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (433,1) (Ident "deg'" 0) [(Equation (433,1) (FunLhs (Ident "deg'" 0) [(TuplePattern [(VariablePattern (Ident "p" 177)),(VariablePattern (Ident "_" 178)),(VariablePattern (Ident "_" 179)),(VariablePattern (Ident "s" 177))])]) (SimpleRhs (433,18) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "p" 177)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 177))))) []))])+,(FunctionDecl (440,1) (Ident "labNodes" 0) [(Equation (440,1) (FunLhs (Ident "labNodes" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 181))]))]) (SimpleRhs (440,19) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "v" 183)),(TuplePattern [(VariablePattern (Ident "_" 184)),(VariablePattern (Ident "l" 183)),(VariablePattern (Ident "_" 185))])])] (Tuple [(Variable (QualIdent Nothing (Ident "v" 183))),(Variable (QualIdent Nothing (Ident "l" 183)))])))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "fmToList" 0))) (Variable (QualIdent Nothing (Ident "g" 181)))))) []))])+,(TypeSig (443,1) [(Ident "labEdges" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "LEdge" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (444,1) (Ident "labEdges" 0) [(Equation (444,1) (FunLhs (Ident "labEdges" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 186))]))]) (SimpleRhs (444,20) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "v" 188)),(TuplePattern [(VariablePattern (Ident "_" 189)),(VariablePattern (Ident "_" 190)),(VariablePattern (Ident "s" 188))])])] (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "l" 191)),(VariablePattern (Ident "w" 191))])] (Tuple [(Variable (QualIdent Nothing (Ident "v" 188))),(Variable (QualIdent Nothing (Ident "w" 191))),(Variable (QualIdent Nothing (Ident "l" 191)))])))) (Variable (QualIdent Nothing (Ident "s" 188))))))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "fmToList" 0))) (Variable (QualIdent Nothing (Ident "g" 186)))))) []))])+,(TypeSig (447,1) [(Ident "nodes" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []))))+,(FunctionDecl (448,1) (Ident "nodes" 0) [(Equation (448,1) (FunLhs (Ident "nodes" 0) []) (SimpleRhs (448,9) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "fst" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "labNodes" 0)))) []))])+,(TypeSig (451,1) [(Ident "edges" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "Edge" 0)) []))))+,(FunctionDecl (452,1) (Ident "edges" 0) [(Equation (452,1) (FunLhs (Ident "edges" 0) []) (SimpleRhs (452,9) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "v" 196)),(VariablePattern (Ident "w" 196)),(VariablePattern (Ident "_" 197))])] (Tuple [(Variable (QualIdent Nothing (Ident "v" 196))),(Variable (QualIdent Nothing (Ident "w" 196)))])))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "labEdges" 0)))) []))])+,(TypeSig (455,1) [(Ident "newNodes" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ListType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) [])))))+,(FunctionDecl (456,1) (Ident "newNodes" 0) [(Equation (456,1) (FunLhs (Ident "newNodes" 0) [(VariablePattern (Ident "i" 198)),(VariablePattern (Ident "g" 198))]) (SimpleRhs (456,16) (EnumFromTo (InfixApply (Variable (QualIdent Nothing (Ident "n" 199))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 202) 1))) (InfixApply (Variable (QualIdent Nothing (Ident "n" 199))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 198))))) [(PatternDecl (456,33) (TuplePattern [(VariablePattern (Ident "_" 200)),(VariablePattern (Ident "n" 199))]) (SimpleRhs (456,41) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "nodeRange" 0))) (Variable (QualIdent Nothing (Ident "g" 198)))) []))]))])+,(TypeSig (480,1) [(Ident "ufold" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "c" 0)) (VariableType (Ident "c" 0)))) (ArrowType (VariableType (Ident "c" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (VariableType (Ident "c" 0))))))+,(FunctionDecl (481,1) (Ident "ufold" 0) [(Equation (481,1) (FunLhs (Ident "ufold" 0) [(VariablePattern (Ident "f" 203)),(VariablePattern (Ident "u" 203)),(VariablePattern (Ident "g" 203))]) (GuardedRhs [(CondExpr (481,13) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "isEmpty" 0))) (Variable (QualIdent Nothing (Ident "g" 203)))) (Variable (QualIdent Nothing (Ident "u" 203)))),(CondExpr (482,13) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 203))) (Variable (QualIdent Nothing (Ident "c" 204)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "ufold" 0))) (Variable (QualIdent Nothing (Ident "f" 203)))) (Variable (QualIdent Nothing (Ident "u" 203)))) (Variable (QualIdent Nothing (Ident "g'" 204)))))))] [(PatternDecl (483,19) (TuplePattern [(VariablePattern (Ident "c" 204)),(VariablePattern (Ident "g'" 204))]) (SimpleRhs (483,28) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "matchAny" 0))) (Variable (QualIdent Nothing (Ident "g" 203)))) []))]))])+,(TypeSig (486,1) [(Ident "gmap" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Context" 0)) [(VariableType (Ident "c" 0)),(VariableType (Ident "d" 0))])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "c" 0)),(VariableType (Ident "d" 0))]))))+,(FunctionDecl (487,1) (Ident "gmap" 0) [(Equation (487,1) (FunLhs (Ident "gmap" 0) [(VariablePattern (Ident "f" 206))]) (SimpleRhs (487,10) (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "ufold" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 208))] (LeftSection (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 206))) (Variable (QualIdent Nothing (Ident "c" 208))))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ":&" 0))))))) (Variable (QualIdent (Just "GraphInductive") (Ident "empty" 0)))) []))])+,(TypeSig (490,1) [(Ident "nmap" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "c" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "c" 0)),(VariableType (Ident "b" 0))]))))+,(FunctionDecl (491,1) (Ident "nmap" 0) [(Equation (491,1) (FunLhs (Ident "nmap" 0) [(VariablePattern (Ident "f" 209))]) (SimpleRhs (491,10) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "gmap" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "p" 211)),(VariablePattern (Ident "v" 211)),(VariablePattern (Ident "l" 211)),(VariablePattern (Ident "s" 211))])] (Tuple [(Variable (QualIdent Nothing (Ident "p" 211))),(Variable (QualIdent Nothing (Ident "v" 211))),(Apply (Variable (QualIdent Nothing (Ident "f" 209))) (Variable (QualIdent Nothing (Ident "l" 211)))),(Variable (QualIdent Nothing (Ident "s" 211)))])))) []))])+,(TypeSig (494,1) [(Ident "emap" 0)] (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "c" 0))]))))+,(FunctionDecl (495,1) (Ident "emap" 0) [(Equation (495,1) (FunLhs (Ident "emap" 0) [(VariablePattern (Ident "f" 212))]) (SimpleRhs (495,10) (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "gmap" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "p" 217)),(VariablePattern (Ident "v" 217)),(VariablePattern (Ident "l" 217)),(VariablePattern (Ident "s" 217))])] (Tuple [(Apply (Apply (Variable (QualIdent Nothing (Ident "map1" 213))) (Variable (QualIdent Nothing (Ident "f" 212)))) (Variable (QualIdent Nothing (Ident "p" 217)))),(Variable (QualIdent Nothing (Ident "v" 217))),(Variable (QualIdent Nothing (Ident "l" 217))),(Apply (Apply (Variable (QualIdent Nothing (Ident "map1" 213))) (Variable (QualIdent Nothing (Ident "f" 212)))) (Variable (QualIdent Nothing (Ident "s" 217))))])))) [(FunctionDecl (496,16) (Ident "map1" 213) [(Equation (496,16) (FunLhs (Ident "map1" 213) [(VariablePattern (Ident "g" 214))]) (SimpleRhs (496,25) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "l" 216)),(VariablePattern (Ident "v" 216))])] (Tuple [(Apply (Variable (QualIdent Nothing (Ident "g" 214))) (Variable (QualIdent Nothing (Ident "l" 216)))),(Variable (QualIdent Nothing (Ident "v" 216)))])))) []))])]))])+,(FunctionDecl (499,1) (Ident "labUEdges" 0) [(Equation (499,1) (FunLhs (Ident "labUEdges" 0) []) (SimpleRhs (499,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(TuplePattern [(VariablePattern (Ident "v" 220)),(VariablePattern (Ident "w" 220))])] (Tuple [(Variable (QualIdent Nothing (Ident "v" 220))),(Variable (QualIdent Nothing (Ident "w" 220))),(Tuple [])])))) []))])+,(FunctionDecl (502,1) (Ident "labUNodes" 0) [(Equation (502,1) (FunLhs (Ident "labUNodes" 0) []) (SimpleRhs (502,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(VariablePattern (Ident "v" 223))] (Tuple [(Variable (QualIdent Nothing (Ident "v" 223))),(Tuple [])])))) []))])+,(TypeSig (509,1) [(Ident "showGraph" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (510,1) (Ident "showGraph" 0) [(Equation (510,1) (FunLhs (Ident "showGraph" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "GraphInductive") (Ident "Gr" 0)) [(VariablePattern (Ident "g" 224))]))]) (SimpleRhs (510,20) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "showNode" 0)))) (Paren (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "fmToList" 0))) (Variable (QualIdent Nothing (Ident "g" 224)))))))) []))])+,(FunctionDecl (513,1) (Ident "showNode" 0) [(Equation (513,1) (FunLhs (Ident "showNode" 0) [(TuplePattern [(VariablePattern (Ident "v" 226)),(TuplePattern [(VariablePattern (Ident "_" 227)),(VariablePattern (Ident "l'" 226)),(VariablePattern (Ident "s" 226))])])]) (SimpleRhs (513,25) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "v" 226)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ":")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "l'" 226)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "->")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "s" 226)))))))) []))])+,(TypeSig (521,1) [(Ident ".:" 0)] (ArrowType (ArrowType (VariableType (Ident "c" 0)) (VariableType (Ident "d" 0))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0)))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "d" 0)))))))+,(FunctionDecl (526,1) (Ident ".:" 0) [(Equation (526,1) (FunLhs (Ident ".:" 0) []) (SimpleRhs (526,8) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "." 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "." 0)))) []))])+,(FunctionDecl (528,1) (Ident "fst4" 0) [(Equation (528,1) (FunLhs (Ident "fst4" 0) [(TuplePattern [(VariablePattern (Ident "x" 231)),(VariablePattern (Ident "_" 232)),(VariablePattern (Ident "_" 233)),(VariablePattern (Ident "_" 234))])]) (SimpleRhs (528,18) (Variable (QualIdent Nothing (Ident "x" 231))) []))])+,(FunctionDecl (533,1) (Ident "fth4" 0) [(Equation (533,1) (FunLhs (Ident "fth4" 0) [(TuplePattern [(VariablePattern (Ident "_" 237)),(VariablePattern (Ident "_" 238)),(VariablePattern (Ident "_" 239)),(VariablePattern (Ident "x" 236))])]) (SimpleRhs (533,18) (Variable (QualIdent Nothing (Ident "x" 236))) []))])+,(FunctionDecl (541,1) (Ident "flip2" 0) [(Equation (541,1) (FunLhs (Ident "flip2" 0) [(TuplePattern [(VariablePattern (Ident "x" 241)),(VariablePattern (Ident "y" 241))])]) (SimpleRhs (541,15) (Tuple [(Variable (QualIdent Nothing (Ident "y" 241))),(Variable (QualIdent Nothing (Ident "x" 241)))]) []))])+,(TypeSig (546,1) [(Ident "context1" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))]))))+,(TypeSig (551,1) [(Ident "context4" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Graph" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Node" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (553,1) (Ident "context1" 0) [(Equation (553,1) (FunLhs (Ident "context1" 0) []) (SimpleRhs (553,12) (InfixApply (Variable (QualIdent (Just "GraphInductive") (Ident "fst4" 0))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context" 0)))) []))])+,(FunctionDecl (558,1) (Ident "context4" 0) [(Equation (558,1) (FunLhs (Ident "context4" 0) []) (SimpleRhs (558,12) (InfixApply (Variable (QualIdent (Just "GraphInductive") (Ident "fth4" 0))) (InfixOp (QualIdent (Just "GraphInductive") (Ident ".:" 0))) (Variable (QualIdent (Just "GraphInductive") (Ident "context" 0)))) []))])+,(FunctionDecl (560,1) (Ident "addSucc" 0) [(Equation (560,1) (FunLhs (Ident "addSucc" 0) [(VariablePattern (Ident "v" 247)),(VariablePattern (Ident "l" 247)),(TuplePattern [(VariablePattern (Ident "p" 247)),(VariablePattern (Ident "l'" 247)),(VariablePattern (Ident "s" 247))])]) (SimpleRhs (560,24) (Tuple [(Variable (QualIdent Nothing (Ident "p" 247))),(Variable (QualIdent Nothing (Ident "l'" 247))),(InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "l" 247))),(Variable (QualIdent Nothing (Ident "v" 247)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "s" 247))))]) []))])+,(FunctionDecl (561,1) (Ident "addPred" 0) [(Equation (561,1) (FunLhs (Ident "addPred" 0) [(VariablePattern (Ident "v" 249)),(VariablePattern (Ident "l" 249)),(TuplePattern [(VariablePattern (Ident "p" 249)),(VariablePattern (Ident "l'" 249)),(VariablePattern (Ident "s" 249))])]) (SimpleRhs (561,24) (Tuple [(InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "l" 249))),(Variable (QualIdent Nothing (Ident "v" 249)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "p" 249)))),(Variable (QualIdent Nothing (Ident "l'" 249))),(Variable (QualIdent Nothing (Ident "s" 249)))]) []))])+,(FunctionDecl (563,1) (Ident "clearSucc" 0) [(Equation (563,1) (FunLhs (Ident "clearSucc" 0) [(VariablePattern (Ident "v" 251)),(VariablePattern (Ident "_" 252)),(TuplePattern [(VariablePattern (Ident "p" 251)),(VariablePattern (Ident "l" 251)),(VariablePattern (Ident "s" 251))])]) (SimpleRhs (563,25) (Tuple [(Variable (QualIdent Nothing (Ident "p" 251))),(Variable (QualIdent Nothing (Ident "l" 251))),(Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "v" 251)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))))) (Variable (QualIdent Nothing (Ident "s" 251))))]) []))])+,(FunctionDecl (564,1) (Ident "clearPred" 0) [(Equation (564,1) (FunLhs (Ident "clearPred" 0) [(VariablePattern (Ident "v" 254)),(VariablePattern (Ident "_" 255)),(TuplePattern [(VariablePattern (Ident "p" 254)),(VariablePattern (Ident "l" 254)),(VariablePattern (Ident "s" 254))])]) (SimpleRhs (564,25) (Tuple [(Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "v" 254)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))))) (Variable (QualIdent Nothing (Ident "p" 254)))),(Variable (QualIdent Nothing (Ident "l" 254))),(Variable (QualIdent Nothing (Ident "s" 254)))]) []))])+,(TypeSig (566,1) [(Ident "updAdj" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "GraphRep" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Adj" 0)) [(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Context'" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "Context'" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]))) (ConstructorType (QualIdent Nothing (Ident "GraphRep" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])))))+,(FunctionDecl (567,1) (Ident "updAdj" 0) [(Equation (567,1) (FunLhs (Ident "updAdj" 0) [(VariablePattern (Ident "g" 257)),(ListPattern []),(VariablePattern (Ident "_" 258))]) (SimpleRhs (567,38) (Variable (QualIdent Nothing (Ident "g" 257))) [])),(Equation (568,1) (FunLhs (Ident "updAdj" 0) [(VariablePattern (Ident "g" 260)),(ParenPattern (InfixPattern (TuplePattern [(VariablePattern (Ident "l" 260)),(VariablePattern (Ident "v" 260))]) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "vs" 260)))),(VariablePattern (Ident "f" 260))]) (GuardedRhs [(CondExpr (569,4) (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "elemFM" 0))) (Variable (QualIdent Nothing (Ident "v" 260)))) (Variable (QualIdent Nothing (Ident "g" 260)))) (Apply (Apply (Apply (Variable (QualIdent (Just "GraphInductive") (Ident "updAdj" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "FiniteMap") (Ident "updFM" 0))) (Variable (QualIdent Nothing (Ident "g" 260)))) (Variable (QualIdent Nothing (Ident "v" 260)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 260))) (Variable (QualIdent Nothing (Ident "l" 260)))))))) (Variable (QualIdent Nothing (Ident "vs" 260)))) (Variable (QualIdent Nothing (Ident "f" 260))))),(CondExpr (570,4) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "Edge Exception, Node: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "v" 260))))))))] []))])+,(FunctionDecl (572,1) (Ident "sortBy" 0) [(Equation (572,1) (FunLhs (Ident "sortBy" 0) [(VariablePattern (Ident "p" 262))]) (SimpleRhs (572,12) (Apply (Variable (QualIdent (Just "Sort") (Ident "mergeSort" 0))) (Paren (Lambda [(VariablePattern (Ident "x" 264)),(VariablePattern (Ident "y" 264))] (Let [(PatternDecl (572,35) (VariablePattern (Ident "pxy" 265)) (SimpleRhs (572,41) (Apply (Apply (Variable (QualIdent Nothing (Ident "p" 262))) (Variable (QualIdent Nothing (Ident "x" 264)))) (Variable (QualIdent Nothing (Ident "y" 264)))) []))] (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "pxy" 265))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "pxy" 265))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))))))))) []))])+]
+ src/lib/Curry/Module/.curry/GraphInductive.efc view
@@ -0,0 +1,1 @@+Prog "GraphInductive" ["FiniteMap","Maybe","Prelude","Sort"] [TypeSyn ((Nothing,Nothing,"GraphInductive","Node")) Public [] (TCons ((Nothing,Nothing,"Prelude","Int")) []),TypeSyn ((Nothing,Nothing,"GraphInductive","LNode")) Public [0] (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]),TypeSyn ((Nothing,Nothing,"GraphInductive","UNode")) Public [] (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","()")) []]),TypeSyn ((Nothing,Nothing,"GraphInductive","Edge")) Public [] (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]),TypeSyn ((Nothing,Nothing,"GraphInductive","LEdge")) Public [0] (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]),TypeSyn ((Nothing,Nothing,"GraphInductive","UEdge")) Public [] (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","()")) []]),TypeSyn ((Nothing,Nothing,"GraphInductive","Context")) Public [0,1] (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]),TypeSyn ((Nothing,Nothing,"GraphInductive","Adj")) Private [0] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]),TypeSyn ((Nothing,Nothing,"GraphInductive","MContext")) Public [0,1] (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]),TypeSyn ((Nothing,Nothing,"GraphInductive","Context'")) Public [0,1] (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]),TypeSyn ((Nothing,Nothing,"GraphInductive","UContext")) Public [] (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]]),TypeSyn ((Nothing,Nothing,"GraphInductive","GDecomp")) Public [0,1] (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]]),TypeSyn ((Nothing,Nothing,"GraphInductive","Decomp")) Public [0,1] (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]]),TypeSyn ((Nothing,Nothing,"GraphInductive","UDecomp")) Public [0] (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]]],TVar 0]),TypeSyn ((Nothing,Nothing,"GraphInductive","Path")) Public [] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]),TypeSyn ((Nothing,Nothing,"GraphInductive","LPath")) Public [0] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]]),TypeSyn ((Nothing,Nothing,"GraphInductive","UPath")) Public [] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","()")) []]]),TypeSyn ((Nothing,Nothing,"GraphInductive","GraphRep")) Private [0,1] (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]),TypeSyn ((Nothing,Nothing,"GraphInductive","UGr")) Public [] (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TCons ((Nothing,Nothing,"Prelude","()")) [],TCons ((Nothing,Nothing,"Prelude","()")) []]),Type ((Nothing,Nothing,"GraphInductive","Graph")) Public [0,1] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) 1 Private [TCons ((Nothing,Nothing,"FiniteMap","FM")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]]]] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive",":&")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 65) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 67) (FuncType (TVar 68) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 65),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TVar 67),5),(Just (TVar 68),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),7)]) (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 74,TVar 75]) (FuncType (TVar 74) (FuncType (TVar 75) (TCons (Nothing,Nothing,"FiniteMap","FM") [TVar 74,TVar 75])))),"FiniteMap","addToFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb ConsCall ((Nothing,Just (TVar 73),"Prelude","(,,)")) [Var ((Just (TVar 65),3)),Var ((Just (TVar 67),5)),Var ((Just (TVar 68),6))]])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 81,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (FuncType (TVar 80) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 81,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 81,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 81,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 80,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"GraphInductive","updAdj")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),8)),Var ((Just (TVar 65),3)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 76) (FuncType (TVar 77) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 78,TVar 79,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 77,TVar 76]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 78,TVar 79,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 77,TVar 76]]])))),"GraphInductive","addSucc")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 87,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (FuncType (TVar 86) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 87,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 87,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 87,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 86,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"GraphInductive","updAdj")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),9)),Var ((Just (TVar 68),6)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 82) (FuncType (TVar 83) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 83,TVar 82]],TVar 84,TVar 85]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 83,TVar 82]],TVar 84,TVar 85])))),"GraphInductive","addPred")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"FiniteMap","elemFM")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),7))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0])),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (TVar 67) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 67),5))]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0])),"GraphInductive","Gr")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),10))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),"Prelude","failed")) [])])]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]])),"GraphInductive","matchAny")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'G'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]])),"Prelude","head")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])),"FiniteMap","fmToListPreOrder")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 6),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 10]) (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 10]),5),(Just (TVar 9),6)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 10]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 10) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 10])),"Prelude","Just")) [(Just (TVar 10),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 10) (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"Prelude","(,)")) [Var ((Just (TVar 10),7)),Var ((Just (TVar 9),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 10]),"Prelude","Nothing")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]),"Prelude","failed")) [])])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]),"Prelude","failed")) [])])])])),Func ((Nothing,Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),"GraphInductive","empty")) 0 Public (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (Rule [] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]])),"FiniteMap","emptyFM")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","mkGraph")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","insEdges")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]),2))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","insNodes")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),1))]],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),"GraphInductive","empty")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0])),"GraphInductive","buildGr")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive",":&")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),"GraphInductive","empty")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TCons (Nothing,Nothing,"Prelude","()") [],TCons (Nothing,Nothing,"Prelude","()") []]))),"GraphInductive","mkUGraph")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TCons ((Nothing,Nothing,"Prelude","()")) [],TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TCons (Nothing,Nothing,"Prelude","()") [],TCons (Nothing,Nothing,"Prelude","()") []]))),"GraphInductive","mkGraph")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]])),"GraphInductive","labUNodes")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","()") []]])),"GraphInductive","labUEdges")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","insNode")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]))),"Prelude","(,)")) [(Just (TVar 3),2),(Just (TVar 4),3)]) (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive",":&")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 8) (FuncType (TVar 3) (FuncType (TVar 4) (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [Comb ConsCall ((Nothing,Just (TVar 8),"Prelude","[]")) [],Var ((Just (TVar 3),2)),Var ((Just (TVar 4),3)),Comb ConsCall ((Nothing,Just (TVar 9),"Prelude","[]")) []]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive","insEdge")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 215) (FuncType (TVar 216) (FuncType (TVar 217) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])))),"Prelude","(,,)")) [(Just (TVar 215),3),(Just (TVar 216),4),(Just (TVar 217),5)]) (Let [((Just (TVar 218),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 221,TVar 222]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 222,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 221,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 222,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 221,TVar 222]]))),"GraphInductive","match")) [Var ((Just (TVar 215),3)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 223,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 224,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 223,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 224,TVar 223]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 223,TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","insEdge._#selFP3#pr")) [Var ((Just (TVar 218),6))])] (Let [((Just (TVar 1),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 225,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 226,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 225,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 226,TVar 225]]) (TVar 226)),"GraphInductive","insEdge._#selFP4#la")) [Var ((Just (TVar 218),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 227,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 228,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 227,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 228,TVar 227]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 227,TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","insEdge._#selFP5#su")) [Var ((Just (TVar 218),6))])] (Let [((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 229,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 230,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 229,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 230,TVar 229]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 230,TVar 229])),"GraphInductive","insEdge._#selFP6#g'")) [Var ((Just (TVar 218),6))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive",":&")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TVar 215) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),7)),Var ((Just (TVar 215),3)),Var ((Just (TVar 1),8)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 217) (FuncType (TVar 216) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Var ((Just (TVar 217),5)),Var ((Just (TVar 216),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),9))]],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),10))]))))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","insEdge._#selFP3#pr")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 212,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 212,TVar 213]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]) (FuncType (TVar 216) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2),(Just (TVar 216),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 217) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217])),"Prelude","Just")) [(Just (TVar 217),4)]) (Case  Flex (Var ((Just (TVar 217),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TVar 220) (FuncType (TVar 221) (FuncType (TVar 222) (TVar 217))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]),5),(Just (TVar 220),6),(Just (TVar 221),7),(Just (TVar 222),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]) (TVar 212)),"GraphInductive","insEdge._#selFP4#la")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 212,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 212,TVar 213]]) (TVar 212)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]) (FuncType (TVar 216) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2),(Just (TVar 216),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 217) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217])),"Prelude","Just")) [(Just (TVar 217),4)]) (Case  Flex (Var ((Just (TVar 217),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 219) (FuncType (TVar 220) (FuncType (TVar 212) (FuncType (TVar 222) (TVar 217))))),"Prelude","(,,,)")) [(Just (TVar 219),5),(Just (TVar 220),6),(Just (TVar 212),7),(Just (TVar 222),8)]) (Var ((Just (TVar 212),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","insEdge._#selFP5#su")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 212,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 212,TVar 213]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]) (FuncType (TVar 216) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2),(Just (TVar 216),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 217) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217])),"Prelude","Just")) [(Just (TVar 217),4)]) (Case  Flex (Var ((Just (TVar 217),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 219) (FuncType (TVar 220) (FuncType (TVar 221) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TVar 217))))),"Prelude","(,,,)")) [(Just (TVar 219),5),(Just (TVar 220),6),(Just (TVar 221),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]),8)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213])),"GraphInductive","insEdge._#selFP6#g'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 212,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 213,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 212,TVar 213]]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 212,TVar 213])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 212,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 213,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 217) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 217])),"Prelude","Just")) [(Just (TVar 217),4)]) (Case  Flex (Var ((Just (TVar 217),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 219) (FuncType (TVar 220) (FuncType (TVar 221) (FuncType (TVar 222) (TVar 217))))),"Prelude","(,,,)")) [(Just (TVar 219),5),(Just (TVar 220),6),(Just (TVar 221),7),(Just (TVar 222),8)]) (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 212,TVar 213]),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delNode")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delNodes")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delEdge")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 5),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 9]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 9]),5),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),6)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 9]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 9]),"Prelude","Nothing")) []) (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 9])),"Prelude","Just")) [(Just (TVar 9),7)]) (Case  Rigid (Var ((Just (TVar 9),7))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 11) (FuncType (TVar 12) (FuncType (TVar 13) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]]) (TVar 9))))),"Prelude","(,,,)")) [(Just (TVar 11),8),(Just (TVar 12),9),(Just (TVar 13),10),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]]),11)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive",":&")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 11) (FuncType (TVar 12) (FuncType (TVar 13) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [Var ((Just (TVar 11),8)),Var ((Just (TVar 12),9)),Var ((Just (TVar 13),10)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]) (TVar 5)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 5) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 5) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TVar 5),4))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]) (TVar 5)),"Prelude","snd")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 5]]),11))]],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),6))])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","insNodes")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])))),"Prelude","foldr")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","insNode")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive","insEdges")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive","insEdge")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delNodes")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delNodes")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"Prelude","snd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delEdges")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]))),"GraphInductive","delEdge")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"GraphInductive","isEmpty")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]])))),"Prelude","maybe")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 151]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 151]),"Prelude","Nothing")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),3))]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match._#lambda5")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]]))),"FiniteMap","splitFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 148,TVar 146]]))),"GraphInductive","match._#lambda5")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"FiniteMap","FM")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 146,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 148,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 146,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 146,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 148,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 146,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 146,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 148,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 146,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 148,TVar 146]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 150) (FuncType (TVar 151) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]))),"Prelude","(,)")) [(Just (TVar 150),3),(Just (TVar 151),4)]) (Case  Flex (Var ((Just (TVar 151),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 153) (FuncType (TVar 154) (TVar 151))),"Prelude","(,)")) [(Just (TVar 153),5),(Just (TVar 154),6)]) (Case  Flex (Var ((Just (TVar 154),6))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 156) (FuncType (TVar 157) (FuncType (TVar 158) (TVar 154)))),"Prelude","(,,)")) [(Just (TVar 156),7),(Just (TVar 157),8),(Just (TVar 158),9)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]),10),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 170) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 170]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 170]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 167) (TVar 168)) (FuncType (FuncType (TVar 169) (TVar 167)) (FuncType (TVar 169) (TVar 168)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 162) (FuncType (TVar 163) (TVar 164))) (FuncType (TVar 163) (FuncType (TVar 162) (TVar 164)))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 161) (FuncType (TVar 161) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 165,TVar 166]) (TVar 166)),"Prelude","snd")) []],Var ((Just (TVar 158),9))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]),11),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 180) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 180]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 180]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 177) (TVar 178)) (FuncType (FuncType (TVar 179) (TVar 177)) (FuncType (TVar 179) (TVar 178)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 172) (FuncType (TVar 173) (TVar 174))) (FuncType (TVar 173) (FuncType (TVar 172) (TVar 174)))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 171) (FuncType (TVar 171) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 175,TVar 176]) (TVar 176)),"Prelude","snd")) []],Var ((Just (TVar 156),7))])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 187,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (FuncType (TVar 186) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 187,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 187,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 187,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 186,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"GraphInductive","updAdj")) [Var ((Just (TVar 150),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]),10)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 181) (FuncType (TVar 182) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 183,TVar 181]],TVar 184,TVar 185]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 183,TVar 181]],TVar 184,TVar 185])))),"GraphInductive","clearPred")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]])] (Let [((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),13),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 194,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (FuncType (TVar 193) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 194,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 194,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 194,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 193,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"GraphInductive","updAdj")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),12)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]),11)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 188) (FuncType (TVar 189) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 190,TVar 191,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 192,TVar 188]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 190,TVar 191,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 192,TVar 188]]])))),"GraphInductive","clearSucc")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 196]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 148,TVar 146]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 148,TVar 146]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 196) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 196])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 157) (FuncType (TVar 158) (TVar 196))))),"Prelude","(,,,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TVar 157),8)),Var ((Just (TVar 158),9))]],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 148,TVar 146])),"GraphInductive","Gr")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 148,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 146,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),13))]])))))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","noNodes")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"FiniteMap","sizeFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","nodeRange")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Let [((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),3),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 339) (TVar 340)) (FuncType (FuncType (TVar 341) (TVar 339)) (FuncType (TVar 341) (TVar 340)))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 336,TVar 337]) (TVar 336)),"Prelude","fst")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 338]) (TVar 338)),"Maybe","fromJust")) []])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"FiniteMap","isEmptyFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Lit (Intc  0),Lit (Intc  0)]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])),"FiniteMap","minFM")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])),"FiniteMap","maxFM")) [],Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","failed")) [])])]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","context")) 2 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),3),(Just (TVar 4),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),"Prelude","Nothing")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]])),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]])),"Prelude","Just")) [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]),5)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]),5)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))),"GraphInductive","lab")) 2 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))),"Maybe",">>-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]])),"Prelude","fst")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TVar 0)),"GraphInductive","lab'")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"GraphInductive","neighbors")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","neighbors._#lambda7")) []],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","context")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 415,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","neighbors._#lambda7")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 416,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 415,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 416,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 415,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 415,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TVar 419) (FuncType (TVar 420) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 415,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 416,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]),2),(Just (TVar 419),3),(Just (TVar 420),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 422,TCons (Nothing,Nothing,"Prelude","Int") []]]),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"GraphInductive","suc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context4")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"GraphInductive","pre")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context1")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"GraphInductive","lsuc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])),"GraphInductive","flip2")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context4")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"GraphInductive","lpre")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])),"GraphInductive","flip2")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context1")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"GraphInductive","out")) 2 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]]))) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]))),"GraphInductive","out._#lambda8")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context4")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 511,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 511]))),"GraphInductive","out._#lambda8")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 511,TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 511]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 511,TCons (Nothing,Nothing,"Prelude","Int") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 511,TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 513) (FuncType (TVar 514) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 511,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 513),3),(Just (TVar 514),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 514) (FuncType (TVar 513) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 511])))),"Prelude","(,,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TVar 514),4)),Var ((Just (TVar 513),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"GraphInductive","inn")) 2 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]]))) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]))),"GraphInductive","inn._#lambda9")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context1")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 521,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 521]))),"GraphInductive","inn._#lambda9")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 521,TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 521]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 521,TCons (Nothing,Nothing,"Prelude","Int") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 521,TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 523) (FuncType (TVar 524) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 521,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 523),3),(Just (TVar 524),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 524) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 523) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 521])))),"Prelude","(,,)")) [Var ((Just (TVar 524),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TVar 523),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"GraphInductive","outdeg")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context4")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"GraphInductive","indeg")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context1")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"GraphInductive","deg")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","deg._#lambda10")) []],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","context")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 552,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","deg._#lambda10")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 553,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 552,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 553,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 552,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 552,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 559]) (FuncType (TVar 556) (FuncType (TVar 557) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 560]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 552,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 553,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 559]),2),(Just (TVar 556),3),(Just (TVar 557),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 560]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 559]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 559]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 560]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 560]),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"GraphInductive","gelem")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Maybe","isJust")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]])),"Prelude","fst")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]]))),"GraphInductive","match")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"GraphInductive","equal")) 2 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","slabNodes")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","slabNodes")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","slabEdges")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","slabEdges")) [],Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"GraphInductive","nodeComp")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),2))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","slabNodes")) 0 Private (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"GraphInductive","sortBy")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"GraphInductive","nodeComp")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","labNodes")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"GraphInductive","edgeComp")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),2)] (Let [((Just (TVar 614),3),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 616]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP11#v")) [Var ((Just (TVar 614),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 617]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP12#w")) [Var ((Just (TVar 614),3))])] (Let [((Just (TVar 615),6),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),2)))] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 618]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP9#x")) [Var ((Just (TVar 615),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 619]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP10#y")) [Var ((Just (TVar 615),6))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","failed")) [])])])])))))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP11#v")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 613]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 616) (FuncType (TVar 617) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613])))),"Prelude","(,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 616),3),(Just (TVar 617),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP12#w")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 613]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 615) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 617) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613])))),"Prelude","(,,)")) [(Just (TVar 615),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 617),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP9#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 613]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 616) (FuncType (TVar 617) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613])))),"Prelude","(,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 616),3),(Just (TVar 617),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","edgeComp._#selFP10#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 613]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 615) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 617) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 613])))),"Prelude","(,,)")) [(Just (TVar 615),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 617),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","slabEdges")) 0 Private (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"GraphInductive","sortBy")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"GraphInductive","edgeComp")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","labEdges")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","node'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 5) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 3),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 5),4),(Just (TVar 6),5)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TVar 1)),"GraphInductive","lab'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TVar 1)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (FuncType (TVar 1) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 3),2),(Just (TVar 4),3),(Just (TVar 1),4),(Just (TVar 6),5)]) (Var ((Just (TVar 1),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1])),"GraphInductive","labNode'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 3),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TVar 6),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 4) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 4),3)),Var ((Just (TVar 5),4))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","neighbors'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 11,TCons (Nothing,Nothing,"Prelude","Int") []]]),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","suc'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 3),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","pre'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TVar 6),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","lpre'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TVar 6),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])),"GraphInductive","flip2")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","lsuc'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 3),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])),"GraphInductive","flip2")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","out'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 734) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 736) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 734),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 736),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]))),"GraphInductive","out'._#lambda11")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 732,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 732]))),"GraphInductive","out'._#lambda11")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 732,TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 732]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 732,TCons (Nothing,Nothing,"Prelude","Int") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 732,TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 734) (FuncType (TVar 735) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 732,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 734),3),(Just (TVar 735),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 735) (FuncType (TVar 734) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 732])))),"Prelude","(,,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TVar 735),4)),Var ((Just (TVar 734),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","inn'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 746) (FuncType (TVar 747) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TVar 746),4),(Just (TVar 747),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]))),"GraphInductive","inn'._#lambda12")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 742,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 742]))),"GraphInductive","inn'._#lambda12")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 742,TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 742]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 742,TCons (Nothing,Nothing,"Prelude","Int") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 742,TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 744) (FuncType (TVar 745) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 742,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 744),3),(Just (TVar 745),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 745) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 744) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 742])))),"Prelude","(,,)")) [Var ((Just (TVar 745),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TVar 744),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","outdeg'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 3),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","indeg'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TVar 6),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","deg'")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (FuncType (TVar 4) (FuncType (TVar 5) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]),2),(Just (TVar 4),3),(Just (TVar 5),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","labNodes")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0])),"GraphInductive","labNodes._#lambda13")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])),"FiniteMap","fmToList")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 573,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 573])),"GraphInductive","labNodes._#lambda13")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 574,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 573,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 574,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 573])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 573,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 573,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 576) (FuncType (TVar 577) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 573,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 574,TCons (Nothing,Nothing,"Prelude","Int") []]]]]))),"Prelude","(,)")) [(Just (TVar 576),2),(Just (TVar 577),3)]) (Case  Flex (Var ((Just (TVar 577),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 579) (FuncType (TVar 580) (FuncType (TVar 581) (TVar 577)))),"Prelude","(,,)")) [(Just (TVar 579),4),(Just (TVar 580),5),(Just (TVar 581),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 576) (FuncType (TVar 580) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 573]))),"Prelude","(,)")) [Var ((Just (TVar 576),2)),Var ((Just (TVar 580),5))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","labEdges")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","labEdges._#lambda14")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])),"FiniteMap","fmToList")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 619,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 620]])),"GraphInductive","labEdges._#lambda14")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 620,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 619,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 620,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 620]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 619,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 619,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 623) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 619,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 623),3)]) (Case  Flex (Var ((Just (TVar 623),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 625) (FuncType (TVar 626) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TVar 623)))),"Prelude","(,,)")) [(Just (TVar 625),4),(Just (TVar 626),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 620])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 620]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 620]))),"GraphInductive","labEdges._#lambda14._#lambda15")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]]),6))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 620]))),"GraphInductive","labEdges._#lambda14._#lambda15")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 620,TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 620]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 622) (FuncType (TVar 623) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 620,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 622),3),(Just (TVar 623),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 623) (FuncType (TVar 622) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 620])))),"Prelude","(,,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TVar 623),4)),Var ((Just (TVar 622),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","nodes")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","fst")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0]])),"GraphInductive","labNodes")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","edges")) 0 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","edges._#lambda16")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1]])),"GraphInductive","labEdges")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 788]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","edges._#lambda16")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 788]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 788]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 788]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 790) (FuncType (TVar 791) (FuncType (TVar 792) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 788])))),"Prelude","(,,)")) [(Just (TVar 790),2),(Just (TVar 791),3),(Just (TVar 792),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 790) (FuncType (TVar 791) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Var ((Just (TVar 790),2)),Var ((Just (TVar 791),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"GraphInductive","newNodes")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2)] (Let [((Just (TVar 2),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 4]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"GraphInductive","nodeRange")) [Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","newNodes._#selFP14#n")) [Var ((Just (TVar 2),3))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromTo")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]])))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"GraphInductive","newNodes._#selFP14#n")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TVar 2)))),"GraphInductive","ufold")) 3 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (FuncType (TVar 2) (TVar 2))) (FuncType (TVar 2) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]) (TVar 2)))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))),1),(Just (TVar 2),2),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),3)] (Let [((Just (TVar 808),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 809,TVar 810]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 810,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 809,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 810,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 809,TVar 810]])),"GraphInductive","matchAny")) [Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 811,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 812,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 811,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 812,TVar 811]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 811,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 812,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 811,TCons (Nothing,Nothing,"Prelude","Int") []]]])),"GraphInductive","ufold._#selFP16#c")) [Var ((Just (TVar 808),4))])] (Let [((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 813,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 814,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 813,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 814,TVar 813]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 814,TVar 813])),"GraphInductive","ufold._#selFP17#g'")) [Var ((Just (TVar 808),4))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"GraphInductive","isEmpty")) [Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 2),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (TVar 2)) (FuncType (TVar 2) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]),5))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))) (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TVar 2)))),"GraphInductive","ufold")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))),1)),Var ((Just (TVar 2),2)),Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]),6))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TVar 2),"Prelude","failed")) [])])]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]])),"GraphInductive","ufold._#selFP16#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 807,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 806,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 807,TCons ((Nothing,Nothing,"Prelude","Int")) []]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 806,TVar 807]]) (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 807,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 806,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 807,TCons ((Nothing,Nothing,"Prelude","Int")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TVar 810) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2),(Just (TVar 810),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807])),"GraphInductive","ufold._#selFP17#g'")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 807,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 806,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 807,TCons ((Nothing,Nothing,"Prelude","Int")) []]]],TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 806,TVar 807]]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 806,TVar 807])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 809) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 806,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 807,TCons (Nothing,Nothing,"Prelude","Int") []]]],TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]]))),"Prelude","(,)")) [(Just (TVar 809),2),(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]),3)]) (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 806,TVar 807]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2]))),"GraphInductive","gmap")) 1 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 2,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 3,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 2,TCons ((Nothing,Nothing,"Prelude","Int")) []]]])) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 0]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 3,TVar 2]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]])),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2])))),"GraphInductive","ufold")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2])))),"GraphInductive","gmap._#lambda17")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]])),1))],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 3,TVar 2]),"GraphInductive","empty")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 829,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 829,TVar 830]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 829,TVar 830])))),"GraphInductive","gmap._#lambda17")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 821,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 822,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 821,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 830,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 829,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 830,TCons ((Nothing,Nothing,"Prelude","Int")) []]]])) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 821,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 822,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 821,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 829,TVar 830]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 829,TVar 830])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 829,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]]])),1),(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 829,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 829,TVar 830]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 829,TVar 830]))),"GraphInductive",":&")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 829,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 829,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 829,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 830,TCons (Nothing,Nothing,"Prelude","Int") []]]])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 822,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 821,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 2]))),"GraphInductive","nmap")) 1 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 2]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 1,TVar 2]))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 2]))),"GraphInductive","gmap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","nmap._#lambda18")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 841) (TVar 844)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 841,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 844,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","nmap._#lambda18")) 2 Private (FuncType (FuncType (TVar 841) (TVar 844)) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 837,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 841,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 837,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 837,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 844,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 837,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]))) (Rule [(Just (FuncType (TVar 841) (TVar 844)),1),(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 841,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 841,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 846) (FuncType (TVar 847) (FuncType (TVar 841) (FuncType (TVar 849) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 841,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TVar 846),3),(Just (TVar 847),4),(Just (TVar 841),5),(Just (TVar 849),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 846) (FuncType (TVar 847) (FuncType (TVar 844) (FuncType (TVar 849) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 844,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 837,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [Var ((Just (TVar 846),3)),Var ((Just (TVar 847),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 841) (TVar 844)) (FuncType (TVar 841) (TVar 844))),"Prelude","apply")) [Var ((Just (FuncType (TVar 841) (TVar 844)),1)),Var ((Just (TVar 841),5))],Var ((Just (TVar 849),6))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 2,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 2,TVar 1]))),"GraphInductive","emap")) 1 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 2,TVar 0]) (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 2,TVar 1]))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 2,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 2,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 2,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 2,TVar 1]))),"GraphInductive","gmap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 2,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 2,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","emap._#lambda20")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 2]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 2]]))),"GraphInductive","emap.map1.213")) 1 Private (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 2]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 2]]))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 2])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 2]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 2]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 2]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 2]))),"GraphInductive","emap.map1.213._#lambda19")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 853) (TVar 856)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 853,TVar 854]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 856,TVar 854]))),"GraphInductive","emap.map1.213._#lambda19")) 2 Private (FuncType (FuncType (TVar 853) (TVar 856)) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 853,TVar 854]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 856,TVar 854]))) (Rule [(Just (FuncType (TVar 853) (TVar 856)),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 853,TVar 854]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 853,TVar 854]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 853) (FuncType (TVar 859) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 853,TVar 854]))),"Prelude","(,)")) [(Just (TVar 853),3),(Just (TVar 859),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 856) (FuncType (TVar 859) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 856,TVar 854]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 853) (TVar 856)) (FuncType (TVar 853) (TVar 856))),"Prelude","apply")) [Var ((Just (FuncType (TVar 853) (TVar 856)),1)),Var ((Just (TVar 853),3))],Var ((Just (TVar 859),4))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 865) (TVar 866)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 863,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 863,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","emap._#lambda20")) 2 Private (FuncType (FuncType (TVar 865) (TVar 866)) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 865,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 863,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 865,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 866,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TCons ((Nothing,Nothing,"Prelude","Int")) [],TVar 863,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 866,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]))) (Rule [(Just (FuncType (TVar 865) (TVar 866)),1),(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 863,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 863,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 875]]) (FuncType (TVar 869) (FuncType (TVar 870) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 880]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 863,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 875]]),3),(Just (TVar 869),4),(Just (TVar 870),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 880]]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 875]]) (FuncType (TVar 869) (FuncType (TVar 870) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 880]]) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 863,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TCons (Nothing,Nothing,"Prelude","Int") []]]]))))),"Prelude","(,,,)")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 875]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 875]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 875]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 875]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 865) (TVar 866)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 875]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 875]]))),"GraphInductive","emap.map1.213")) [Var ((Just (FuncType (TVar 865) (TVar 866)),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 875]]),3))],Var ((Just (TVar 869),4)),Var ((Just (TVar 870),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 880]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 880]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 880]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 880]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 865) (TVar 866)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 880]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 866,TVar 880]]))),"GraphInductive","emap.map1.213")) [Var ((Just (FuncType (TVar 865) (TVar 866)),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 865,TVar 880]]),6))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TCons (Nothing,Nothing,"Prelude","()") []]])),"GraphInductive","labUEdges")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 0,TVar 1,TCons ((Nothing,Nothing,"Prelude","()")) []]])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TCons (Nothing,Nothing,"Prelude","()") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TCons (Nothing,Nothing,"Prelude","()") []])),"GraphInductive","labUEdges._#lambda21")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 249,TVar 250]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 249,TVar 250,TCons (Nothing,Nothing,"Prelude","()") []])),"GraphInductive","labUEdges._#lambda21")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 249,TVar 250]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 249,TVar 250,TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 249,TVar 250]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 249,TVar 250]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 252) (FuncType (TVar 253) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 249,TVar 250]))),"Prelude","(,)")) [(Just (TVar 252),2),(Just (TVar 253),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 252) (FuncType (TVar 253) (FuncType (TVar 256) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 249,TVar 250,TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","(,,)")) [Var ((Just (TVar 252),2)),Var ((Just (TVar 253),3)),Comb ConsCall ((Nothing,Just (TVar 256),"Prelude","()")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]])),"GraphInductive","labUNodes")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","()")) []]])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","()") []])),"GraphInductive","labUNodes._#lambda22")) []])),Func ((Nothing,Just (FuncType (TVar 254) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 254,TCons (Nothing,Nothing,"Prelude","()") []])),"GraphInductive","labUNodes._#lambda22")) 1 Private (FuncType (TVar 254) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 254,TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TVar 254),1)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 254) (FuncType (TVar 257) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 254,TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","(,)")) [Var ((Just (TVar 254),1)),Comb ConsCall ((Nothing,Just (TVar 257),"Prelude","()")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"GraphInductive","showGraph")) 1 Public (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1])),"GraphInductive","Gr")) [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"GraphInductive","showNode")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]])),"FiniteMap","fmToList")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),2))]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 1,TVar 2,TVar 3]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"GraphInductive","showNode")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 1,TVar 2,TVar 3]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 1,TVar 2,TVar 3]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 1,TVar 2,TVar 3]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 6) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 1,TVar 2,TVar 3]]))),"Prelude","(,)")) [(Just (TVar 5),2),(Just (TVar 6),3)]) (Case  Flex (Var ((Just (TVar 6),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 8) (FuncType (TVar 9) (FuncType (TVar 10) (TVar 6)))),"Prelude","(,,)")) [(Just (TVar 8),4),(Just (TVar 9),5),(Just (TVar 10),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 5),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 9),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '>'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (TVar 10) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 10),6))]]]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))),"GraphInductive",".:")) 0 Private (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (FuncType (TVar 3) (TVar 0)) (FuncType (TVar 3) (TVar 1))) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))) (FuncType (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 3) (TVar 0)) (FuncType (TVar 3) (TVar 1)))) (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (FuncType (TVar 3) (TVar 0)) (FuncType (TVar 3) (TVar 1))) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))),"Prelude",".")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 3) (TVar 0)) (FuncType (TVar 3) (TVar 1)))),"Prelude",".")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]) (TVar 0)),"GraphInductive","fst4")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TVar 0,TVar 1,TVar 2,TVar 3]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 6) (FuncType (TVar 7) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]))))),"Prelude","(,,,)")) [(Just (TVar 0),2),(Just (TVar 6),3),(Just (TVar 7),4),(Just (TVar 8),5)]) (Var ((Just (TVar 0),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]) (TVar 3)),"GraphInductive","fth4")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,,)")) [TVar 0,TVar 1,TVar 2,TVar 3]) (TVar 3)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 6) (FuncType (TVar 7) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]))))),"Prelude","(,,,)")) [(Just (TVar 5),2),(Just (TVar 6),3),(Just (TVar 7),4),(Just (TVar 3),5)]) (Var ((Just (TVar 3),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0])),"GraphInductive","flip2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 3),2),(Just (TVar 4),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 4) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]))),"Prelude","(,)")) [Var ((Just (TVar 4),3)),Var ((Just (TVar 3),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context1")) 0 Private (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","fst4")) []],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","context")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"GraphInductive","context4")) 0 Private (FuncType (TCons ((Nothing,Nothing,"GraphInductive","Graph")) [TVar 0,TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TCons ((Nothing,Nothing,"Prelude","Int")) []]]))) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])))) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]))))),"GraphInductive",".:")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]])),"GraphInductive","fth4")) []],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),"GraphInductive","context")) []])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]])))),"GraphInductive","addSucc")) 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 2,TVar 3,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 0]]]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 2,TVar 3,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 0]]])))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 6) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]])))),"Prelude","(,,)")) [(Just (TVar 5),4),(Just (TVar 6),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 6) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]]])))),"Prelude","(,,)")) [Var ((Just (TVar 5),4)),Var ((Just (TVar 6),5)),Comb ConsCall ((Nothing,Just (FuncType (TVar 11) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (TVar 11))),"Prelude","(,)")) [Var ((Just (TVar 1),2)),Var ((Just (TVar 0),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]),6))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3])))),"GraphInductive","addPred")) 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 0]],TVar 2,TVar 3]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 1,TVar 0]],TVar 2,TVar 3])))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (FuncType (TVar 6) (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3])))),"Prelude","(,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]),4),(Just (TVar 6),5),(Just (TVar 7),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (FuncType (TVar 6) (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3])))),"Prelude","(,,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 11) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (TVar 11))),"Prelude","(,)")) [Var ((Just (TVar 1),2)),Var ((Just (TVar 0),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 11]),4))],Var ((Just (TVar 6),5)),Var ((Just (TVar 7),6))])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 4,TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 4,TVar 0]]])))),"GraphInductive","clearSucc")) 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 2,TVar 3,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 4,TVar 0]]]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 2,TVar 3,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 4,TVar 0]]])))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 4,TVar 0]]]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 4,TVar 0]]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 6) (FuncType (TVar 7) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 4,TVar 0]]])))),"Prelude","(,,)")) [(Just (TVar 6),4),(Just (TVar 7),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 6) (FuncType (TVar 7) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 2,TVar 3,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 4,TVar 0]]])))),"Prelude","(,,)")) [Var ((Just (TVar 6),4)),Var ((Just (TVar 7),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TVar 0),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TVar 0)),"Prelude","snd")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]),6))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4])))),"GraphInductive","clearPred")) 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 2,TVar 0]],TVar 3,TVar 4]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 2,TVar 0]],TVar 3,TVar 4])))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]) (FuncType (TVar 7) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4])))),"Prelude","(,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]),4),(Just (TVar 7),5),(Just (TVar 8),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]) (FuncType (TVar 7) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4])))),"Prelude","(,,)")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TVar 0),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]) (TVar 0)),"Prelude","snd")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TVar 0]]),4))],Var ((Just (TVar 7),5)),Var ((Just (TVar 8),6))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"GraphInductive","updAdj")) 3 Private (FuncType (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]) (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]))) (TCons ((Nothing,Nothing,"FiniteMap","FM")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]],TVar 1,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","Int")) []]]]])))) (Rule [(Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),2),(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"FiniteMap","elemFM")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"GraphInductive","updAdj")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]])) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]])))),"FiniteMap","updFM")) [Var ((Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),3)),Var ((Just (TVar 0),6))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]),5)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]))),3))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]])),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'E'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"FiniteMap","FM") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"GraphInductive","sortBy")) 1 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Sort","mergeSort")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"GraphInductive","sortBy._#lambda23")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 587) (FuncType (TVar 587) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TVar 587) (FuncType (TVar 587) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"GraphInductive","sortBy._#lambda23")) 3 Private (FuncType (FuncType (TVar 587) (FuncType (TVar 587) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (FuncType (TVar 587) (FuncType (TVar 587) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (FuncType (TVar 587) (FuncType (TVar 587) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1),(Just (TVar 587),2),(Just (TVar 587),3)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),4),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 590) (TVar 591)) (FuncType (TVar 590) (TVar 591))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 588) (TVar 589)) (FuncType (TVar 588) (TVar 589))),"Prelude","apply")) [Var ((Just (FuncType (TVar 587) (FuncType (TVar 587) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1)),Var ((Just (TVar 587),2))],Var ((Just (TVar 587),3))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),4)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),4)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []]])))] [Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))),"GraphInductive",".:")) InfixrOp 5,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]],TCons (Nothing,Nothing,"Prelude","Int") [],TVar 1,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]]) (FuncType (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]) (TCons (Nothing,Nothing,"GraphInductive","Graph") [TVar 1,TVar 0]))),"GraphInductive",":&")) InfixrOp 5]
+ src/lib/Curry/Module/.curry/GraphInductive.fcy view
@@ -0,0 +1,1 @@+Prog "GraphInductive" ["FiniteMap","Maybe","Prelude","Sort"] [TypeSyn ("GraphInductive","Node") Public [] (TCons ("Prelude","Int") []),TypeSyn ("GraphInductive","LNode") Public [0] (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]),TypeSyn ("GraphInductive","UNode") Public [] (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","()") []]),TypeSyn ("GraphInductive","Edge") Public [] (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]),TypeSyn ("GraphInductive","LEdge") Public [0] (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]),TypeSyn ("GraphInductive","UEdge") Public [] (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","()") []]),TypeSyn ("GraphInductive","Context") Public [0,1] (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]),TypeSyn ("GraphInductive","Adj") Private [0] (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]),TypeSyn ("GraphInductive","MContext") Public [0,1] (TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]]),TypeSyn ("GraphInductive","Context'") Public [0,1] (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]),TypeSyn ("GraphInductive","UContext") Public [] (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","Int") []],TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TCons ("Prelude","Int") []]]),TypeSyn ("GraphInductive","GDecomp") Public [0,1] (TCons ("Prelude","(,)") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]]),TypeSyn ("GraphInductive","Decomp") Public [0,1] (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]]),TypeSyn ("GraphInductive","UDecomp") Public [0] (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","Int") []],TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TCons ("Prelude","Int") []]]],TVar 0]),TypeSyn ("GraphInductive","Path") Public [] (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]),TypeSyn ("GraphInductive","LPath") Public [0] (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]),TypeSyn ("GraphInductive","UPath") Public [] (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","()") []]]),TypeSyn ("GraphInductive","GraphRep") Private [0,1] (TCons ("FiniteMap","FM") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]]),TypeSyn ("GraphInductive","UGr") Public [] (TCons ("GraphInductive","Graph") [TCons ("Prelude","()") [],TCons ("Prelude","()") []]),Type ("GraphInductive","Graph") Public [0,1] [Cons ("GraphInductive","Gr") 1 Private [TCons ("FiniteMap","FM") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]]]]] [Func ("GraphInductive",":&") 2 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [3,4,5,6]) (Case  Flex (Var 2) [Branch (Pattern ("GraphInductive","Gr") [7]) (Let [(8,Comb FuncCall ("FiniteMap","addToFM") [Var 7,Var 4,Comb ConsCall ("Prelude","(,,)") [Var 3,Var 5,Var 6]])] (Let [(9,Comb FuncCall ("GraphInductive","updAdj") [Var 8,Var 3,Comb (FuncPartCall 2) ("GraphInductive","addSucc") [Var 4]])] (Let [(10,Comb FuncCall ("GraphInductive","updAdj") [Var 9,Var 6,Comb (FuncPartCall 2) ("GraphInductive","addPred") [Var 4]])] (Case  Rigid (Comb FuncCall ("FiniteMap","elemFM") [Var 4,Var 7]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Prelude","show") [Var 5]]]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("GraphInductive","Gr") [Var 10]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])]))))])])),Func ("GraphInductive","matchAny") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Case  Rigid (Comb FuncCall ("FiniteMap","isEmptyFM") [Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'G'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Prelude","head") [Comb FuncCall ("FiniteMap","fmToListPreOrder") [Var 2]]) [Branch (Pattern ("Prelude","(,)") [3,4]) (Case  Rigid (Comb FuncCall ("GraphInductive","match") [Var 3,Comb ConsCall ("GraphInductive","Gr") [Var 2]]) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Var 5) [Branch (Pattern ("Prelude","Just") [7]) (Comb ConsCall ("Prelude","(,)") [Var 7,Var 6]),Branch (Pattern ("Prelude","Nothing") []) (Comb FuncCall ("Prelude","failed") [])])])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("GraphInductive","empty") 0 Public (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (Rule [] (Comb ConsCall ("GraphInductive","Gr") [Comb FuncCall ("FiniteMap","emptyFM") [Comb (FuncPartCall 2) ("Prelude","<") []]])),Func ("GraphInductive","mkGraph") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("GraphInductive","insEdges") [Var 2],Comb (FuncPartCall 1) ("GraphInductive","insNodes") [Var 1]],Comb FuncCall ("GraphInductive","empty") []])),Func ("GraphInductive","buildGr") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","foldr") [Comb (FuncPartCall 2) ("GraphInductive",":&") [],Comb FuncCall ("GraphInductive","empty") []])),Func ("GraphInductive","mkUGraph") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]) (TCons ("GraphInductive","Graph") [TCons ("Prelude","()") [],TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("GraphInductive","mkGraph") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","labUNodes") [],Var 1],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","labUEdges") [],Var 2]])),Func ("GraphInductive","insNode") 1 Public (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Comb (FuncPartCall 1) ("GraphInductive",":&") [Comb ConsCall ("Prelude","(,,,)") [Comb ConsCall ("Prelude","[]") [],Var 2,Var 3,Comb ConsCall ("Prelude","[]") []]])])),Func ("GraphInductive","insEdge") 2 Public (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [3,4,5]) (Let [(6,Comb FuncCall ("GraphInductive","match") [Var 3,Var 2])] (Let [(7,Comb FuncCall ("GraphInductive","insEdge._#selFP3#pr") [Var 6])] (Let [(8,Comb FuncCall ("GraphInductive","insEdge._#selFP4#la") [Var 6])] (Let [(9,Comb FuncCall ("GraphInductive","insEdge._#selFP5#su") [Var 6])] (Let [(10,Comb FuncCall ("GraphInductive","insEdge._#selFP6#g'") [Var 6])] (Comb FuncCall ("GraphInductive",":&") [Comb ConsCall ("Prelude","(,,,)") [Var 7,Var 3,Var 8,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 5,Var 4],Var 9]],Var 10]))))))])),Func ("GraphInductive","insEdge._#selFP3#pr") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 212,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 212,TVar 213]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Just") [4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,,,)") [5,6,7,8]) (Var 5)])])])),Func ("GraphInductive","insEdge._#selFP4#la") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 212,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 212,TVar 213]]) (TVar 212)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Just") [4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,,,)") [5,6,7,8]) (Var 7)])])])),Func ("GraphInductive","insEdge._#selFP5#su") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 212,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 212,TVar 213]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Just") [4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,,,)") [5,6,7,8]) (Var 8)])])])),Func ("GraphInductive","insEdge._#selFP6#g'") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 212,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 213,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 212,TVar 213]]) (TCons ("GraphInductive","Graph") [TVar 212,TVar 213])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Just") [4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,,,)") [5,6,7,8]) (Var 3)])])])),Func ("GraphInductive","delNode") 1 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1] (Comb (FuncPartCall 1) ("GraphInductive","delNodes") [Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude","[]") []]])),Func ("GraphInductive","delEdge") 2 Public (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [3,4]) (Case  Rigid (Comb FuncCall ("GraphInductive","match") [Var 3,Var 2]) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Var 5) [Branch (Pattern ("Prelude","Nothing") []) (Var 2),Branch (Pattern ("Prelude","Just") [7]) (Case  Rigid (Var 7) [Branch (Pattern ("Prelude","(,,,)") [8,9,10,11]) (Comb FuncCall ("GraphInductive",":&") [Comb ConsCall ("Prelude","(,,,)") [Var 8,Var 9,Var 10,Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 4],Comb (FuncPartCall 1) ("Prelude","snd") []],Var 11]],Var 6])])])])])),Func ("GraphInductive","insNodes") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 1) ("GraphInductive","insNode") [],Var 2,Var 1])),Func ("GraphInductive","insEdges") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("GraphInductive","insEdge") [],Var 2,Var 1])),Func ("GraphInductive","delNodes") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("GraphInductive","delNodes") [Var 4,Comb FuncCall ("Prelude","snd") [Comb FuncCall ("GraphInductive","match") [Var 3,Var 2]]])])),Func ("GraphInductive","delEdges") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("GraphInductive","delEdge") [],Var 2,Var 1])),Func ("GraphInductive","isEmpty") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Comb FuncCall ("FiniteMap","isEmptyFM") [Var 2])])),Func ("GraphInductive","match") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("GraphInductive","Gr") [3]) (Comb FuncCall ("Prelude","maybe") [Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Nothing") [],Comb ConsCall ("GraphInductive","Gr") [Var 3]],Comb (FuncPartCall 1) ("GraphInductive","match._#lambda5") [Var 1],Comb FuncCall ("FiniteMap","splitFM") [Var 3,Var 1]])])),Func ("GraphInductive","match._#lambda5") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TCons ("FiniteMap","FM") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 146,TCons ("Prelude","Int") []]],TVar 148,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 146,TCons ("Prelude","Int") []]]]],TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 146,TCons ("Prelude","Int") []]],TVar 148,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 146,TCons ("Prelude","Int") []]]]]]) (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 146,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 148,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 146,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 148,TVar 146]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Flex (Var 6) [Branch (Pattern ("Prelude","(,,)") [7,8,9]) (Let [(10,Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 1],Comb (FuncPartCall 1) ("Prelude","snd") []],Var 9])] (Let [(11,Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 1],Comb (FuncPartCall 1) ("Prelude","snd") []],Var 7])] (Let [(12,Comb FuncCall ("GraphInductive","updAdj") [Var 3,Var 10,Comb (FuncPartCall 2) ("GraphInductive","clearPred") [Var 1]])] (Let [(13,Comb FuncCall ("GraphInductive","updAdj") [Var 12,Var 11,Comb (FuncPartCall 2) ("GraphInductive","clearSucc") [Var 1]])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","(,,,)") [Var 11,Var 1,Var 8,Var 9]],Comb ConsCall ("GraphInductive","Gr") [Var 13]])))))])])])),Func ("GraphInductive","noNodes") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Comb FuncCall ("FiniteMap","sizeFM") [Var 2])])),Func ("GraphInductive","nodeRange") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Let [(3,Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","fst") [],Comb (FuncPartCall 1) ("Maybe","fromJust") []])] (Case  Rigid (Comb FuncCall ("FiniteMap","isEmptyFM") [Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Lit (Intc  0),Lit (Intc  0)]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("FiniteMap","minFM") [],Var 2]],Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("FiniteMap","maxFM") [],Var 2]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])]))])),Func ("GraphInductive","context") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("GraphInductive","match") [Var 2,Var 1]) [Branch (Pattern ("Prelude","(,)") [3,4]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","Nothing") []) (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","show") [Var 2]]]),Branch (Pattern ("Prelude","Just") [5]) (Var 5)])])),Func ("GraphInductive","lab") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Maybe") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Maybe",">>-") [Comb FuncCall ("Prelude","fst") [Comb FuncCall ("GraphInductive","match") [Var 2,Var 1]],Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Prelude","Just") [],Comb (FuncPartCall 1) ("GraphInductive","lab'") []]])),Func ("GraphInductive","neighbors") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("GraphInductive","neighbors._#lambda7") []],Comb (FuncPartCall 2) ("GraphInductive","context") []])),Func ("GraphInductive","neighbors._#lambda7") 1 Private (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 416,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 415,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 416,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") [],Comb FuncCall ("Prelude","++") [Var 2,Var 5]])])),Func ("GraphInductive","suc") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") []]],Comb FuncCall ("GraphInductive","context4") []])),Func ("GraphInductive","pre") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") []]],Comb FuncCall ("GraphInductive","context1") []])),Func ("GraphInductive","lsuc") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 1]]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","flip2") []]],Comb FuncCall ("GraphInductive","context4") []])),Func ("GraphInductive","lpre") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 1]]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","flip2") []]],Comb FuncCall ("GraphInductive","context1") []])),Func ("GraphInductive","out") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]]))) (Rule [1,2] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","out._#lambda8") [Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","context4") [],Var 1],Var 2]])),Func ("GraphInductive","out._#lambda8") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TVar 511,TCons ("Prelude","Int") []]) (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 511]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb ConsCall ("Prelude","(,,)") [Var 1,Var 4,Var 3])])),Func ("GraphInductive","inn") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]]))) (Rule [1,2] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","inn._#lambda9") [Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","context1") [],Var 1],Var 2]])),Func ("GraphInductive","inn._#lambda9") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TVar 521,TCons ("Prelude","Int") []]) (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 521]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb ConsCall ("Prelude","(,,)") [Var 4,Var 1,Var 3])])),Func ("GraphInductive","outdeg") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("Prelude","length") []],Comb FuncCall ("GraphInductive","context4") []])),Func ("GraphInductive","indeg") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("Prelude","length") []],Comb FuncCall ("GraphInductive","context1") []])),Func ("GraphInductive","deg") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("GraphInductive","deg._#lambda10") []],Comb (FuncPartCall 2) ("GraphInductive","context") []])),Func ("GraphInductive","deg._#lambda10") 1 Private (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 553,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 552,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 553,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","length") [Var 2],Comb FuncCall ("Prelude","length") [Var 5]])])),Func ("GraphInductive","gelem") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Maybe","isJust") [Comb FuncCall ("Prelude","fst") [Comb FuncCall ("GraphInductive","match") [Var 1,Var 2]]])),Func ("GraphInductive","equal") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","slabNodes") [],Var 1],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","slabNodes") [],Var 2]],Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","slabEdges") [],Var 1],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","slabEdges") [],Var 2]]])),Func ("GraphInductive","nodeComp") 2 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","fst") [Var 1],Comb FuncCall ("Prelude","fst") [Var 2]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("GraphInductive","slabNodes") 0 Private (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("GraphInductive","sortBy") [Comb (FuncPartCall 2) ("GraphInductive","nodeComp") []],Comb (FuncPartCall 1) ("GraphInductive","labNodes") []])),Func ("GraphInductive","edgeComp") 2 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]) (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Let [(3,Var 1)] (Let [(4,Comb FuncCall ("GraphInductive","edgeComp._#selFP11#v") [Var 3])] (Let [(5,Comb FuncCall ("GraphInductive","edgeComp._#selFP12#w") [Var 3])] (Let [(6,Var 2)] (Let [(7,Comb FuncCall ("GraphInductive","edgeComp._#selFP9#x") [Var 6])] (Let [(8,Comb FuncCall ("GraphInductive","edgeComp._#selFP10#y") [Var 6])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","<") [Var 4,Var 7],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 4,Var 7],Comb FuncCall ("Prelude","<") [Var 5,Var 8]]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])))))))),Func ("GraphInductive","edgeComp._#selFP11#v") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 613]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 2)])),Func ("GraphInductive","edgeComp._#selFP12#w") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 613]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 3)])),Func ("GraphInductive","edgeComp._#selFP9#x") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 613]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 2)])),Func ("GraphInductive","edgeComp._#selFP10#y") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 613]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 3)])),Func ("GraphInductive","slabEdges") 0 Private (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("GraphInductive","sortBy") [Comb (FuncPartCall 2) ("GraphInductive","edgeComp") []],Comb (FuncPartCall 1) ("GraphInductive","labEdges") []])),Func ("GraphInductive","node'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Var 3)])),Func ("GraphInductive","lab'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TVar 1)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Var 4)])),Func ("GraphInductive","labNode'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 1])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb ConsCall ("Prelude","(,)") [Var 3,Var 4])])),Func ("GraphInductive","neighbors'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") [],Var 2],Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") [],Var 5]])])),Func ("GraphInductive","suc'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") [],Var 5])])),Func ("GraphInductive","pre'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","snd") [],Var 2])])),Func ("GraphInductive","lpre'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","flip2") [],Var 2])])),Func ("GraphInductive","lsuc'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","flip2") [],Var 5])])),Func ("GraphInductive","out'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","out'._#lambda11") [Var 3],Var 5])])),Func ("GraphInductive","out'._#lambda11") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TVar 732,TCons ("Prelude","Int") []]) (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 732]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb ConsCall ("Prelude","(,,)") [Var 1,Var 4,Var 3])])),Func ("GraphInductive","inn'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","inn'._#lambda12") [Var 3],Var 2])])),Func ("GraphInductive","inn'._#lambda12") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TVar 742,TCons ("Prelude","Int") []]) (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 742]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb ConsCall ("Prelude","(,,)") [Var 4,Var 1,Var 3])])),Func ("GraphInductive","outdeg'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","length") [Var 5])])),Func ("GraphInductive","indeg'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","length") [Var 2])])),Func ("GraphInductive","deg'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","length") [Var 2],Comb FuncCall ("Prelude","length") [Var 5]])])),Func ("GraphInductive","labNodes") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","labNodes._#lambda13") [],Comb FuncCall ("FiniteMap","fmToList") [Var 2]])])),Func ("GraphInductive","labNodes._#lambda13") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 574,TCons ("Prelude","Int") []]],TVar 573,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 574,TCons ("Prelude","Int") []]]]]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 573])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb ConsCall ("Prelude","(,)") [Var 2,Var 5])])])),Func ("GraphInductive","labEdges") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("GraphInductive","labEdges._#lambda14") []],Comb FuncCall ("FiniteMap","fmToList") [Var 2]])])),Func ("GraphInductive","labEdges._#lambda14") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 620,TCons ("Prelude","Int") []]],TVar 619,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 620,TCons ("Prelude","Int") []]]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 620]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","labEdges._#lambda14._#lambda15") [Var 2],Var 6])])])),Func ("GraphInductive","labEdges._#lambda14._#lambda15") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","(,)") [TVar 620,TCons ("Prelude","Int") []]) (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 620]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb ConsCall ("Prelude","(,,)") [Var 1,Var 4,Var 3])])),Func ("GraphInductive","nodes") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","fst") []],Comb (FuncPartCall 1) ("GraphInductive","labNodes") []])),Func ("GraphInductive","edges") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","edges._#lambda16") []],Comb (FuncPartCall 1) ("GraphInductive","labEdges") []])),Func ("GraphInductive","edges._#lambda16") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 788]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Comb ConsCall ("Prelude","(,)") [Var 2,Var 3])])),Func ("GraphInductive","newNodes") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("GraphInductive","nodeRange") [Var 2])] (Let [(4,Comb FuncCall ("GraphInductive","newNodes._#selFP14#n") [Var 3])] (Comb FuncCall ("Prelude","enumFromTo") [Comb FuncCall ("Prelude","+") [Var 4,Lit (Intc  1)],Comb FuncCall ("Prelude","+") [Var 4,Var 1]])))),Func ("GraphInductive","newNodes._#selFP14#n") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("GraphInductive","ufold") 3 Public (FuncType (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))) (FuncType (TVar 2) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TVar 2)))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("GraphInductive","matchAny") [Var 3])] (Let [(5,Comb FuncCall ("GraphInductive","ufold._#selFP16#c") [Var 4])] (Let [(6,Comb FuncCall ("GraphInductive","ufold._#selFP17#g'") [Var 4])] (Case  Rigid (Comb FuncCall ("GraphInductive","isEmpty") [Var 3]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 5],Comb FuncCall ("GraphInductive","ufold") [Var 1,Var 2,Var 6]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])]))))),Func ("GraphInductive","ufold._#selFP16#c") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 807,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 806,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 807,TCons ("Prelude","Int") []]]],TCons ("GraphInductive","Graph") [TVar 806,TVar 807]]) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 807,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 806,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 807,TCons ("Prelude","Int") []]]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("GraphInductive","ufold._#selFP17#g'") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 807,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 806,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 807,TCons ("Prelude","Int") []]]],TCons ("GraphInductive","Graph") [TVar 806,TVar 807]]) (TCons ("GraphInductive","Graph") [TVar 806,TVar 807])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("GraphInductive","gmap") 1 Public (FuncType (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 2,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 3,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 2,TCons ("Prelude","Int") []]]])) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 3,TVar 2]))) (Rule [1] (Comb (FuncPartCall 1) ("GraphInductive","ufold") [Comb (FuncPartCall 1) ("GraphInductive","gmap._#lambda17") [Var 1],Comb FuncCall ("GraphInductive","empty") []])),Func ("GraphInductive","gmap._#lambda17") 2 Private (FuncType (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 821,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 822,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 821,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 830,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 829,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 830,TCons ("Prelude","Int") []]]])) (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 821,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 822,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 821,TCons ("Prelude","Int") []]]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 829,TVar 830]) (TCons ("GraphInductive","Graph") [TVar 829,TVar 830])))) (Rule [1,2] (Comb (FuncPartCall 1) ("GraphInductive",":&") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2]])),Func ("GraphInductive","nmap") 1 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 2]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 2]))) (Rule [1] (Comb FuncCall ("GraphInductive","gmap") [Comb (FuncPartCall 1) ("GraphInductive","nmap._#lambda18") [Var 1]])),Func ("GraphInductive","nmap._#lambda18") 2 Private (FuncType (FuncType (TVar 841) (TVar 844)) (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 837,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 841,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 837,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 837,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 844,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 837,TCons ("Prelude","Int") []]]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,,,)") [3,4,5,6]) (Comb ConsCall ("Prelude","(,,,)") [Var 3,Var 4,Comb FuncCall ("Prelude","apply") [Var 1,Var 5],Var 6])])),Func ("GraphInductive","emap") 1 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("GraphInductive","Graph") [TVar 2,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 2,TVar 1]))) (Rule [1] (Comb FuncCall ("GraphInductive","gmap") [Comb (FuncPartCall 1) ("GraphInductive","emap._#lambda20") [Var 1]])),Func ("GraphInductive","emap.map1.213") 1 Private (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 2]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 2]]))) (Rule [1] (Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","emap.map1.213._#lambda19") [Var 1]])),Func ("GraphInductive","emap.map1.213._#lambda19") 2 Private (FuncType (FuncType (TVar 853) (TVar 856)) (FuncType (TCons ("Prelude","(,)") [TVar 853,TVar 854]) (TCons ("Prelude","(,)") [TVar 856,TVar 854]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4])])),Func ("GraphInductive","emap._#lambda20") 2 Private (FuncType (FuncType (TVar 865) (TVar 866)) (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 865,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 863,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 865,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 866,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 863,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 866,TCons ("Prelude","Int") []]]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,,,)") [3,4,5,6]) (Comb ConsCall ("Prelude","(,,,)") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","emap.map1.213") [Var 1],Var 3],Var 4,Var 5,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive","emap.map1.213") [Var 1],Var 6]])])),Func ("GraphInductive","labUEdges") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 1,TCons ("Prelude","()") []]])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","labUEdges._#lambda21") []])),Func ("GraphInductive","labUEdges._#lambda21") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 249,TVar 250]) (TCons ("Prelude","(,,)") [TVar 249,TVar 250,TCons ("Prelude","()") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Comb ConsCall ("Prelude","(,,)") [Var 2,Var 3,Comb ConsCall ("Prelude","()") []])])),Func ("GraphInductive","labUNodes") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","()") []]])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","labUNodes._#lambda22") []])),Func ("GraphInductive","labUNodes._#lambda22") 1 Private (FuncType (TVar 254) (TCons ("Prelude","(,)") [TVar 254,TCons ("Prelude","()") []])) (Rule [1] (Comb ConsCall ("Prelude","(,)") [Var 1,Comb ConsCall ("Prelude","()") []])),Func ("GraphInductive","showGraph") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("GraphInductive","Gr") [2]) (Comb FuncCall ("Prelude","unlines") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("GraphInductive","showNode") [],Comb FuncCall ("FiniteMap","fmToList") [Var 2]]])])),Func ("GraphInductive","showNode") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","(,,)") [TVar 1,TVar 2,TVar 3]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 2],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 5],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  '>'),Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Prelude","show") [Var 6]]]]])])])),Func ("GraphInductive",".:") 0 Private (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (FuncType (TVar 3) (TVar 0))) (FuncType (TVar 2) (FuncType (TVar 3) (TVar 1))))) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Prelude",".") [],Comb (FuncPartCall 2) ("Prelude",".") []])),Func ("GraphInductive","fst4") 1 Private (FuncType (TCons ("Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Var 2)])),Func ("GraphInductive","fth4") 1 Private (FuncType (TCons ("Prelude","(,,,)") [TVar 0,TVar 1,TVar 2,TVar 3]) (TVar 3)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,,)") [2,3,4,5]) (Var 5)])),Func ("GraphInductive","flip2") 1 Private (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TVar 1,TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Comb ConsCall ("Prelude","(,)") [Var 3,Var 2])])),Func ("GraphInductive","context1") 0 Private (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("GraphInductive","fst4") []],Comb (FuncPartCall 2) ("GraphInductive","context") []])),Func ("GraphInductive","context4") 0 Private (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]))) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("GraphInductive",".:") [],Comb (FuncPartCall 1) ("GraphInductive","fth4") []],Comb (FuncPartCall 2) ("GraphInductive","context") []])),Func ("GraphInductive","addSucc") 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("Prelude","(,,)") [TVar 2,TVar 3,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 0]]]) (TCons ("Prelude","(,,)") [TVar 2,TVar 3,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 0]]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb ConsCall ("Prelude","(,,)") [Var 4,Var 5,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 2,Var 1],Var 6]])])),Func ("GraphInductive","addPred") 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3]) (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TVar 0]],TVar 2,TVar 3])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb ConsCall ("Prelude","(,,)") [Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 2,Var 1],Var 4],Var 5,Var 6])])),Func ("GraphInductive","clearSucc") 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("Prelude","(,,)") [TVar 2,TVar 3,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 4,TVar 0]]]) (TCons ("Prelude","(,,)") [TVar 2,TVar 3,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 4,TVar 0]]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb ConsCall ("Prelude","(,,)") [Var 4,Var 5,Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 1],Comb (FuncPartCall 1) ("Prelude","snd") []],Var 6]])])),Func ("GraphInductive","clearPred") 3 Private (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4]) (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 2,TVar 0]],TVar 3,TVar 4])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Comb ConsCall ("Prelude","(,,)") [Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 1],Comb (FuncPartCall 1) ("Prelude","snd") []],Var 4],Var 5,Var 6])])),Func ("GraphInductive","updAdj") 3 Private (FuncType (TCons ("FiniteMap","FM") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]))) (TCons ("FiniteMap","FM") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Var 1),Branch (Pattern ("Prelude",":") [4,5]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","(,)") [6,7]) (Case  Rigid (Comb FuncCall ("FiniteMap","elemFM") [Var 7,Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("GraphInductive","updAdj") [Comb FuncCall ("FiniteMap","updFM") [Var 1,Var 7,Comb FuncCall ("Prelude","apply") [Var 3,Var 6]],Var 5,Var 3]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'E'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","show") [Var 7]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("GraphInductive","sortBy") 1 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Ordering") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1] (Comb (FuncPartCall 1) ("Sort","mergeSort") [Comb (FuncPartCall 2) ("GraphInductive","sortBy._#lambda23") [Var 1]])),Func ("GraphInductive","sortBy._#lambda23") 3 Private (FuncType (FuncType (TVar 587) (FuncType (TVar 587) (TCons ("Prelude","Ordering") []))) (FuncType (TVar 587) (FuncType (TVar 587) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Var 3])] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 4,Comb ConsCall ("Prelude","EQ") []],Comb FuncCall ("Prelude","==") [Var 4,Comb ConsCall ("Prelude","LT") []]])))] [Op ("GraphInductive",".:") InfixrOp 5,Op ("GraphInductive",":&") InfixrOp 5]
+ src/lib/Curry/Module/.curry/GraphInductive.fint view
@@ -0,0 +1,1 @@+Prog "GraphInductive" ["FiniteMap","Maybe","Prelude","Sort"] [TypeSyn ("GraphInductive","Node") Public [] (TCons ("Prelude","Int") []),TypeSyn ("GraphInductive","LNode") Public [0] (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]),TypeSyn ("GraphInductive","UNode") Public [] (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","()") []]),TypeSyn ("GraphInductive","Edge") Public [] (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]),TypeSyn ("GraphInductive","LEdge") Public [0] (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]),TypeSyn ("GraphInductive","UEdge") Public [] (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","()") []]),TypeSyn ("GraphInductive","Context") Public [0,1] (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]),TypeSyn ("GraphInductive","Adj") Private [0] (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]),TypeSyn ("GraphInductive","MContext") Public [0,1] (TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]]),TypeSyn ("GraphInductive","Context'") Public [0,1] (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]),TypeSyn ("GraphInductive","UContext") Public [] (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","Int") []],TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TCons ("Prelude","Int") []]]),TypeSyn ("GraphInductive","GDecomp") Public [0,1] (TCons ("Prelude","(,)") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]]),TypeSyn ("GraphInductive","Decomp") Public [0,1] (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]]),TypeSyn ("GraphInductive","UDecomp") Public [0] (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","Int") []],TCons ("Prelude","Int") [],TCons ("Prelude","[]") [TCons ("Prelude","Int") []]]],TVar 0]),TypeSyn ("GraphInductive","Path") Public [] (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]),TypeSyn ("GraphInductive","LPath") Public [0] (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]),TypeSyn ("GraphInductive","UPath") Public [] (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","()") []]]),TypeSyn ("GraphInductive","GraphRep") Private [0,1] (TCons ("FiniteMap","FM") [TCons ("Prelude","Int") [],TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]]),TypeSyn ("GraphInductive","UGr") Public [] (TCons ("GraphInductive","Graph") [TCons ("Prelude","()") [],TCons ("Prelude","()") []]),Type ("GraphInductive","Graph") Public [0,1] []] [Func ("GraphInductive",":&") 2 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]))) (Rule [] (Var 0)),Func ("GraphInductive","matchAny") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("GraphInductive","empty") 0 Public (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (Rule [] (Var 0)),Func ("GraphInductive","mkGraph") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","buildGr") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0])) (Rule [] (Var 0)),Func ("GraphInductive","mkUGraph") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]) (TCons ("GraphInductive","Graph") [TCons ("Prelude","()") [],TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("GraphInductive","insNode") 1 Public (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","insEdge") 2 Public (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]))) (Rule [] (Var 0)),Func ("GraphInductive","delNode") 1 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","delEdge") 2 Public (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","insNodes") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","insEdges") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]))) (Rule [] (Var 0)),Func ("GraphInductive","delNodes") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","delEdges") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","isEmpty") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("GraphInductive","match") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]],TCons ("GraphInductive","Graph") [TVar 0,TVar 1]]))) (Rule [] (Var 0)),Func ("GraphInductive","noNodes") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("GraphInductive","nodeRange") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("GraphInductive","context") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 1,TCons ("Prelude","Int") []]]]))) (Rule [] (Var 0)),Func ("GraphInductive","lab") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Maybe") [TVar 0]))) (Rule [] (Var 0)),Func ("GraphInductive","neighbors") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("GraphInductive","suc") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("GraphInductive","pre") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("GraphInductive","lsuc") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 1]]))) (Rule [] (Var 0)),Func ("GraphInductive","lpre") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 1]]))) (Rule [] (Var 0)),Func ("GraphInductive","out") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]]))) (Rule [] (Var 0)),Func ("GraphInductive","inn") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]]))) (Rule [] (Var 0)),Func ("GraphInductive","outdeg") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("GraphInductive","indeg") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("GraphInductive","deg") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("GraphInductive","gelem") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("GraphInductive","equal") 2 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("GraphInductive","node'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("GraphInductive","lab'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TVar 1)) (Rule [] (Var 0)),Func ("GraphInductive","labNode'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 1])) (Rule [] (Var 0)),Func ("GraphInductive","neighbors'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("GraphInductive","suc'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("GraphInductive","pre'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("GraphInductive","lpre'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [] (Var 0)),Func ("GraphInductive","lsuc'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [] (Var 0)),Func ("GraphInductive","out'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]])) (Rule [] (Var 0)),Func ("GraphInductive","inn'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 0]])) (Rule [] (Var 0)),Func ("GraphInductive","outdeg'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("GraphInductive","indeg'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("GraphInductive","deg'") 1 Public (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("GraphInductive","labNodes") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TVar 0]])) (Rule [] (Var 0)),Func ("GraphInductive","labEdges") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TVar 1]])) (Rule [] (Var 0)),Func ("GraphInductive","nodes") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("GraphInductive","edges") 0 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]])) (Rule [] (Var 0)),Func ("GraphInductive","newNodes") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("GraphInductive","ufold") 3 Public (FuncType (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (FuncType (TVar 2) (TVar 2))) (FuncType (TVar 2) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TVar 2)))) (Rule [] (Var 0)),Func ("GraphInductive","gmap") 1 Public (FuncType (FuncType (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 1,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","Int") []]]]) (TCons ("Prelude","(,,,)") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 2,TCons ("Prelude","Int") []]],TCons ("Prelude","Int") [],TVar 3,TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 2,TCons ("Prelude","Int") []]]])) (FuncType (TCons ("GraphInductive","Graph") [TVar 1,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 3,TVar 2]))) (Rule [] (Var 0)),Func ("GraphInductive","nmap") 1 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 2]) (TCons ("GraphInductive","Graph") [TVar 1,TVar 2]))) (Rule [] (Var 0)),Func ("GraphInductive","emap") 1 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("GraphInductive","Graph") [TVar 2,TVar 0]) (TCons ("GraphInductive","Graph") [TVar 2,TVar 1]))) (Rule [] (Var 0)),Func ("GraphInductive","labUEdges") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 1,TCons ("Prelude","()") []]])) (Rule [] (Var 0)),Func ("GraphInductive","labUNodes") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","()") []]])) (Rule [] (Var 0)),Func ("GraphInductive","showGraph") 1 Public (FuncType (TCons ("GraphInductive","Graph") [TVar 0,TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0))] [Op ("GraphInductive",".:") InfixrOp 5,Op ("GraphInductive",":&") InfixrOp 5]
+ src/lib/Curry/Module/.curry/GraphInductive.uacy view
@@ -0,0 +1,97 @@+CurryProg "GraphInductive"+ ["Prelude","FiniteMap","Sort","Maybe"]+ [CType ("GraphInductive","Graph") Public [(0,"nodeLabel"),(1,"edgeLabel")] [CCons ("GraphInductive","Gr") 1 Private [CTCons ("GraphInductive","GraphRep") [CTVar (0,"nodeLabel"),CTVar (1,"edgeLabel")]]],+  CTypeSyn ("GraphInductive","Node") Public [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("GraphInductive","LNode") Public [(0,"a")] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTVar (0,"a")]),+  CTypeSyn ("GraphInductive","UNode") Public [] (CTCons ("GraphInductive","LNode") [CTCons ("Prelude","()") []]),+  CTypeSyn ("GraphInductive","Edge") Public [] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Node") []]),+  CTypeSyn ("GraphInductive","LEdge") Public [(0,"b")] (CTCons ("Prelude","(,,)") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Node") [],CTVar (0,"b")]),+  CTypeSyn ("GraphInductive","UEdge") Public [] (CTCons ("GraphInductive","LEdge") [CTCons ("Prelude","()") []]),+  CTypeSyn ("GraphInductive","Context") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,,,)") [CTCons ("GraphInductive","Adj") [CTVar (1,"b")],CTCons ("GraphInductive","Node") [],CTVar (0,"a"),CTCons ("GraphInductive","Adj") [CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","Adj") Private [(0,"b")] (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"b"),CTCons ("GraphInductive","Node") []]]),+  CTypeSyn ("GraphInductive","MContext") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","Maybe") [CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","Context'") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,,)") [CTCons ("GraphInductive","Adj") [CTVar (1,"b")],CTVar (0,"a"),CTCons ("GraphInductive","Adj") [CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","UContext") Public [] (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []],CTCons ("GraphInductive","Node") [],CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]]),+  CTypeSyn ("GraphInductive","GDecomp") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")],CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","Decomp") Public [(0,"a"),(1,"b")] (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","MContext") [CTVar (0,"a"),CTVar (1,"b")],CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","UDecomp") Public [(0,"g")] (CTCons ("Prelude","(,)") [CTCons ("Prelude","Maybe") [CTCons ("GraphInductive","UContext") []],CTVar (0,"g")]),+  CTypeSyn ("GraphInductive","Path") Public [] (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]),+  CTypeSyn ("GraphInductive","LPath") Public [(0,"a")] (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LNode") [CTVar (0,"a")]]),+  CTypeSyn ("GraphInductive","UPath") Public [] (CTCons ("Prelude","[]") [CTCons ("GraphInductive","UNode") []]),+  CTypeSyn ("GraphInductive","GraphRep") Private [(0,"a"),(1,"b")] (CTCons ("FiniteMap","FM") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Context'") [CTVar (0,"a"),CTVar (1,"b")]]),+  CTypeSyn ("GraphInductive","UGr") Public [] (CTCons ("GraphInductive","Graph") [CTCons ("Prelude","()") [],CTCons ("Prelude","()") []])]+ [CFunc ("GraphInductive",".:") 0 Private (CFuncType (CFuncType (CTVar (0,"c")) (CTVar (1,"d"))) (CFuncType (CFuncType (CTVar (2,"a")) (CFuncType (CTVar (3,"b")) (CTVar (0,"c")))) (CFuncType (CTVar (2,"a")) (CFuncType (CTVar (3,"b")) (CTVar (1,"d")))))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","."))) (CSymbol ("Prelude",".")))] []]),+  CFunc ("GraphInductive",":&") 2 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"nl"),CTVar (1,"el")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"nl"),CTVar (1,"el")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"nl"),CTVar (1,"el")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"v"),CPVar (2,"l"),CPVar (3,"s")],CPComb ("GraphInductive","Gr") [CPVar (4,"g")]] [(CApply (CApply (CSymbol ("FiniteMap","elemFM")) (CVar (1,"v"))) (CVar (4,"g")),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (1,"v")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (2,"l"))))))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("GraphInductive","Gr")) (CVar (7,"g3")))] [CLocalPat (CPVar (5,"g1")) (CApply (CApply (CApply (CSymbol ("FiniteMap","addToFM")) (CVar (4,"g"))) (CVar (1,"v"))) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (0,"p"))) (CVar (2,"l"))) (CVar (3,"s")))) [],CLocalPat (CPVar (6,"g2")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (5,"g1"))) (CVar (0,"p"))) (CApply (CSymbol ("GraphInductive","addSucc")) (CVar (1,"v")))) [],CLocalPat (CPVar (7,"g3")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (6,"g2"))) (CVar (3,"s"))) (CApply (CSymbol ("GraphInductive","addPred")) (CVar (1,"v")))) []]]),+  CFunc ("GraphInductive","addPred") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"l"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l'"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"l"))) (CVar (0,"v")))) (CVar (2,"p")))) (CVar (3,"l'"))) (CVar (4,"s")))] []]),+  CFunc ("GraphInductive","addSucc") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"l"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l'"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (2,"p"))) (CVar (3,"l'"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"l"))) (CVar (0,"v")))) (CVar (4,"s"))))] []]),+  CFunc ("GraphInductive","buildGr") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive",":&"))) (CSymbol ("GraphInductive","empty")))] []]),+  CFunc ("GraphInductive","clearPred") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"_"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (5,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (5,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (2,"p")))) (CVar (3,"l"))) (CVar (4,"s")))] []]),+  CFunc ("GraphInductive","clearSucc") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"_"),CPComb ("Prelude","(,,)") [CPVar (2,"p"),CPVar (3,"l"),CPVar (4,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (2,"p"))) (CVar (3,"l"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (5,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (5,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (4,"s"))))] []]),+  CFunc ("GraphInductive","context") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CVar (0,"g"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Nothing") [],CPVar (2,"_")]) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))) (CApply (CSymbol ("Prelude","show")) (CVar (1,"v"))))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPVar (3,"c")],CPVar (4,"_")]) (CVar (3,"c"))])] []]),+  CFunc ("GraphInductive","context1") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("GraphInductive","Adj") [CTVar (1,"b")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("GraphInductive","fst4"))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","context4") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("GraphInductive","Adj") [CTVar (1,"b")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("GraphInductive","fth4"))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","deg") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"p")))) (CApply (CSymbol ("Prelude","length")) (CVar (3,"s")))))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","deg'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"p")))) (CApply (CSymbol ("Prelude","length")) (CVar (3,"s"))))] []]),+  CFunc ("GraphInductive","delEdge") 2 Public (CFuncType (CTCons ("GraphInductive","Edge") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPVar (1,"w")],CPVar (2,"g")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (0,"v"))) (CVar (2,"g"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Nothing") [],CPVar (3,"_")]) (CVar (2,"g")),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPComb ("Prelude","(,,,)") [CPVar (4,"p"),CPVar (5,"v'"),CPVar (6,"l"),CPVar (7,"s")]],CPVar (8,"g'")]) (CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (4,"p"))) (CVar (5,"v'"))) (CVar (6,"l"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (9,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (9,"x0"))) (CVar (1,"w"))))) (CSymbol ("Prelude","snd")))) (CVar (7,"s"))))) (CVar (8,"g'")))])] []]),+  CFunc ("GraphInductive","delEdges") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Edge") []]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"es"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive","delEdge"))) (CVar (1,"g"))) (CVar (0,"es")))] []]),+  CFunc ("GraphInductive","delNode") 1 Public (CFuncType (CTCons ("GraphInductive","Node") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"v")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","delNodes")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"v"))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("GraphInductive","delNodes") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"g")] [(CSymbol ("Prelude","success"),CVar (0,"g"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"v"),CPVar (2,"vs")],CPVar (3,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive","delNodes")) (CVar (2,"vs"))) (CApply (CSymbol ("Prelude","snd")) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CVar (3,"g")))))] []]),+  CFunc ("GraphInductive","edgeComp") 2 Private (CFuncType (CTCons ("GraphInductive","LEdge") [CTVar (0,"b")]) (CFuncType (CTCons ("GraphInductive","LEdge") [CTVar (0,"b")]) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"e"),CPVar (1,"e'")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"e"))) (CVar (1,"e'")),CSymbol ("Prelude","EQ")),(CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (2,"v"))) (CVar (5,"x")))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"v"))) (CVar (5,"x")))) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (3,"w"))) (CVar (6,"y")))),CSymbol ("Prelude","LT")),(CSymbol ("Prelude","otherwise"),CSymbol ("Prelude","GT"))] [CLocalPat (CPComb ("Prelude","(,,)") [CPVar (2,"v"),CPVar (3,"w"),CPVar (4,"_")]) (CVar (0,"e")) [],CLocalPat (CPComb ("Prelude","(,,)") [CPVar (5,"x"),CPVar (6,"y"),CPVar (7,"_")]) (CVar (1,"e'")) []]]),+  CFunc ("GraphInductive","edges") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Edge") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,,)") [CPVar (0,"v"),CPVar (1,"w"),CPVar (2,"_")]] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"v"))) (CVar (1,"w")))))) (CSymbol ("GraphInductive","labEdges")))] []]),+  CFunc ("GraphInductive","emap") 1 Public (CFuncType (CFuncType (CTVar (0,"b")) (CTVar (1,"c"))) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (2,"a"),CTVar (0,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (2,"a"),CTVar (1,"c")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","gmap")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (1,"p"),CPVar (2,"v"),CPVar (3,"l"),CPVar (4,"s")]] (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CApply (CApply (CSymbol ("GraphInductive","map1")) (CVar (0,"f"))) (CVar (1,"p")))) (CVar (2,"v"))) (CVar (3,"l"))) (CApply (CApply (CSymbol ("GraphInductive","map1")) (CVar (0,"f"))) (CVar (4,"s"))))))] [CLocalFunc (CFunc ("GraphInductive","map1") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"v")]] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CVar (1,"g")) (CVar (2,"l")))) (CVar (3,"v")))))] []]))]]),+  CFunc ("GraphInductive","empty") 0 Public (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","Gr")) (CApply (CSymbol ("FiniteMap","emptyFM")) (CSymbol ("Prelude","<"))))] []]),+  CFunc ("GraphInductive","equal") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"g'")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("GraphInductive","slabNodes")) (CVar (0,"g")))) (CApply (CSymbol ("GraphInductive","slabNodes")) (CVar (1,"g'"))))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("GraphInductive","slabEdges")) (CVar (0,"g")))) (CApply (CSymbol ("GraphInductive","slabEdges")) (CVar (1,"g'")))))] []]),+  CFunc ("GraphInductive","flip2") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"x"),CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"y"))) (CVar (0,"x")))] []]),+  CFunc ("GraphInductive","fst4") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"x"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("GraphInductive","fth4") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"x")]] [(CSymbol ("Prelude","success"),CVar (3,"x"))] []]),+  CFunc ("GraphInductive","gelem") 2 Public (CFuncType (CTCons ("GraphInductive","Node") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"v"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Maybe","isJust")) (CApply (CSymbol ("Prelude","fst")) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (0,"v"))) (CVar (1,"g")))))] []]),+  CFunc ("GraphInductive","gmap") 1 Public (CFuncType (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Context") [CTVar (2,"c"),CTVar (3,"d")])) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (2,"c"),CTVar (3,"d")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive","ufold")) (CLambda [CPVar (1,"c")] (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CVar (0,"f")) (CVar (1,"c")))) (CVar (2,"x0")))))) (CSymbol ("GraphInductive","empty")))] []]),+  CFunc ("GraphInductive","indeg") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("Prelude","length"))) (CSymbol ("GraphInductive","context1")))] []]),+  CFunc ("GraphInductive","indeg'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","length")) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","inn") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (3,"w"))) (CVar (1,"v"))) (CVar (2,"l"))))) (CApply (CApply (CSymbol ("GraphInductive","context1")) (CVar (0,"g"))) (CVar (1,"v"))))] []]),+  CFunc ("GraphInductive","inn'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"v"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (4,"l"),CPVar (5,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (5,"w"))) (CVar (1,"v"))) (CVar (4,"l"))))) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","insEdge") 2 Public (CFuncType (CTCons ("GraphInductive","LEdge") [CTVar (0,"b")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"a"),CTVar (0,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"a"),CTVar (0,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,,)") [CPVar (0,"v"),CPVar (1,"w"),CPVar (2,"l")],CPVar (3,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (4,"pr"))) (CVar (0,"v"))) (CVar (6,"la"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (2,"l"))) (CVar (1,"w")))) (CVar (7,"su"))))) (CVar (8,"g'")))] [CLocalPat (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPComb ("Prelude","(,,,)") [CPVar (4,"pr"),CPVar (5,"_"),CPVar (6,"la"),CPVar (7,"su")]],CPVar (8,"g'")]) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (0,"v"))) (CVar (3,"g"))) []]]),+  CFunc ("GraphInductive","insEdges") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (0,"b")]]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (1,"a"),CTVar (0,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"a"),CTVar (0,"b")]))) (CRules CFlex [CRule [CPVar (0,"es"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive","insEdge"))) (CVar (1,"g"))) (CVar (0,"es")))] []]),+  CFunc ("GraphInductive","insNode") 1 Public (CFuncType (CTCons ("GraphInductive","LNode") [CTVar (0,"a")]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPVar (1,"l")]] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("GraphInductive",":&")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CSymbol ("Prelude","[]"))) (CVar (0,"v"))) (CVar (1,"l"))) (CSymbol ("Prelude","[]")))) (CVar (2,"x0"))))] []]),+  CFunc ("GraphInductive","insNodes") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LNode") [CTVar (0,"a")]]) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"vs"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("GraphInductive","insNode"))) (CVar (1,"g"))) (CVar (0,"vs")))] []]),+  CFunc ("GraphInductive","isEmpty") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","isEmptyFM")) (CVar (0,"g")))] []]),+  CFunc ("GraphInductive","lab") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Maybe",">>-")) (CApply (CSymbol ("Prelude","fst")) (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CVar (0,"g"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","Just"))) (CSymbol ("GraphInductive","lab'"))))] []]),+  CFunc ("GraphInductive","lab'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"_")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"l"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"l"))] []]),+  CFunc ("GraphInductive","labEdges") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CLambda [CPComb ("Prelude","(,)") [CPVar (1,"v"),CPComb ("Prelude","(,,)") [CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"s")]]] (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (5,"l"),CPVar (6,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"v"))) (CVar (6,"w"))) (CVar (5,"l"))))) (CVar (4,"s"))))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"g"))))] []]),+  CFunc ("GraphInductive","labNode'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"_")]) (CTCons ("GraphInductive","LNode") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"v"),CPVar (2,"l"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"v"))) (CVar (2,"l")))] []]),+  CFunc ("GraphInductive","labNodes") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (1,"v"),CPComb ("Prelude","(,,)") [CPVar (2,"_"),CPVar (3,"l"),CPVar (4,"_")]]] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"v"))) (CVar (3,"l"))))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"g"))))] []]),+  CFunc ("GraphInductive","labUEdges") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPVar (1,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (0,"v"))) (CVar (1,"w"))) (CSymbol ("Prelude","()")))))] []]),+  CFunc ("GraphInductive","labUNodes") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (0,"v")] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"v"))) (CSymbol ("Prelude","()")))))] []]),+  CFunc ("GraphInductive","lpre") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTVar (1,"b")]]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2")))) (CSymbol ("GraphInductive","context1")))] []]),+  CFunc ("GraphInductive","lpre'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2"))) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","lsuc") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTVar (1,"b")]]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2")))) (CSymbol ("GraphInductive","context4")))] []]),+  CFunc ("GraphInductive","lsuc'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","flip2"))) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","match") 2 Public (CFuncType (CTCons ("GraphInductive","Node") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Decomp") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"v"),CPComb ("GraphInductive","Gr") [CPVar (1,"g")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","Nothing"))) (CApply (CSymbol ("GraphInductive","Gr")) (CVar (1,"g"))))) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"g'"),CPComb ("Prelude","(,)") [CPVar (3,"_"),CPComb ("Prelude","(,,)") [CPVar (4,"p"),CPVar (5,"l"),CPVar (6,"s")]]]] (CLetDecl [CLocalPat (CPVar (7,"s'")) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (11,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (11,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (6,"s"))) [],CLocalPat (CPVar (8,"p'")) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (12,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (12,"x0"))) (CVar (0,"v"))))) (CSymbol ("Prelude","snd")))) (CVar (4,"p"))) [],CLocalPat (CPVar (9,"g1")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (2,"g'"))) (CVar (7,"s'"))) (CApply (CSymbol ("GraphInductive","clearPred")) (CVar (0,"v")))) [],CLocalPat (CPVar (10,"g2")) (CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CVar (9,"g1"))) (CVar (8,"p'"))) (CApply (CSymbol ("GraphInductive","clearSucc")) (CVar (0,"v")))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (8,"p'"))) (CVar (0,"v"))) (CVar (5,"l"))) (CVar (6,"s"))))) (CApply (CSymbol ("GraphInductive","Gr")) (CVar (10,"g2"))))))) (CApply (CApply (CSymbol ("FiniteMap","splitFM")) (CVar (1,"g"))) (CVar (0,"v"))))] []]),+  CFunc ("GraphInductive","matchAny") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","GDecomp") [CTVar (0,"a"),CTVar (1,"b")])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CApply (CSymbol ("FiniteMap","isEmptyFM")) (CVar (0,"g")),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'G'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))),(CSymbol ("Prelude","otherwise"),CCase (CApply (CSymbol ("Prelude","head")) (CApply (CSymbol ("FiniteMap","fmToListPreOrder")) (CVar (0,"g")))) [CBranch (CPComb ("Prelude","(,)") [CPVar (1,"v"),CPVar (2,"_")]) (CCase (CApply (CApply (CSymbol ("GraphInductive","match")) (CVar (1,"v"))) (CApply (CSymbol ("GraphInductive","Gr")) (CVar (0,"g")))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Just") [CPVar (3,"c")],CPVar (4,"g'")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"c"))) (CVar (4,"g'")))])])] []]),+  CFunc ("GraphInductive","mkGraph") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LNode") [CTVar (0,"a")]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]]) (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"vs"),CPVar (1,"es")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("GraphInductive","insEdges")) (CVar (1,"es")))) (CApply (CSymbol ("GraphInductive","insNodes")) (CVar (0,"vs")))) (CSymbol ("GraphInductive","empty")))] []]),+  CFunc ("GraphInductive","mkUGraph") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Edge") []]) (CTCons ("GraphInductive","Graph") [CTCons ("Prelude","()") [],CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"vs"),CPVar (1,"es")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive","mkGraph")) (CApply (CSymbol ("GraphInductive","labUNodes")) (CVar (0,"vs")))) (CApply (CSymbol ("GraphInductive","labUEdges")) (CVar (1,"es"))))] []]),+  CFunc ("GraphInductive","neighbors") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"p"))) (CVar (3,"s")))))) (CSymbol ("GraphInductive","context")))] []]),+  CFunc ("GraphInductive","neighbors'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (0,"p")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (3,"s"))))] []]),+  CFunc ("GraphInductive","newNodes") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]))) (CRules CFlex [CRule [CPVar (0,"i"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"n"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"n"))) (CVar (0,"i"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"_"),CPVar (3,"n")]) (CApply (CSymbol ("GraphInductive","nodeRange")) (CVar (1,"g"))) []]]),+  CFunc ("GraphInductive","nmap") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"c"))) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (2,"b")]) (CTCons ("GraphInductive","Graph") [CTVar (1,"c"),CTVar (2,"b")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("GraphInductive","gmap")) (CLambda [CPComb ("Prelude","(,,,)") [CPVar (1,"p"),CPVar (2,"v"),CPVar (3,"l"),CPVar (4,"s")]] (CApply (CApply (CApply (CApply (CSymbol ("Prelude","(,,,)")) (CVar (1,"p"))) (CVar (2,"v"))) (CApply (CVar (0,"f")) (CVar (3,"l")))) (CVar (4,"s")))))] []]),+  CFunc ("GraphInductive","noNodes") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("FiniteMap","sizeFM")) (CVar (0,"g")))] []]),+  CFunc ("GraphInductive","node'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("GraphInductive","Node") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"v"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"v"))] []]),+  CFunc ("GraphInductive","nodeComp") 2 Private (CFuncType (CTCons ("GraphInductive","LNode") [CTVar (0,"b")]) (CFuncType (CTCons ("GraphInductive","LNode") [CTVar (0,"b")]) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"n'")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CVar (1,"n'")),CSymbol ("Prelude","EQ")),(CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("Prelude","fst")) (CVar (0,"n")))) (CApply (CSymbol ("Prelude","fst")) (CVar (1,"n'"))),CSymbol ("Prelude","LT")),(CSymbol ("Prelude","otherwise"),CSymbol ("Prelude","GT"))] []]),+  CFunc ("GraphInductive","nodeRange") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","(,)") [CTCons ("GraphInductive","Node") [],CTCons ("GraphInductive","Node") []])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CApply (CSymbol ("FiniteMap","isEmptyFM")) (CVar (0,"g")),CApply (CApply (CSymbol ("Prelude","(,)")) (CLit (CIntc 0))) (CLit (CIntc 0))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CVar (1,"ix")) (CApply (CSymbol ("FiniteMap","minFM")) (CVar (0,"g"))))) (CApply (CVar (1,"ix")) (CApply (CSymbol ("FiniteMap","maxFM")) (CVar (0,"g")))))] [CLocalPat (CPVar (1,"ix")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","fst"))) (CSymbol ("Maybe","fromJust"))) []]]),+  CFunc ("GraphInductive","nodes") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","fst")))) (CSymbol ("GraphInductive","labNodes")))] []]),+  CFunc ("GraphInductive","out") 2 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"v")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"v"))) (CVar (3,"w"))) (CVar (2,"l"))))) (CApply (CApply (CSymbol ("GraphInductive","context4")) (CVar (0,"g"))) (CVar (1,"v"))))] []]),+  CFunc ("GraphInductive","out'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"v"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPComb ("Prelude","(,)") [CPVar (4,"l"),CPVar (5,"w")]] (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"v"))) (CVar (5,"w"))) (CVar (4,"l"))))) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","outdeg") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CSymbol ("Prelude","length"))) (CSymbol ("GraphInductive","context4")))] []]),+  CFunc ("GraphInductive","outdeg'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","length")) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","pre") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd")))) (CSymbol ("GraphInductive","context1")))] []]),+  CFunc ("GraphInductive","pre'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"p"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (0,"p")))] []]),+  CFunc ("GraphInductive","showGraph") 1 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPComb ("GraphInductive","Gr") [CPVar (0,"g")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("GraphInductive","showNode"))) (CApply (CSymbol ("FiniteMap","fmToList")) (CVar (0,"g")))))] []]),+  CFunc ("GraphInductive","showNode") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"v"),CPComb ("Prelude","(,,)") [CPVar (1,"_"),CPVar (2,"l'"),CPVar (3,"s")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"v")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"l'")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '>'))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (3,"s")))))))] []]),+  CFunc ("GraphInductive","slabEdges") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LEdge") [CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("GraphInductive","sortBy")) (CSymbol ("GraphInductive","edgeComp")))) (CSymbol ("GraphInductive","labEdges")))] []]),+  CFunc ("GraphInductive","slabNodes") 0 Private (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","LNode") [CTVar (0,"a")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("GraphInductive","sortBy")) (CSymbol ("GraphInductive","nodeComp")))) (CSymbol ("GraphInductive","labNodes")))] []]),+  CFunc ("GraphInductive","sortBy") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","mergeSort")) (CLambda [CPVar (1,"x"),CPVar (2,"y")] (CLetDecl [CLocalPat (CPVar (3,"pxy")) (CApply (CApply (CVar (0,"p")) (CVar (1,"x"))) (CVar (2,"y"))) []] (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"pxy"))) (CSymbol ("Prelude","EQ")))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"pxy"))) (CSymbol ("Prelude","LT")))))))] []]),+  CFunc ("GraphInductive","suc") 0 Public (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"_"),CTVar (0,"_")]) (CFuncType (CTCons ("GraphInductive","Node") []) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("GraphInductive",".:")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd")))) (CSymbol ("GraphInductive","context4")))] []]),+  CFunc ("GraphInductive","suc'") 1 Public (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","[]") [CTCons ("GraphInductive","Node") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,,,)") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"s")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","snd"))) (CVar (3,"s")))] []]),+  CFunc ("GraphInductive","ufold") 3 Public (CFuncType (CFuncType (CTCons ("GraphInductive","Context") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (2,"c")) (CTVar (2,"c")))) (CFuncType (CTVar (2,"c")) (CFuncType (CTCons ("GraphInductive","Graph") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"u"),CPVar (2,"g")] [(CApply (CSymbol ("GraphInductive","isEmpty")) (CVar (2,"g")),CVar (1,"u")),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (0,"f")) (CVar (3,"c"))) (CApply (CApply (CApply (CSymbol ("GraphInductive","ufold")) (CVar (0,"f"))) (CVar (1,"u"))) (CVar (4,"g'"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"c"),CPVar (4,"g'")]) (CApply (CSymbol ("GraphInductive","matchAny")) (CVar (2,"g"))) []]]),+  CFunc ("GraphInductive","updAdj") 3 Private (CFuncType (CTCons ("GraphInductive","GraphRep") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("GraphInductive","Adj") [CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("GraphInductive","Context'") [CTVar (0,"a"),CTVar (1,"b")]) (CTCons ("GraphInductive","Context'") [CTVar (0,"a"),CTVar (1,"b")]))) (CTCons ("GraphInductive","GraphRep") [CTVar (0,"a"),CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"g"),CPComb ("Prelude","[]") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"g"))] [],CRule [CPVar (2,"g"),CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (3,"l"),CPVar (4,"v")],CPVar (5,"vs")],CPVar (6,"f")] [(CApply (CApply (CSymbol ("FiniteMap","elemFM")) (CVar (4,"v"))) (CVar (2,"g")),CApply (CApply (CApply (CSymbol ("GraphInductive","updAdj")) (CApply (CApply (CApply (CSymbol ("FiniteMap","updFM")) (CVar (2,"g"))) (CVar (4,"v"))) (CApply (CVar (6,"f")) (CVar (3,"l"))))) (CVar (5,"vs"))) (CVar (6,"f"))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'E'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))) (CApply (CSymbol ("Prelude","show")) (CVar (4,"v")))))] []])]+ [COp ("GraphInductive",".:") CInfixrOp 5,COp ("GraphInductive",":&") CInfixrOp 5]
+ src/lib/Curry/Module/.curry/IO.acy view
@@ -0,0 +1,39 @@+CurryProg "IO"+ ["Prelude"]+ [CType ("IO","Handle") Public [] [],+  CType ("IO","IOMode") Public [] [CCons ("IO","ReadMode") 0 Public [],CCons ("IO","WriteMode") 0 Public [],CCons ("IO","AppendMode") 0 Public []],+  CType ("IO","SeekMode") Public [] [CCons ("IO","AbsoluteSeek") 0 Public [],CCons ("IO","RelativeSeek") 0 Public [],CCons ("IO","SeekFromEnd") 0 Public []]]+ [CFunc ("IO","getContents") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("IO","hGetContents")) (CSymbol ("IO","stdin")))] []]),+  CFunc ("IO","hClose") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hClose"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hFlush") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hFlush"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hGetChar") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hGetChar"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hGetContents") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"eof")) (CApply (CSymbol ("IO","hIsEOF")) (CVar (0,"h"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"eof"))) (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("IO","hClose")) (CVar (0,"h")))) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]"))))) (CDoExpr [CSPat (CPVar (2,"c")) (CApply (CSymbol ("IO","hGetChar")) (CVar (0,"h"))),CSPat (CPVar (3,"cs")) (CApply (CSymbol ("IO","hGetContents")) (CVar (0,"h"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"c"))) (CVar (3,"cs"))))]))])] []]),+  CFunc ("IO","hGetLine") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"c")) (CApply (CSymbol ("IO","hGetChar")) (CVar (0,"h"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\n')))) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]")))) (CDoExpr [CSPat (CPVar (2,"cs")) (CApply (CSymbol ("IO","hGetLine")) (CVar (0,"h"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"c"))) (CVar (2,"cs"))))]))])] []]),+  CFunc ("IO","hIsEOF") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hIsEOF"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hIsReadable") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hIsReadable"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hIsWritable") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hIsWritable"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hPrint") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("IO","hPutStrLn")) (CVar (0,"h")))) (CSymbol ("Prelude","show")))] []]),+  CFunc ("IO","hPutChar") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hPutChar"))) (CVar (0,"h")))) (CVar (1,"c")))] []]),+  CFunc ("IO","hPutStr") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","done"))] [],CRule [CPVar (1,"h"),CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CApply (CSymbol ("IO","hPutChar")) (CVar (1,"h"))) (CVar (2,"c")))) (CApply (CApply (CSymbol ("IO","hPutStr")) (CVar (1,"h"))) (CVar (3,"cs"))))] []]),+  CFunc ("IO","hPutStrLn") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CApply (CSymbol ("IO","hPutStr")) (CVar (0,"h"))) (CVar (1,"s")))) (CApply (CApply (CSymbol ("IO","hPutChar")) (CVar (0,"h"))) (CLit (CCharc '\n'))))] []]),+  CFunc ("IO","hReady") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("IO","hWaitForInput")) (CVar (0,"h"))) (CLit (CIntc 0)))] []]),+  CFunc ("IO","hSeek") 3 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("IO","SeekMode") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"sm"),CPVar (2,"pos")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hSeek"))) (CVar (0,"h")))) (CVar (1,"sm")))) (CVar (2,"pos")))] []]),+  CFunc ("IO","hWaitForInput") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"i")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hWaitForInput"))) (CVar (0,"h")))) (CVar (1,"i")))] []]),+  CFunc ("IO","hWaitForInputs") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("IO","Handle") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"handles"),CPVar (1,"timeout")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IO","prim_hWaitForInputs"))) (CVar (0,"handles")))) (CVar (1,"timeout")))] []]),+  CFunc ("IO","isEOF") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("IO","hIsEOF")) (CSymbol ("IO","stdin")))] []]),+  CFunc ("IO","openFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("IO","IOMode") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CRules CFlex [CRule [CPVar (0,"filename"),CPVar (1,"mode")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IO","prim_openFile"))) (CVar (0,"filename")))) (CVar (1,"mode")))] []]),+  CFunc ("IO","prim_hClose") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_hClose"),+  CFunc ("IO","prim_hFlush") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_hFlush"),+  CFunc ("IO","prim_hGetChar") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Char") []])) (CExternal "prim_hGetChar"),+  CFunc ("IO","prim_hIsEOF") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_hIsEOF"),+  CFunc ("IO","prim_hIsReadable") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_hIsReadable"),+  CFunc ("IO","prim_hIsWritable") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_hIsWritable"),+  CFunc ("IO","prim_hPutChar") 2 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_hPutChar"),+  CFunc ("IO","prim_hSeek") 3 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("IO","SeekMode") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CExternal "prim_hSeek"),+  CFunc ("IO","prim_hWaitForInput") 2 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]))) (CExternal "prim_hWaitForInput"),+  CFunc ("IO","prim_hWaitForInputs") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("IO","Handle") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]))) (CExternal "prim_hWaitForInputs"),+  CFunc ("IO","prim_openFile") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("IO","IOMode") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CExternal "prim_openFile"),+  CFunc ("IO","stderr") 0 Public (CTCons ("IO","Handle") []) (CExternal "stderr"),+  CFunc ("IO","stdin") 0 Public (CTCons ("IO","Handle") []) (CExternal "stdin"),+  CFunc ("IO","stdout") 0 Public (CTCons ("IO","Handle") []) (CExternal "stdout")]+ []
+ src/lib/Curry/Module/.curry/IO.cy view
@@ -0,0 +1,73 @@+Module "IO"+(Just (Exporting (9,10) [(Export (QualIdent Nothing (Ident "Handle" 0))),(ExportTypeAll (QualIdent Nothing (Ident "IOMode" 0))),(ExportTypeAll (QualIdent Nothing (Ident "SeekMode" 0))),(Export (QualIdent Nothing (Ident "stdin" 0))),(Export (QualIdent Nothing (Ident "stdout" 0))),(Export (QualIdent Nothing (Ident "stderr" 0))),(Export (QualIdent Nothing (Ident "openFile" 0))),(Export (QualIdent Nothing (Ident "hClose" 0))),(Export (QualIdent Nothing (Ident "hFlush" 0))),(Export (QualIdent Nothing (Ident "hIsEOF" 0))),(Export (QualIdent Nothing (Ident "isEOF" 0))),(Export (QualIdent Nothing (Ident "hSeek" 0))),(Export (QualIdent Nothing (Ident "hWaitForInput" 0))),(Export (QualIdent Nothing (Ident "hWaitForInputs" 0))),(Export (QualIdent Nothing (Ident "hReady" 0))),(Export (QualIdent Nothing (Ident "hGetChar" 0))),(Export (QualIdent Nothing (Ident "hGetLine" 0))),(Export (QualIdent Nothing (Ident "hGetContents" 0))),(Export (QualIdent Nothing (Ident "getContents" 0))),(Export (QualIdent Nothing (Ident "hPutChar" 0))),(Export (QualIdent Nothing (Ident "hPutStr" 0))),(Export (QualIdent Nothing (Ident "hPutStrLn" 0))),(Export (QualIdent Nothing (Ident "hPrint" 0))),(Export (QualIdent Nothing (Ident "hIsReadable" 0))),(Export (QualIdent Nothing (Ident "hIsWritable" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(DataDecl (17,1) (Ident "Handle" 0) [] [])+,(DataDecl (20,1) (Ident "IOMode" 0) [] [(ConstrDecl (20,15) [] (Ident "ReadMode" 0) []),(ConstrDecl (20,26) [] (Ident "WriteMode" 0) []),(ConstrDecl (20,38) [] (Ident "AppendMode" 0) [])])+,(DataDecl (23,1) (Ident "SeekMode" 0) [] [(ConstrDecl (23,17) [] (Ident "AbsoluteSeek" 0) []),(ConstrDecl (23,32) [] (Ident "RelativeSeek" 0) []),(ConstrDecl (23,47) [] (Ident "SeekFromEnd" 0) [])])+,(TypeSig (27,1) [(Ident "stdin" 0)] (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []))+,(FlatExternalDecl (28,1) [(Ident "stdin" 0)])+,(TypeSig (31,1) [(Ident "stdout" 0)] (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []))+,(FlatExternalDecl (32,1) [(Ident "stdout" 0)])+,(TypeSig (35,1) [(Ident "stderr" 0)] (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []))+,(FlatExternalDecl (36,1) [(Ident "stderr" 0)])+,(TypeSig (39,1) [(Ident "openFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IOMode" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])]))))+,(FunctionDecl (40,1) (Ident "openFile" 0) [(Equation (40,1) (FunLhs (Ident "openFile" 0) [(VariablePattern (Ident "filename" 2)),(VariablePattern (Ident "mode" 2))]) (SimpleRhs (40,26) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_openFile" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "filename" 2))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "mode" 2)))) []))])+,(TypeSig (42,1) [(Ident "prim_openFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IOMode" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])]))))+,(FlatExternalDecl (43,1) [(Ident "prim_openFile" 0)])+,(TypeSig (46,1) [(Ident "hClose" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (47,1) (Ident "hClose" 0) [(Equation (47,1) (FunLhs (Ident "hClose" 0) [(VariablePattern (Ident "h" 4))]) (SimpleRhs (47,12) (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hClose" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 4)))) []))])+,(TypeSig (49,1) [(Ident "prim_hClose" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (50,1) [(Ident "prim_hClose" 0)])+,(TypeSig (53,1) [(Ident "hFlush" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (54,1) (Ident "hFlush" 0) [(Equation (54,1) (FunLhs (Ident "hFlush" 0) [(VariablePattern (Ident "h" 6))]) (SimpleRhs (54,12) (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hFlush" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 6)))) []))])+,(TypeSig (56,1) [(Ident "prim_hFlush" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (57,1) [(Ident "prim_hFlush" 0)])+,(TypeSig (60,1) [(Ident "hIsEOF" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FunctionDecl (61,1) (Ident "hIsEOF" 0) [(Equation (61,1) (FunLhs (Ident "hIsEOF" 0) [(VariablePattern (Ident "h" 8))]) (SimpleRhs (61,12) (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hIsEOF" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 8)))) []))])+,(TypeSig (63,1) [(Ident "prim_hIsEOF" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FlatExternalDecl (64,1) [(Ident "prim_hIsEOF" 0)])+,(TypeSig (67,1) [(Ident "isEOF" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]))+,(FunctionDecl (68,1) (Ident "isEOF" 0) [(Equation (68,1) (FunLhs (Ident "isEOF" 0) []) (SimpleRhs (68,9) (Apply (Variable (QualIdent (Just "IO") (Ident "hIsEOF" 0))) (Variable (QualIdent (Just "IO") (Ident "stdin" 0)))) []))])+,(TypeSig (76,1) [(Ident "hSeek" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SeekMode" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))))+,(FunctionDecl (77,1) (Ident "hSeek" 0) [(Equation (77,1) (FunLhs (Ident "hSeek" 0) [(VariablePattern (Ident "h" 12)),(VariablePattern (Ident "sm" 12)),(VariablePattern (Ident "pos" 12))]) (SimpleRhs (77,18) (InfixApply (Paren (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hSeek" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 12))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "sm" 12))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "pos" 12)))) []))])+,(TypeSig (79,1) [(Ident "prim_hSeek" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SeekMode" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))))+,(FlatExternalDecl (80,1) [(Ident "prim_hSeek" 0)])+,(TypeSig (89,1) [(Ident "hWaitForInput" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]))))+,(FunctionDecl (90,1) (Ident "hWaitForInput" 0) [(Equation (90,1) (FunLhs (Ident "hWaitForInput" 0) [(VariablePattern (Ident "h" 14)),(VariablePattern (Ident "i" 14))]) (SimpleRhs (90,21) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hWaitForInput" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 14))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "i" 14)))) []))])+,(TypeSig (92,1) [(Ident "prim_hWaitForInput" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])]))))+,(FlatExternalDecl (93,1) [(Ident "prim_hWaitForInput" 0)])+,(TypeSig (103,1) [(Ident "hWaitForInputs" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))))+,(FunctionDecl (104,1) (Ident "hWaitForInputs" 0) [(Equation (104,1) (FunLhs (Ident "hWaitForInputs" 0) [(VariablePattern (Ident "handles" 16)),(VariablePattern (Ident "timeout" 16))]) (SimpleRhs (105,4) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hWaitForInputs" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "handles" 16))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "timeout" 16)))) []))])+,(TypeSig (107,1) [(Ident "prim_hWaitForInputs" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))))+,(FlatExternalDecl (108,1) [(Ident "prim_hWaitForInputs" 0)])+,(TypeSig (111,1) [(Ident "hReady" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FunctionDecl (112,1) (Ident "hReady" 0) [(Equation (112,1) (FunLhs (Ident "hReady" 0) [(VariablePattern (Ident "h" 18))]) (SimpleRhs (112,12) (Apply (Apply (Variable (QualIdent (Just "IO") (Ident "hWaitForInput" 0))) (Variable (QualIdent Nothing (Ident "h" 18)))) (Literal (Int (Ident "_" 20) 0))) []))])+,(TypeSig (116,1) [(Ident "hGetChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])])))+,(FunctionDecl (117,1) (Ident "hGetChar" 0) [(Equation (117,1) (FunLhs (Ident "hGetChar" 0) [(VariablePattern (Ident "h" 21))]) (SimpleRhs (117,14) (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hGetChar" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 21)))) []))])+,(TypeSig (119,1) [(Ident "prim_hGetChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])])))+,(FlatExternalDecl (120,1) [(Ident "prim_hGetChar" 0)])+,(TypeSig (123,1) [(Ident "hGetLine" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (124,1) (Ident "hGetLine" 0) [(Equation (124,1) (FunLhs (Ident "hGetLine" 0) [(VariablePattern (Ident "h" 23))]) (SimpleRhs (124,14) (Do [(StmtBind (VariablePattern (Ident "c" 25)) (Apply (Variable (QualIdent (Just "IO") (Ident "hGetChar" 0))) (Variable (QualIdent Nothing (Ident "h" 23)))))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 25))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\n'))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Literal (String ""))) (Do [(StmtBind (VariablePattern (Ident "cs" 26)) (Apply (Variable (QualIdent (Just "IO") (Ident "hGetLine" 0))) (Variable (QualIdent Nothing (Ident "h" 23)))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "c" 25))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "cs" 26))))))))) []))])+,(TypeSig (131,1) [(Ident "hGetContents" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (132,1) (Ident "hGetContents" 0) [(Equation (132,1) (FunLhs (Ident "hGetContents" 0) [(VariablePattern (Ident "h" 27))]) (SimpleRhs (132,18) (Do [(StmtBind (VariablePattern (Ident "eof" 29)) (Apply (Variable (QualIdent (Just "IO") (Ident "hIsEOF" 0))) (Variable (QualIdent Nothing (Ident "h" 27)))))] (IfThenElse (Variable (QualIdent Nothing (Ident "eof" 29))) (InfixApply (Apply (Variable (QualIdent (Just "IO") (Ident "hClose" 0))) (Variable (QualIdent Nothing (Ident "h" 27)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Literal (String "")))) (Do [(StmtBind (VariablePattern (Ident "c" 30)) (Apply (Variable (QualIdent (Just "IO") (Ident "hGetChar" 0))) (Variable (QualIdent Nothing (Ident "h" 27))))),(StmtBind (VariablePattern (Ident "cs" 31)) (Apply (Variable (QualIdent (Just "IO") (Ident "hGetContents" 0))) (Variable (QualIdent Nothing (Ident "h" 27)))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "c" 30))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "cs" 31))))))))) []))])+,(TypeSig (140,1) [(Ident "getContents" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))+,(FunctionDecl (141,1) (Ident "getContents" 0) [(Equation (141,1) (FunLhs (Ident "getContents" 0) []) (SimpleRhs (141,15) (Apply (Variable (QualIdent (Just "IO") (Ident "hGetContents" 0))) (Variable (QualIdent (Just "IO") (Ident "stdin" 0)))) []))])+,(TypeSig (144,1) [(Ident "hPutChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (145,1) (Ident "hPutChar" 0) [(Equation (145,1) (FunLhs (Ident "hPutChar" 0) [(VariablePattern (Ident "h" 34)),(VariablePattern (Ident "c" 34))]) (SimpleRhs (145,16) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hPutChar" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 34))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "c" 34)))) []))])+,(TypeSig (147,1) [(Ident "prim_hPutChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (148,1) [(Ident "prim_hPutChar" 0)])+,(TypeSig (151,1) [(Ident "hPutStr" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (152,1) (Ident "hPutStr" 0) [(Equation (152,1) (FunLhs (Ident "hPutStr" 0) [(VariablePattern (Ident "_" 37)),(ListPattern [])]) (SimpleRhs (152,20) (Variable (QualIdent (Just "Prelude") (Ident "done" 0))) [])),(Equation (153,1) (FunLhs (Ident "hPutStr" 0) [(VariablePattern (Ident "h" 39)),(ParenPattern (InfixPattern (VariablePattern (Ident "c" 39)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 39))))]) (SimpleRhs (153,20) (InfixApply (Apply (Apply (Variable (QualIdent (Just "IO") (Ident "hPutChar" 0))) (Variable (QualIdent Nothing (Ident "h" 39)))) (Variable (QualIdent Nothing (Ident "c" 39)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Apply (Variable (QualIdent (Just "IO") (Ident "hPutStr" 0))) (Variable (QualIdent Nothing (Ident "h" 39)))) (Variable (QualIdent Nothing (Ident "cs" 39))))) []))])+,(TypeSig (156,1) [(Ident "hPutStrLn" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (157,1) (Ident "hPutStrLn" 0) [(Equation (157,1) (FunLhs (Ident "hPutStrLn" 0) [(VariablePattern (Ident "h" 41)),(VariablePattern (Ident "s" 41))]) (SimpleRhs (157,17) (InfixApply (Apply (Apply (Variable (QualIdent (Just "IO") (Ident "hPutStr" 0))) (Variable (QualIdent Nothing (Ident "h" 41)))) (Variable (QualIdent Nothing (Ident "s" 41)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Apply (Variable (QualIdent (Just "IO") (Ident "hPutChar" 0))) (Variable (QualIdent Nothing (Ident "h" 41)))) (Literal (Char '\n')))) []))])+,(TypeSig (160,1) [(Ident "hPrint" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (161,1) (Ident "hPrint" 0) [(Equation (161,1) (FunLhs (Ident "hPrint" 0) [(VariablePattern (Ident "h" 43))]) (SimpleRhs (161,12) (InfixApply (Apply (Variable (QualIdent (Just "IO") (Ident "hPutStrLn" 0))) (Variable (QualIdent Nothing (Ident "h" 43)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "show" 0)))) []))])+,(TypeSig (165,1) [(Ident "hIsReadable" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FunctionDecl (166,1) (Ident "hIsReadable" 0) [(Equation (166,1) (FunLhs (Ident "hIsReadable" 0) [(VariablePattern (Ident "h" 45))]) (SimpleRhs (166,18) (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hIsReadable" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 45)))) []))])+,(TypeSig (168,1) [(Ident "prim_hIsReadable" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FlatExternalDecl (169,1) [(Ident "prim_hIsReadable" 0)])+,(TypeSig (172,1) [(Ident "hIsWritable" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FunctionDecl (173,1) (Ident "hIsWritable" 0) [(Equation (173,1) (FunLhs (Ident "hIsWritable" 0) [(VariablePattern (Ident "h" 47))]) (SimpleRhs (173,17) (InfixApply (Variable (QualIdent (Just "IO") (Ident "prim_hIsWritable" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "h" 47)))) []))])+,(TypeSig (175,1) [(Ident "prim_hIsWritable" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])])))+,(FlatExternalDecl (176,1) [(Ident "prim_hIsWritable" 0)])+]
+ src/lib/Curry/Module/.curry/IO.efc view
@@ -0,0 +1,1 @@+Prog "IO" ["Prelude"] [Type ((Nothing,Nothing,"IO","Handle")) Public [] [],Type ((Nothing,Nothing,"IO","IOMode")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"IO","IOMode") []),"IO","ReadMode")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"IO","IOMode") []),"IO","WriteMode")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"IO","IOMode") []),"IO","AppendMode")) 0 Public []],Type ((Nothing,Nothing,"IO","SeekMode")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"IO","SeekMode") []),"IO","AbsoluteSeek")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"IO","SeekMode") []),"IO","RelativeSeek")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"IO","SeekMode") []),"IO","SeekFromEnd")) 0 Public []]] [Func ((Nothing,Just (TCons (Nothing,Nothing,"IO","Handle") []),"IO","stdin")) 0 Public (TCons ((Nothing,Nothing,"IO","Handle")) []) (External "IO.stdin"),Func ((Nothing,Just (TCons (Nothing,Nothing,"IO","Handle") []),"IO","stdout")) 0 Public (TCons ((Nothing,Nothing,"IO","Handle")) []) (External "IO.stdout"),Func ((Nothing,Just (TCons (Nothing,Nothing,"IO","Handle") []),"IO","stderr")) 0 Public (TCons ((Nothing,Nothing,"IO","Handle")) []) (External "IO.stderr"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"IO","openFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"IO","IOMode")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IO","Handle")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"IO","IOMode") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])) (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"IO","prim_openFile")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"IO","IOMode") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"IO","IOMode") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"IO","prim_openFile")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"IO","IOMode")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IO","Handle")) []]))) (External "IO.prim_openFile"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","hClose")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","prim_hClose")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","prim_hClose")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "IO.prim_hClose"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","hFlush")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","prim_hFlush")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","prim_hFlush")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "IO.prim_hFlush"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","hIsEOF")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","prim_hIsEOF")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","prim_hIsEOF")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (External "IO.prim_hIsEOF"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]),"IO","isEOF")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","hIsEOF")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"IO","Handle") []),"IO","stdin")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"IO","hSeek")) 3 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"IO","SeekMode")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"IO","SeekMode") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))))),"Prelude","$#")) [Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"IO","prim_hSeek")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Var ((Just (TCons (Nothing,Nothing,"IO","SeekMode") []),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"IO","SeekMode") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"IO","prim_hSeek")) 3 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"IO","SeekMode")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (External "IO.prim_hSeek"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"IO","hWaitForInput")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"IO","prim_hWaitForInput")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"IO","prim_hWaitForInput")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []]))) (External "IO.prim_hWaitForInput"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"IO","hWaitForInputs")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"IO","Handle")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"IO","prim_hWaitForInputs")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"IO","Handle") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"IO","prim_hWaitForInputs")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"IO","Handle")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (External "IO.prim_hWaitForInputs"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","hReady")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"IO","hWaitForInput")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []])),"IO","hGetChar")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []])),"IO","prim_hGetChar")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []])),"IO","prim_hGetChar")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "IO.prim_hGetChar"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IO","hGetLine")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []])),"IO","hGetChar")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetLine._#lambda2")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetLine._#lambda2")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Lit (Charc  '\n')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IO","hGetLine")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetLine._#lambda2._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetLine._#lambda2._#lambda3")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IO","hGetContents")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","hIsEOF")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetContents._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetContents._#lambda4")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"IO","hClose")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []])),"IO","hGetChar")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetContents._#lambda4._#lambda5")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetContents._#lambda4._#lambda5")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IO","hGetContents")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetContents._#lambda4._#lambda5._#lambda6")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IO","hGetContents._#lambda4._#lambda5._#lambda6")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"IO","getContents")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IO","hGetContents")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"IO","Handle") []),"IO","stdin")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutChar")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","prim_hPutChar")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","prim_hPutChar")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "IO.prim_hPutChar"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutStr")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]),"Prelude","done")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutChar")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutStr")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutStrLn")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutStr")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutChar")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1)),Lit (Charc  '\n')]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPrint")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IO","hPutStrLn")) [Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","hIsReadable")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","prim_hIsReadable")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","prim_hIsReadable")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (External "IO.prim_hIsReadable"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","hIsWritable")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"IO","Handle") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","prim_hIsWritable")) [],Var ((Just (TCons (Nothing,Nothing,"IO","Handle") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IO","Handle") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"IO","prim_hIsWritable")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IO","Handle")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (External "IO.prim_hIsWritable")] []
+ src/lib/Curry/Module/.curry/IO.fcy view
@@ -0,0 +1,1 @@+Prog "IO" ["Prelude"] [Type ("IO","Handle") Public [] [],Type ("IO","IOMode") Public [] [Cons ("IO","ReadMode") 0 Public [],Cons ("IO","WriteMode") 0 Public [],Cons ("IO","AppendMode") 0 Public []],Type ("IO","SeekMode") Public [] [Cons ("IO","AbsoluteSeek") 0 Public [],Cons ("IO","RelativeSeek") 0 Public [],Cons ("IO","SeekFromEnd") 0 Public []]] [Func ("IO","stdin") 0 Public (TCons ("IO","Handle") []) (External "IO.stdin"),Func ("IO","stdout") 0 Public (TCons ("IO","Handle") []) (External "IO.stdout"),Func ("IO","stderr") 0 Public (TCons ("IO","Handle") []) (External "IO.stderr"),Func ("IO","openFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("IO","IOMode") []) (TCons ("Prelude","IO") [TCons ("IO","Handle") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("IO","prim_openFile") [],Var 1],Var 2])),Func ("IO","prim_openFile") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("IO","IOMode") []) (TCons ("Prelude","IO") [TCons ("IO","Handle") []]))) (External "IO.prim_openFile"),Func ("IO","hClose") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IO","prim_hClose") [],Var 1])),Func ("IO","prim_hClose") 1 Private (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "IO.prim_hClose"),Func ("IO","hFlush") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IO","prim_hFlush") [],Var 1])),Func ("IO","prim_hFlush") 1 Private (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "IO.prim_hFlush"),Func ("IO","hIsEOF") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IO","prim_hIsEOF") [],Var 1])),Func ("IO","prim_hIsEOF") 1 Private (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (External "IO.prim_hIsEOF"),Func ("IO","isEOF") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []]) (Rule [] (Comb FuncCall ("IO","hIsEOF") [Comb FuncCall ("IO","stdin") []])),Func ("IO","hSeek") 3 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("IO","SeekMode") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 3) ("IO","prim_hSeek") [],Var 1],Var 2],Var 3])),Func ("IO","prim_hSeek") 3 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("IO","SeekMode") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (External "IO.prim_hSeek"),Func ("IO","hWaitForInput") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("IO","prim_hWaitForInput") [],Var 1],Var 2])),Func ("IO","prim_hWaitForInput") 2 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []]))) (External "IO.prim_hWaitForInput"),Func ("IO","hWaitForInputs") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("IO","Handle") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("IO","prim_hWaitForInputs") [],Var 1],Var 2])),Func ("IO","prim_hWaitForInputs") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("IO","Handle") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]))) (External "IO.prim_hWaitForInputs"),Func ("IO","hReady") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("IO","hWaitForInput") [Var 1,Lit (Intc  0)])),Func ("IO","hGetChar") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IO","prim_hGetChar") [],Var 1])),Func ("IO","prim_hGetChar") 1 Private (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Char") []])) (External "IO.prim_hGetChar"),Func ("IO","hGetLine") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("IO","hGetChar") [Var 1],Comb (FuncPartCall 1) ("IO","hGetLine._#lambda2") [Var 1]])),Func ("IO","hGetLine._#lambda2") 2 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Charc  '\n')]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("IO","hGetLine") [Var 1],Comb (FuncPartCall 1) ("IO","hGetLine._#lambda2._#lambda3") [Var 2]])])),Func ("IO","hGetLine._#lambda2._#lambda3") 2 Private (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude",":") [Var 1,Var 2]])),Func ("IO","hGetContents") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("IO","hIsEOF") [Var 1],Comb (FuncPartCall 1) ("IO","hGetContents._#lambda4") [Var 1]])),Func ("IO","hGetContents._#lambda4") 2 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("IO","hClose") [Var 1],Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("IO","hGetChar") [Var 1],Comb (FuncPartCall 1) ("IO","hGetContents._#lambda4._#lambda5") [Var 1]])])),Func ("IO","hGetContents._#lambda4._#lambda5") 2 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("IO","hGetContents") [Var 1],Comb (FuncPartCall 1) ("IO","hGetContents._#lambda4._#lambda5._#lambda6") [Var 2]])),Func ("IO","hGetContents._#lambda4._#lambda5._#lambda6") 2 Private (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude",":") [Var 1,Var 2]])),Func ("IO","getContents") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (Rule [] (Comb FuncCall ("IO","hGetContents") [Comb FuncCall ("IO","stdin") []])),Func ("IO","hPutChar") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("IO","prim_hPutChar") [],Var 1],Var 2])),Func ("IO","prim_hPutChar") 2 Private (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "IO.prim_hPutChar"),Func ("IO","hPutStr") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","done") []),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("IO","hPutChar") [Var 1,Var 3],Comb FuncCall ("IO","hPutStr") [Var 1,Var 4]])])),Func ("IO","hPutStrLn") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("IO","hPutStr") [Var 1,Var 2],Comb FuncCall ("IO","hPutChar") [Var 1,Lit (Charc  '\n')]])),Func ("IO","hPrint") 1 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("IO","hPutStrLn") [Var 1],Comb (FuncPartCall 1) ("Prelude","show") []])),Func ("IO","hIsReadable") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IO","prim_hIsReadable") [],Var 1])),Func ("IO","prim_hIsReadable") 1 Private (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (External "IO.prim_hIsReadable"),Func ("IO","hIsWritable") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IO","prim_hIsWritable") [],Var 1])),Func ("IO","prim_hIsWritable") 1 Private (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (External "IO.prim_hIsWritable")] []
+ src/lib/Curry/Module/.curry/IO.fint view
@@ -0,0 +1,1 @@+Prog "IO" ["Prelude"] [Type ("IO","Handle") Public [] [],Type ("IO","IOMode") Public [] [Cons ("IO","ReadMode") 0 Public [],Cons ("IO","WriteMode") 0 Public [],Cons ("IO","AppendMode") 0 Public []],Type ("IO","SeekMode") Public [] [Cons ("IO","AbsoluteSeek") 0 Public [],Cons ("IO","RelativeSeek") 0 Public [],Cons ("IO","SeekFromEnd") 0 Public []]] [Func ("IO","stdin") 0 Public (TCons ("IO","Handle") []) (External "IO.stdin"),Func ("IO","stdout") 0 Public (TCons ("IO","Handle") []) (External "IO.stdout"),Func ("IO","stderr") 0 Public (TCons ("IO","Handle") []) (External "IO.stderr"),Func ("IO","openFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("IO","IOMode") []) (TCons ("Prelude","IO") [TCons ("IO","Handle") []]))) (Rule [] (Var 0)),Func ("IO","hClose") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("IO","hFlush") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("IO","hIsEOF") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("IO","isEOF") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []]) (Rule [] (Var 0)),Func ("IO","hSeek") 3 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("IO","SeekMode") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [] (Var 0)),Func ("IO","hWaitForInput") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []]))) (Rule [] (Var 0)),Func ("IO","hWaitForInputs") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("IO","Handle") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("IO","hReady") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("IO","hGetChar") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("IO","hGetLine") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("IO","hGetContents") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("IO","getContents") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (Rule [] (Var 0)),Func ("IO","hPutChar") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("IO","hPutStr") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("IO","hPutStrLn") 2 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("IO","hPrint") 1 Public (FuncType (TCons ("IO","Handle") []) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("IO","hIsReadable") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("IO","hIsWritable") 1 Public (FuncType (TCons ("IO","Handle") []) (TCons ("Prelude","IO") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/IO.uacy view
@@ -0,0 +1,39 @@+CurryProg "IO"+ ["Prelude"]+ [CType ("IO","Handle") Public [] [],+  CType ("IO","IOMode") Public [] [CCons ("IO","ReadMode") 0 Public [],CCons ("IO","WriteMode") 0 Public [],CCons ("IO","AppendMode") 0 Public []],+  CType ("IO","SeekMode") Public [] [CCons ("IO","AbsoluteSeek") 0 Public [],CCons ("IO","RelativeSeek") 0 Public [],CCons ("IO","SeekFromEnd") 0 Public []]]+ [CFunc ("IO","getContents") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("IO","hGetContents")) (CSymbol ("IO","stdin")))] []]),+  CFunc ("IO","hClose") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hClose"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hFlush") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hFlush"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hGetChar") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hGetChar"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hGetContents") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"eof")) (CApply (CSymbol ("IO","hIsEOF")) (CVar (0,"h"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"eof"))) (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("IO","hClose")) (CVar (0,"h")))) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]"))))) (CDoExpr [CSPat (CPVar (2,"c")) (CApply (CSymbol ("IO","hGetChar")) (CVar (0,"h"))),CSPat (CPVar (3,"cs")) (CApply (CSymbol ("IO","hGetContents")) (CVar (0,"h"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"c"))) (CVar (3,"cs"))))]))])] []]),+  CFunc ("IO","hGetLine") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"c")) (CApply (CSymbol ("IO","hGetChar")) (CVar (0,"h"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\n')))) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]")))) (CDoExpr [CSPat (CPVar (2,"cs")) (CApply (CSymbol ("IO","hGetLine")) (CVar (0,"h"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"c"))) (CVar (2,"cs"))))]))])] []]),+  CFunc ("IO","hIsEOF") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hIsEOF"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hIsReadable") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hIsReadable"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hIsWritable") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hIsWritable"))) (CVar (0,"h")))] []]),+  CFunc ("IO","hPrint") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("IO","hPutStrLn")) (CVar (0,"h")))) (CSymbol ("Prelude","show")))] []]),+  CFunc ("IO","hPutChar") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hPutChar"))) (CVar (0,"h")))) (CVar (1,"c")))] []]),+  CFunc ("IO","hPutStr") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","done"))] [],CRule [CPVar (1,"h"),CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CApply (CSymbol ("IO","hPutChar")) (CVar (1,"h"))) (CVar (2,"c")))) (CApply (CApply (CSymbol ("IO","hPutStr")) (CVar (1,"h"))) (CVar (3,"cs"))))] []]),+  CFunc ("IO","hPutStrLn") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CApply (CSymbol ("IO","hPutStr")) (CVar (0,"h"))) (CVar (1,"s")))) (CApply (CApply (CSymbol ("IO","hPutChar")) (CVar (0,"h"))) (CLit (CCharc '\n'))))] []]),+  CFunc ("IO","hReady") 1 Public (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"h")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("IO","hWaitForInput")) (CVar (0,"h"))) (CLit (CIntc 0)))] []]),+  CFunc ("IO","hSeek") 3 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("IO","SeekMode") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"sm"),CPVar (2,"pos")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hSeek"))) (CVar (0,"h")))) (CVar (1,"sm")))) (CVar (2,"pos")))] []]),+  CFunc ("IO","hWaitForInput") 2 Public (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]))) (CRules CFlex [CRule [CPVar (0,"h"),CPVar (1,"i")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IO","prim_hWaitForInput"))) (CVar (0,"h")))) (CVar (1,"i")))] []]),+  CFunc ("IO","hWaitForInputs") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("IO","Handle") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"handles"),CPVar (1,"timeout")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IO","prim_hWaitForInputs"))) (CVar (0,"handles")))) (CVar (1,"timeout")))] []]),+  CFunc ("IO","isEOF") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("IO","hIsEOF")) (CSymbol ("IO","stdin")))] []]),+  CFunc ("IO","openFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("IO","IOMode") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CRules CFlex [CRule [CPVar (0,"filename"),CPVar (1,"mode")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IO","prim_openFile"))) (CVar (0,"filename")))) (CVar (1,"mode")))] []]),+  CFunc ("IO","prim_hClose") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_hClose"),+  CFunc ("IO","prim_hFlush") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_hFlush"),+  CFunc ("IO","prim_hGetChar") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Char") []])) (CExternal "prim_hGetChar"),+  CFunc ("IO","prim_hIsEOF") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_hIsEOF"),+  CFunc ("IO","prim_hIsReadable") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_hIsReadable"),+  CFunc ("IO","prim_hIsWritable") 1 Private (CFuncType (CTCons ("IO","Handle") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []])) (CExternal "prim_hIsWritable"),+  CFunc ("IO","prim_hPutChar") 2 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_hPutChar"),+  CFunc ("IO","prim_hSeek") 3 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("IO","SeekMode") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CExternal "prim_hSeek"),+  CFunc ("IO","prim_hWaitForInput") 2 Private (CFuncType (CTCons ("IO","Handle") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Bool") []]))) (CExternal "prim_hWaitForInput"),+  CFunc ("IO","prim_hWaitForInputs") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("IO","Handle") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]))) (CExternal "prim_hWaitForInputs"),+  CFunc ("IO","prim_openFile") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("IO","IOMode") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CExternal "prim_openFile"),+  CFunc ("IO","stderr") 0 Public (CTCons ("IO","Handle") []) (CExternal "stderr"),+  CFunc ("IO","stdin") 0 Public (CTCons ("IO","Handle") []) (CExternal "stdin"),+  CFunc ("IO","stdout") 0 Public (CTCons ("IO","Handle") []) (CExternal "stdout")]+ []
+ src/lib/Curry/Module/.curry/IOExts.acy view
@@ -0,0 +1,20 @@+CurryProg "IOExts"+ ["Prelude","System","IO"]+ [CType ("IOExts","IORef") Public [(0,"_")] []]+ [CFunc ("IOExts","connectToCommand") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_connectToCmd"))) (CVar (0,"cmd")))] []]),+  CFunc ("IOExts","exclusiveIO") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"lockfile"),CPVar (1,"action")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CSymbol ("System","system")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '1'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))) (CVar (0,"lockfile")))),CSExpr (CApply (CApply (CSymbol ("Prelude","catchFail")) (CDoExpr [CSPat (CPVar (2,"actionResult")) (CVar (1,"action")),CSExpr (CApply (CSymbol ("System","system")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))) (CVar (0,"lockfile")))),CSExpr (CApply (CSymbol ("Prelude","return")) (CVar (2,"actionResult")))])) (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("System","system")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))) (CVar (0,"lockfile"))))) (CSymbol ("Prelude","failed"))))])] []]),+  CFunc ("IOExts","execCmd") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,,)") [CTCons ("IO","Handle") [],CTCons ("IO","Handle") [],CTCons ("IO","Handle") []]])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_execCmd"))) (CVar (0,"cmd")))] []]),+  CFunc ("IOExts","getAssoc") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPVar (0,"key")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_getAssoc"))) (CVar (0,"key")))] []]),+  CFunc ("IOExts","newIORef") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("IOExts","IORef") [CTVar (0,"a")]])) (CExternal "newIORef"),+  CFunc ("IOExts","prim_connectToCmd") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []])) (CExternal "prim_connectToCmd"),+  CFunc ("IOExts","prim_execCmd") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,,)") [CTCons ("IO","Handle") [],CTCons ("IO","Handle") [],CTCons ("IO","Handle") []]])) (CExternal "prim_execCmd"),+  CFunc ("IOExts","prim_getAssoc") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CExternal "prim_getAssoc"),+  CFunc ("IOExts","prim_readIORef") 1 Private (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "prim_readIORef"),+  CFunc ("IOExts","prim_setAssoc") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_setAssoc"),+  CFunc ("IOExts","prim_writeIORef") 2 Private (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_writeIORef"),+  CFunc ("IOExts","readCompleteFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"s")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CSymbol ("IOExts","f")) (CVar (1,"s"))) (CApply (CSymbol ("Prelude","return")) (CVar (1,"s"))))])] [CLocalFunc (CFunc ("IOExts","f") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"r")] [(CSymbol ("Prelude","success"),CVar (1,"r"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"cs")],CPVar (4,"r")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("IOExts","f")) (CVar (3,"cs"))) (CVar (4,"r")))] []]))]]),+  CFunc ("IOExts","readIORef") 1 Public (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"ref")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IOExts","prim_readIORef"))) (CVar (0,"ref")))] []]),+  CFunc ("IOExts","setAssoc") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_setAssoc"))) (CVar (0,"key")))) (CVar (1,"val")))] []]),+  CFunc ("IOExts","updateFile") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"s")) (CApply (CSymbol ("IOExts","readCompleteFile")) (CVar (1,"file"))),CSExpr (CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (1,"file"))) (CApply (CVar (0,"f")) (CVar (2,"s"))))])] []]),+  CFunc ("IOExts","writeIORef") 2 Public (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"ref"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IOExts","prim_writeIORef"))) (CVar (0,"ref"))) (CVar (1,"val")))] []])]+ []
+ src/lib/Curry/Module/.curry/IOExts.cy view
@@ -0,0 +1,39 @@+Module "IOExts"+(Just (Exporting (8,14) [(Export (QualIdent Nothing (Ident "execCmd" 0))),(Export (QualIdent Nothing (Ident "connectToCommand" 0))),(Export (QualIdent Nothing (Ident "readCompleteFile" 0))),(Export (QualIdent Nothing (Ident "updateFile" 0))),(Export (QualIdent Nothing (Ident "exclusiveIO" 0))),(Export (QualIdent Nothing (Ident "setAssoc" 0))),(Export (QualIdent Nothing (Ident "getAssoc" 0))),(Export (QualIdent Nothing (Ident "IORef" 0))),(Export (QualIdent Nothing (Ident "newIORef" 0))),(Export (QualIdent Nothing (Ident "readIORef" 0))),(Export (QualIdent Nothing (Ident "writeIORef" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "System" False Nothing Nothing)+,(ImportDecl (14,1) "IO" False Nothing (Just (Importing (14,10) [(Import (Ident "Handle" 0))])))+,(DataDecl (107,1) (Ident "IORef" 0) [(Ident "_" 0)] [])+,(TypeSig (23,1) [(Ident "execCmd" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])])))+,(FunctionDecl (24,1) (Ident "execCmd" 0) [(Equation (24,1) (FunLhs (Ident "execCmd" 0) [(VariablePattern (Ident "cmd" 2))]) (SimpleRhs (24,15) (InfixApply (Variable (QualIdent (Just "IOExts") (Ident "prim_execCmd" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "cmd" 2)))) []))])+,(TypeSig (26,1) [(Ident "prim_execCmd" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])])))+,(FlatExternalDecl (27,1) [(Ident "prim_execCmd" 0)])+,(TypeSig (40,1) [(Ident "connectToCommand" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])))+,(FunctionDecl (41,1) (Ident "connectToCommand" 0) [(Equation (41,1) (FunLhs (Ident "connectToCommand" 0) [(VariablePattern (Ident "cmd" 4))]) (SimpleRhs (41,24) (InfixApply (Variable (QualIdent (Just "IOExts") (Ident "prim_connectToCmd" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "cmd" 4)))) []))])+,(TypeSig (43,1) [(Ident "prim_connectToCmd" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])))+,(FlatExternalDecl (44,1) [(Ident "prim_connectToCmd" 0)])+,(TypeSig (52,1) [(Ident "readCompleteFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (53,1) (Ident "readCompleteFile" 0) [(Equation (53,1) (FunLhs (Ident "readCompleteFile" 0) [(VariablePattern (Ident "file" 6))]) (SimpleRhs (53,25) (Do [(StmtBind (VariablePattern (Ident "s" 13)) (Apply (Variable (QualIdent (Just "Prelude") (Ident "readFile" 0))) (Variable (QualIdent Nothing (Ident "file" 6)))))] (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 7))) (Variable (QualIdent Nothing (Ident "s" 13)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Variable (QualIdent Nothing (Ident "s" 13))))))) [(FunctionDecl (57,4) (Ident "f" 7) [(Equation (57,4) (FunLhs (Ident "f" 7) [(ListPattern []),(VariablePattern (Ident "r" 8))]) (SimpleRhs (57,17) (Variable (QualIdent Nothing (Ident "r" 8))) [])),(Equation (58,4) (FunLhs (Ident "f" 7) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 11)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 10)))),(VariablePattern (Ident "r" 10))]) (SimpleRhs (58,17) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 7))) (Variable (QualIdent Nothing (Ident "cs" 10)))) (Variable (QualIdent Nothing (Ident "r" 10)))) []))])]))])+,(TypeSig (64,1) [(Ident "updateFile" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (65,1) (Ident "updateFile" 0) [(Equation (65,1) (FunLhs (Ident "updateFile" 0) [(VariablePattern (Ident "f" 14)),(VariablePattern (Ident "file" 14))]) (SimpleRhs (65,21) (Do [(StmtBind (VariablePattern (Ident "s" 16)) (Apply (Variable (QualIdent (Just "IOExts") (Ident "readCompleteFile" 0))) (Variable (QualIdent Nothing (Ident "file" 14)))))] (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "writeFile" 0))) (Variable (QualIdent Nothing (Ident "file" 14)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 14))) (Variable (QualIdent Nothing (Ident "s" 16))))))) []))])+,(TypeSig (77,1) [(Ident "exclusiveIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (78,1) (Ident "exclusiveIO" 0) [(Equation (78,1) (FunLhs (Ident "exclusiveIO" 0) [(VariablePattern (Ident "lockfile" 17)),(VariablePattern (Ident "action" 17))]) (SimpleRhs (78,31) (Do [(StmtExpr (Apply (Variable (QualIdent (Just "System") (Ident "system" 0))) (Paren (InfixApply (Literal (String "lockfile -1 ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "lockfile" 17)))))))] (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "catchFail" 0))) (Paren (Do [(StmtBind (VariablePattern (Ident "actionResult" 19)) (Variable (QualIdent Nothing (Ident "action" 17)))),(StmtExpr (Apply (Variable (QualIdent (Just "System") (Ident "system" 0))) (Paren (InfixApply (Literal (String "rm -f ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "lockfile" 17)))))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Variable (QualIdent Nothing (Ident "actionResult" 19))))))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "System") (Ident "system" 0))) (Paren (InfixApply (Literal (String "rm -f ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "lockfile" 17)))))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Variable (QualIdent (Just "Prelude") (Ident "failed" 0))))))) []))])+,(TypeSig (89,1) [(Ident "setAssoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (90,1) (Ident "setAssoc" 0) [(Equation (90,1) (FunLhs (Ident "setAssoc" 0) [(VariablePattern (Ident "key" 20)),(VariablePattern (Ident "val" 20))]) (SimpleRhs (90,20) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "IOExts") (Ident "prim_setAssoc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "key" 20))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "val" 20)))) []))])+,(TypeSig (92,1) [(Ident "prim_setAssoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (93,1) [(Ident "prim_setAssoc" 0)])+,(TypeSig (98,1) [(Ident "getAssoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])])))+,(FunctionDecl (99,1) (Ident "getAssoc" 0) [(Equation (99,1) (FunLhs (Ident "getAssoc" 0) [(VariablePattern (Ident "key" 22))]) (SimpleRhs (99,16) (InfixApply (Variable (QualIdent (Just "IOExts") (Ident "prim_getAssoc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "key" 22)))) []))])+,(TypeSig (101,1) [(Ident "prim_getAssoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])])))+,(FlatExternalDecl (102,1) [(Ident "prim_getAssoc" 0)])+,(TypeSig (110,1) [(Ident "newIORef" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "IORef" 0)) [(VariableType (Ident "a" 0))])])))+,(FlatExternalDecl (111,1) [(Ident "newIORef" 0)])+,(TypeSig (114,1) [(Ident "readIORef" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IORef" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (115,1) (Ident "readIORef" 0) [(Equation (115,1) (FunLhs (Ident "readIORef" 0) [(VariablePattern (Ident "ref" 24))]) (SimpleRhs (115,17) (InfixApply (Variable (QualIdent (Just "IOExts") (Ident "prim_readIORef" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "ref" 24)))) []))])+,(TypeSig (117,1) [(Ident "prim_readIORef" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IORef" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (118,1) [(Ident "prim_readIORef" 0)])+,(TypeSig (121,1) [(Ident "writeIORef" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IORef" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (122,1) (Ident "writeIORef" 0) [(Equation (122,1) (FunLhs (Ident "writeIORef" 0) [(VariablePattern (Ident "ref" 26)),(VariablePattern (Ident "val" 26))]) (SimpleRhs (122,22) (Apply (Paren (InfixApply (Variable (QualIdent (Just "IOExts") (Ident "prim_writeIORef" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "ref" 26))))) (Variable (QualIdent Nothing (Ident "val" 26)))) []))])+,(TypeSig (124,1) [(Ident "prim_writeIORef" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IORef" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (125,1) [(Ident "prim_writeIORef" 0)])+]
+ src/lib/Curry/Module/.curry/IOExts.efc view
@@ -0,0 +1,1 @@+Prog "IOExts" ["IO","Prelude","System"] [Type ((Nothing,Nothing,"IOExts","IORef")) Public [0] []] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") []]])),"IOExts","execCmd")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"IO","Handle")) [],TCons ((Nothing,Nothing,"IO","Handle")) [],TCons ((Nothing,Nothing,"IO","Handle")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") []]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") []]])),"IOExts","prim_execCmd")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") [],TCons (Nothing,Nothing,"IO","Handle") []]])),"IOExts","prim_execCmd")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"IO","Handle")) [],TCons ((Nothing,Nothing,"IO","Handle")) [],TCons ((Nothing,Nothing,"IO","Handle")) []]])) (External "IOExts.prim_execCmd"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])),"IOExts","connectToCommand")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IO","Handle")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])),"IOExts","prim_connectToCmd")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])),"IOExts","prim_connectToCmd")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IO","Handle")) []])) (External "IOExts.prim_connectToCmd"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IOExts","readCompleteFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","readFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IOExts","readCompleteFile._#lambda2")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 1) (TVar 1))),"IOExts","readCompleteFile.f.7")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TVar 1) (TVar 1))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TVar 1),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TVar 1),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 1) (TVar 1))),"IOExts","readCompleteFile.f.7")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TVar 1),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IOExts","readCompleteFile._#lambda2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"IOExts","readCompleteFile.f.7")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","updateFile")) 2 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"IOExts","readCompleteFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"IOExts","updateFile._#lambda3")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"IOExts","updateFile._#lambda3")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","writeFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"IOExts","exclusiveIO")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"System","system")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'k'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '1'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","catchFail")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"IOExts","exclusiveIO._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"System","system")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),"Prelude","failed")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 44) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 44]))),"IOExts","exclusiveIO._#lambda4")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 44) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 44]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 44),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 44]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 44]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"System","system")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '-'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Comb FuncCall ((Nothing,Just (FuncType (TVar 44) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 44])),"Prelude","return")) [Var ((Just (TVar 44),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","setAssoc")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","prim_setAssoc")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","prim_setAssoc")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "IOExts.prim_setAssoc"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"IOExts","getAssoc")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"IOExts","prim_getAssoc")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"IOExts","prim_getAssoc")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (External "IOExts.prim_getAssoc"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]])),"IOExts","newIORef")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IOExts","IORef")) [TVar 0]])) (External "IOExts.newIORef"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"IOExts","readIORef")) 1 Public (FuncType (TCons ((Nothing,Nothing,"IOExts","IORef")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"IOExts","prim_readIORef")) [],Var ((Just (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"IOExts","prim_readIORef")) 1 Private (FuncType (TCons ((Nothing,Nothing,"IOExts","IORef")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "IOExts.prim_readIORef"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","writeIORef")) 2 Public (FuncType (TCons ((Nothing,Nothing,"IOExts","IORef")) [TVar 0]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$#")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","prim_writeIORef")) [],Var ((Just (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]),1))],Var ((Just (TVar 0),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","prim_writeIORef")) 2 Private (FuncType (TCons ((Nothing,Nothing,"IOExts","IORef")) [TVar 0]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "IOExts.prim_writeIORef")] []
+ src/lib/Curry/Module/.curry/IOExts.fcy view
@@ -0,0 +1,1 @@+Prog "IOExts" ["IO","Prelude","System"] [Type ("IOExts","IORef") Public [0] []] [Func ("IOExts","execCmd") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,,)") [TCons ("IO","Handle") [],TCons ("IO","Handle") [],TCons ("IO","Handle") []]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("IOExts","prim_execCmd") [],Var 1])),Func ("IOExts","prim_execCmd") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,,)") [TCons ("IO","Handle") [],TCons ("IO","Handle") [],TCons ("IO","Handle") []]])) (External "IOExts.prim_execCmd"),Func ("IOExts","connectToCommand") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("IO","Handle") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("IOExts","prim_connectToCmd") [],Var 1])),Func ("IOExts","prim_connectToCmd") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("IO","Handle") []])) (External "IOExts.prim_connectToCmd"),Func ("IOExts","readCompleteFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","readFile") [Var 1],Comb (FuncPartCall 1) ("IOExts","readCompleteFile._#lambda2") []])),Func ("IOExts","readCompleteFile.f.7") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TVar 1) (TVar 1))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("IOExts","readCompleteFile.f.7") [Var 4,Var 2])])),Func ("IOExts","readCompleteFile._#lambda2") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Comb FuncCall ("IOExts","readCompleteFile.f.7") [Var 1,Comb FuncCall ("Prelude","return") [Var 1]])),Func ("IOExts","updateFile") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("IOExts","readCompleteFile") [Var 2],Comb (FuncPartCall 1) ("IOExts","updateFile._#lambda3") [Var 1,Var 2]])),Func ("IOExts","updateFile._#lambda3") 3 Private (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","writeFile") [Var 2,Comb FuncCall ("Prelude","apply") [Var 1,Var 3]])),Func ("IOExts","exclusiveIO") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("System","system") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'k'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  '1'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]],Var 1]],Comb FuncCall ("Prelude","catchFail") [Comb FuncCall ("Prelude",">>=") [Var 2,Comb (FuncPartCall 1) ("IOExts","exclusiveIO._#lambda4") [Var 1]],Comb FuncCall ("Prelude",">>") [Comb FuncCall ("System","system") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]],Var 1]],Comb FuncCall ("Prelude","failed") []]]])),Func ("IOExts","exclusiveIO._#lambda4") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 44) (TCons ("Prelude","IO") [TVar 44]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("System","system") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '-'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]],Var 1]],Comb FuncCall ("Prelude","return") [Var 2]])),Func ("IOExts","setAssoc") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("IOExts","prim_setAssoc") [],Var 1],Var 2])),Func ("IOExts","prim_setAssoc") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "IOExts.prim_setAssoc"),Func ("IOExts","getAssoc") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("IOExts","prim_getAssoc") [],Var 1])),Func ("IOExts","prim_getAssoc") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (External "IOExts.prim_getAssoc"),Func ("IOExts","newIORef") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("IOExts","IORef") [TVar 0]])) (External "IOExts.newIORef"),Func ("IOExts","readIORef") 1 Public (FuncType (TCons ("IOExts","IORef") [TVar 0]) (TCons ("Prelude","IO") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("IOExts","prim_readIORef") [],Var 1])),Func ("IOExts","prim_readIORef") 1 Private (FuncType (TCons ("IOExts","IORef") [TVar 0]) (TCons ("Prelude","IO") [TVar 0])) (External "IOExts.prim_readIORef"),Func ("IOExts","writeIORef") 2 Public (FuncType (TCons ("IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 2) ("IOExts","prim_writeIORef") [],Var 1],Var 2])),Func ("IOExts","prim_writeIORef") 2 Private (FuncType (TCons ("IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "IOExts.prim_writeIORef")] []
+ src/lib/Curry/Module/.curry/IOExts.fint view
@@ -0,0 +1,1 @@+Prog "IOExts" ["IO","Prelude","System"] [Type ("IOExts","IORef") Public [0] []] [Func ("IOExts","execCmd") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","(,,)") [TCons ("IO","Handle") [],TCons ("IO","Handle") [],TCons ("IO","Handle") []]])) (Rule [] (Var 0)),Func ("IOExts","connectToCommand") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("IO","Handle") []])) (Rule [] (Var 0)),Func ("IOExts","readCompleteFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("IOExts","updateFile") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("IOExts","exclusiveIO") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TVar 0]))) (Rule [] (Var 0)),Func ("IOExts","setAssoc") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("IOExts","getAssoc") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Var 0)),Func ("IOExts","newIORef") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("IOExts","IORef") [TVar 0]])) (External "IOExts.newIORef"),Func ("IOExts","readIORef") 1 Public (FuncType (TCons ("IOExts","IORef") [TVar 0]) (TCons ("Prelude","IO") [TVar 0])) (Rule [] (Var 0)),Func ("IOExts","writeIORef") 2 Public (FuncType (TCons ("IOExts","IORef") [TVar 0]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/IOExts.uacy view
@@ -0,0 +1,20 @@+CurryProg "IOExts"+ ["Prelude","System","IO"]+ [CType ("IOExts","IORef") Public [(0,"_")] []]+ [CFunc ("IOExts","connectToCommand") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_connectToCmd"))) (CVar (0,"cmd")))] []]),+  CFunc ("IOExts","exclusiveIO") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"lockfile"),CPVar (1,"action")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CSymbol ("System","system")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'k'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '1'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))) (CVar (0,"lockfile")))),CSExpr (CApply (CApply (CSymbol ("Prelude","catchFail")) (CDoExpr [CSPat (CPVar (2,"actionResult")) (CVar (1,"action")),CSExpr (CApply (CSymbol ("System","system")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))) (CVar (0,"lockfile")))),CSExpr (CApply (CSymbol ("Prelude","return")) (CVar (2,"actionResult")))])) (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("System","system")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '-'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))) (CVar (0,"lockfile"))))) (CSymbol ("Prelude","failed"))))])] []]),+  CFunc ("IOExts","execCmd") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,,)") [CTCons ("IO","Handle") [],CTCons ("IO","Handle") [],CTCons ("IO","Handle") []]])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_execCmd"))) (CVar (0,"cmd")))] []]),+  CFunc ("IOExts","getAssoc") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","String") []]])) (CRules CFlex [CRule [CPVar (0,"key")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_getAssoc"))) (CVar (0,"key")))] []]),+  CFunc ("IOExts","newIORef") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("IOExts","IORef") [CTVar (0,"a")]])) (CExternal "newIORef"),+  CFunc ("IOExts","prim_connectToCmd") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []])) (CExternal "prim_connectToCmd"),+  CFunc ("IOExts","prim_execCmd") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,,)") [CTCons ("IO","Handle") [],CTCons ("IO","Handle") [],CTCons ("IO","Handle") []]])) (CExternal "prim_execCmd"),+  CFunc ("IOExts","prim_getAssoc") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","String") []]])) (CExternal "prim_getAssoc"),+  CFunc ("IOExts","prim_readIORef") 1 Private (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "prim_readIORef"),+  CFunc ("IOExts","prim_setAssoc") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_setAssoc"),+  CFunc ("IOExts","prim_writeIORef") 2 Private (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_writeIORef"),+  CFunc ("IOExts","readCompleteFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"s")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CSymbol ("IOExts","f")) (CVar (1,"s"))) (CApply (CSymbol ("Prelude","return")) (CVar (1,"s"))))])] [CLocalFunc (CFunc ("IOExts","f") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"r")] [(CSymbol ("Prelude","success"),CVar (1,"r"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"cs")],CPVar (4,"r")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("IOExts","f")) (CVar (3,"cs"))) (CVar (4,"r")))] []]))]]),+  CFunc ("IOExts","readIORef") 1 Public (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"ref")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IOExts","prim_readIORef"))) (CVar (0,"ref")))] []]),+  CFunc ("IOExts","setAssoc") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"key"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("IOExts","prim_setAssoc"))) (CVar (0,"key")))) (CVar (1,"val")))] []]),+  CFunc ("IOExts","updateFile") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"s")) (CApply (CSymbol ("IOExts","readCompleteFile")) (CVar (1,"file"))),CSExpr (CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (1,"file"))) (CApply (CVar (0,"f")) (CVar (2,"s"))))])] []]),+  CFunc ("IOExts","writeIORef") 2 Public (CFuncType (CTCons ("IOExts","IORef") [CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"ref"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("IOExts","prim_writeIORef"))) (CVar (0,"ref"))) (CVar (1,"val")))] []])]+ []
+ src/lib/Curry/Module/.curry/Integer.acy view
@@ -0,0 +1,23 @@+CurryProg "Integer"+ ["Prelude"]+ []+ [CFunc ("Integer","abs") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CApply (CSymbol ("Prelude","negate")) (CVar (0,"n")))) (CVar (0,"n")))] []]),+  CFunc ("Integer","binomial") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"n"))) (CVar (1,"m"))),CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Integer","aux")) (CVar (1,"m"))) (CVar (0,"n")))) (CApply (CSymbol ("Integer","factorial")) (CVar (1,"m"))))] [CLocalFunc (CFunc ("Integer","aux") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (2,"x"),CPVar (3,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"x"))) (CLit (CIntc 0)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"y"))) (CApply (CApply (CSymbol ("Integer","aux")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (2,"x"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"y"))) (CLit (CIntc 1))))))] []]))]]),+  CFunc ("Integer","bitAnd") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CLetDecl [CLocalPat (CPVar (2,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","bitAnd")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (3,"q")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"m"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"p"))) (CVar (3,"q")))))] []]),+  CFunc ("Integer","bitNot") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","aux")) (CLit (CIntc 32))) (CVar (0,"n")))] [CLocalFunc (CFunc ("Integer","aux") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (1,"c"),CPVar (2,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CLetDecl [CLocalPat (CPVar (3,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","aux")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"c"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (2,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (4,"q")) (CApply (CApply (CSymbol ("Prelude","-")) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (2,"m"))) (CLit (CIntc 2)))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"p"))) (CVar (4,"q")))))] []]))]]),+  CFunc ("Integer","bitOr") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CVar (0,"n"))) (CLetDecl [CLocalPat (CPVar (2,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","bitOr")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (3,"q")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"m"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"p"))) (CVar (3,"q")))))] []]),+  CFunc ("Integer","bitTrunc") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","bitAnd")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Integer","pow")) (CLit (CIntc 2))) (CVar (0,"n")))) (CLit (CIntc 1)))) (CVar (1,"m")))] []]),+  CFunc ("Integer","bitXor") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CVar (0,"n"))) (CLetDecl [CLocalPat (CPVar (2,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","bitXor")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (3,"q")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"m"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2))))) (CLit (CIntc 0))) (CLit (CIntc 1))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"p"))) (CVar (3,"q")))))] []]),+  CFunc ("Integer","even") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))] []]),+  CFunc ("Integer","factorial") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CApply (CSymbol ("Integer","factorial")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (0,"n"))) (CLit (CIntc 1))))))] []]),+  CFunc ("Integer","ilog") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CApply (CApply (CSymbol ("Prelude",">")) (CVar (0,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CLit (CIntc 10)))) (CLit (CIntc 0))) (CApply (CApply (CSymbol ("Prelude","+")) (CLit (CIntc 1))) (CApply (CSymbol ("Integer","ilog")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 10))))))] []]),+  CFunc ("Integer","isqrt") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CLit (CIntc 4)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Integer","aux")) (CLit (CIntc 2))) (CVar (0,"n")))))] [CLocalFunc (CFunc ("Integer","aux") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (1,"low"),CPVar (2,"past")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"past"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"low"))) (CLit (CIntc 1))))) (CVar (1,"low"))) (CLetDecl [CLocalPat (CPVar (3,"cand")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"past"))) (CVar (1,"low")))) (CLit (CIntc 2))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"cand"))) (CVar (3,"cand")))) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Integer","aux")) (CVar (1,"low"))) (CVar (3,"cand")))) (CApply (CApply (CSymbol ("Integer","aux")) (CVar (3,"cand"))) (CVar (2,"past"))))))] []]))]]),+  CFunc ("Integer","max") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CVar (1,"m")))) (CVar (1,"m"))) (CVar (0,"n")))] []]),+  CFunc ("Integer","max3") 3 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m"),CPVar (2,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","max")) (CVar (0,"n"))) (CApply (CApply (CSymbol ("Integer","max")) (CVar (1,"m"))) (CVar (2,"p"))))] []]),+  CFunc ("Integer","maxlist") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"n"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (0,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"n"),CPComb ("Prelude",":") [CPVar (2,"m"),CPVar (3,"ns")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","max")) (CVar (1,"n"))) (CApply (CSymbol ("Integer","maxlist")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"m"))) (CVar (3,"ns")))))] []]),+  CFunc ("Integer","min") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CVar (1,"m")))) (CVar (0,"n"))) (CVar (1,"m")))] []]),+  CFunc ("Integer","min3") 3 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m"),CPVar (2,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","min")) (CVar (0,"n"))) (CApply (CApply (CSymbol ("Integer","min")) (CVar (1,"m"))) (CVar (2,"p"))))] []]),+  CFunc ("Integer","minlist") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"n"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (0,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"n"),CPComb ("Prelude",":") [CPVar (2,"m"),CPVar (3,"ns")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","min")) (CVar (1,"n"))) (CApply (CSymbol ("Integer","minlist")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"m"))) (CVar (3,"ns")))))] []]),+  CFunc ("Integer","odd") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))] []]),+  CFunc ("Integer","pow") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"a"),CPVar (1,"b")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (1,"b"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Integer","powaux")) (CLit (CIntc 1))) (CVar (0,"a"))) (CVar (1,"b")))] [CLocalFunc (CFunc ("Integer","powaux") 3 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])))) (CRules CFlex [CRule [CPVar (2,"n"),CPVar (3,"x"),CPVar (4,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"y"))) (CLit (CIntc 0)))) (CVar (2,"n"))) (CApply (CApply (CApply (CSymbol ("Integer","powaux")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (2,"n"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (4,"y"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (3,"x"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"x"))) (CVar (3,"x")))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (4,"y"))) (CLit (CIntc 2)))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/Integer.cy view
@@ -0,0 +1,23 @@+Module "Integer"+(Just (Exporting (11,15) [(Export (QualIdent Nothing (Ident "pow" 0))),(Export (QualIdent Nothing (Ident "ilog" 0))),(Export (QualIdent Nothing (Ident "isqrt" 0))),(Export (QualIdent Nothing (Ident "factorial" 0))),(Export (QualIdent Nothing (Ident "binomial" 0))),(Export (QualIdent Nothing (Ident "abs" 0))),(Export (QualIdent Nothing (Ident "max" 0))),(Export (QualIdent Nothing (Ident "min" 0))),(Export (QualIdent Nothing (Ident "max3" 0))),(Export (QualIdent Nothing (Ident "min3" 0))),(Export (QualIdent Nothing (Ident "maxlist" 0))),(Export (QualIdent Nothing (Ident "minlist" 0))),(Export (QualIdent Nothing (Ident "bitTrunc" 0))),(Export (QualIdent Nothing (Ident "bitAnd" 0))),(Export (QualIdent Nothing (Ident "bitOr" 0))),(Export (QualIdent Nothing (Ident "bitNot" 0))),(Export (QualIdent Nothing (Ident "bitXor" 0))),(Export (QualIdent Nothing (Ident "even" 0))),(Export (QualIdent Nothing (Ident "odd" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(FunctionDecl (29,1) (Ident "pow" 0) [(Equation (29,1) (FunLhs (Ident "pow" 0) [(VariablePattern (Ident "a" 2)),(VariablePattern (Ident "b" 2))]) (GuardedRhs [(CondExpr (29,9) (InfixApply (Variable (QualIdent Nothing (Ident "b" 2))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 11) 0))) (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "powaux" 3))) (Literal (Int (Ident "_" 12) 1))) (Variable (QualIdent Nothing (Ident "a" 2)))) (Variable (QualIdent Nothing (Ident "b" 2)))))] [(FunctionDecl (31,5) (Ident "powaux" 3) [(Equation (31,5) (FunLhs (Ident "powaux" 3) [(VariablePattern (Ident "n" 4)),(VariablePattern (Ident "x" 4)),(VariablePattern (Ident "y" 4))]) (SimpleRhs (31,20) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "y" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 6) 0))) (Variable (QualIdent Nothing (Ident "n" 4))) (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "powaux" 3))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (IfThenElse (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "y" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 7) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 8) 1)))) (Variable (QualIdent Nothing (Ident "x" 4))) (Literal (Int (Ident "_" 9) 1)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "x" 4)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 10) 2)))))) []))])]))])+,(FunctionDecl (45,1) (Ident "ilog" 0) [(Equation (45,1) (FunLhs (Ident "ilog" 0) [(VariablePattern (Ident "n" 13))]) (GuardedRhs [(CondExpr (45,8) (InfixApply (Variable (QualIdent Nothing (Ident "n" 13))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 15) 0))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 13))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 16) 10))) (Literal (Int (Ident "_" 17) 0)) (InfixApply (Literal (Int (Ident "_" 18) 1)) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Variable (QualIdent (Just "Integer") (Ident "ilog" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 13))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 19) 10))))))))] []))])+,(FunctionDecl (55,1) (Ident "isqrt" 0) [(Equation (55,1) (FunLhs (Ident "isqrt" 0) [(VariablePattern (Ident "n" 20))]) (GuardedRhs [(CondExpr (55,9) (InfixApply (Variable (QualIdent Nothing (Ident "n" 20))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 28) 0))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 20))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 29) 0))) (Literal (Int (Ident "_" 30) 0)) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 20))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 31) 4))) (Literal (Int (Ident "_" 32) 1)) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 21))) (Literal (Int (Ident "_" 33) 2))) (Variable (QualIdent Nothing (Ident "n" 20)))))))] [(FunctionDecl (59,9) (Ident "aux" 21) [(Equation (59,9) (FunLhs (Ident "aux" 21) [(VariablePattern (Ident "low" 22)),(VariablePattern (Ident "past" 22))]) (SimpleRhs (60,11) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "past" 22))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "low" 22))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 24) 1)))) (Variable (QualIdent Nothing (Ident "low" 22))) (Let [(PatternDecl (61,20) (VariablePattern (Ident "cand" 25)) (SimpleRhs (61,27) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "past" 22))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "low" 22))))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 27) 2))) []))] (IfThenElse (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "cand" 25))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "cand" 25)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Variable (QualIdent Nothing (Ident "n" 20)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 21))) (Variable (QualIdent Nothing (Ident "low" 22)))) (Variable (QualIdent Nothing (Ident "cand" 25)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 21))) (Variable (QualIdent Nothing (Ident "cand" 25)))) (Variable (QualIdent Nothing (Ident "past" 22))))))) []))])]))])+,(FunctionDecl (70,1) (Ident "factorial" 0) [(Equation (70,1) (FunLhs (Ident "factorial" 0) [(VariablePattern (Ident "n" 34))]) (GuardedRhs [(CondExpr (70,13) (InfixApply (Variable (QualIdent Nothing (Ident "n" 34))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 36) 0))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 34))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 37) 0))) (Literal (Int (Ident "_" 38) 1)) (InfixApply (Variable (QualIdent Nothing (Ident "n" 34))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Variable (QualIdent (Just "Integer") (Ident "factorial" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 34))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 39) 1))))))))] []))])+,(FunctionDecl (80,1) (Ident "binomial" 0) [(Equation (80,1) (FunLhs (Ident "binomial" 0) [(VariablePattern (Ident "n" 40)),(VariablePattern (Ident "m" 40))]) (GuardedRhs [(CondExpr (80,14) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 40))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 48) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "n" 40))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Variable (QualIdent Nothing (Ident "m" 40))))) (InfixApply (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 41))) (Variable (QualIdent Nothing (Ident "m" 40)))) (Variable (QualIdent Nothing (Ident "n" 40)))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Apply (Variable (QualIdent (Just "Integer") (Ident "factorial" 0))) (Variable (QualIdent Nothing (Ident "m" 40))))))] [(FunctionDecl (81,9) (Ident "aux" 41) [(Equation (81,9) (FunLhs (Ident "aux" 41) [(VariablePattern (Ident "x" 42)),(VariablePattern (Ident "y" 42))]) (SimpleRhs (81,19) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "x" 42))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 44) 0))) (Literal (Int (Ident "_" 45) 1)) (InfixApply (Variable (QualIdent Nothing (Ident "y" 42))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 41))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 42))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 46) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 42))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 47) 1))))))) []))])]))])+,(FunctionDecl (88,1) (Ident "abs" 0) [(Equation (88,1) (FunLhs (Ident "abs" 0) [(VariablePattern (Ident "n" 49))]) (SimpleRhs (88,9) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 49))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 51) 0))) (UnaryMinus (Ident "-" 0) (Variable (QualIdent Nothing (Ident "n" 49)))) (Variable (QualIdent Nothing (Ident "n" 49)))) []))])+,(FunctionDecl (96,1) (Ident "max" 0) [(Equation (96,1) (FunLhs (Ident "max" 0) [(VariablePattern (Ident "n" 52)),(VariablePattern (Ident "m" 52))]) (SimpleRhs (96,11) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 52))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "m" 52)))) (Variable (QualIdent Nothing (Ident "m" 52))) (Variable (QualIdent Nothing (Ident "n" 52)))) []))])+,(FunctionDecl (104,1) (Ident "min" 0) [(Equation (104,1) (FunLhs (Ident "min" 0) [(VariablePattern (Ident "n" 54)),(VariablePattern (Ident "m" 54))]) (SimpleRhs (104,11) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 54))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "m" 54)))) (Variable (QualIdent Nothing (Ident "n" 54))) (Variable (QualIdent Nothing (Ident "m" 54)))) []))])+,(FunctionDecl (113,1) (Ident "max3" 0) [(Equation (113,1) (FunLhs (Ident "max3" 0) [(VariablePattern (Ident "n" 56)),(VariablePattern (Ident "m" 56)),(VariablePattern (Ident "p" 56))]) (SimpleRhs (113,14) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "max" 0))) (Variable (QualIdent Nothing (Ident "n" 56)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "max" 0))) (Variable (QualIdent Nothing (Ident "m" 56)))) (Variable (QualIdent Nothing (Ident "p" 56)))))) []))])+,(FunctionDecl (122,1) (Ident "min3" 0) [(Equation (122,1) (FunLhs (Ident "min3" 0) [(VariablePattern (Ident "n" 58)),(VariablePattern (Ident "m" 58)),(VariablePattern (Ident "p" 58))]) (SimpleRhs (122,14) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "min" 0))) (Variable (QualIdent Nothing (Ident "n" 58)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "min" 0))) (Variable (QualIdent Nothing (Ident "m" 58)))) (Variable (QualIdent Nothing (Ident "p" 58)))))) []))])+,(FunctionDecl (130,1) (Ident "maxlist" 0) [(Equation (130,1) (FunLhs (Ident "maxlist" 0) [(ListPattern [(VariablePattern (Ident "n" 60))])]) (SimpleRhs (130,15) (Variable (QualIdent Nothing (Ident "n" 60))) [])),(Equation (131,1) (FunLhs (Ident "maxlist" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "n" 62)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "m" 62)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ns" 62)))))]) (SimpleRhs (131,20) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "max" 0))) (Variable (QualIdent Nothing (Ident "n" 62)))) (Paren (Apply (Variable (QualIdent (Just "Integer") (Ident "maxlist" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 62))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ns" 62)))))))) []))])+,(FunctionDecl (139,1) (Ident "minlist" 0) [(Equation (139,1) (FunLhs (Ident "minlist" 0) [(ListPattern [(VariablePattern (Ident "n" 64))])]) (SimpleRhs (139,15) (Variable (QualIdent Nothing (Ident "n" 64))) [])),(Equation (140,1) (FunLhs (Ident "minlist" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "n" 66)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "m" 66)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ns" 66)))))]) (SimpleRhs (140,20) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "min" 0))) (Variable (QualIdent Nothing (Ident "n" 66)))) (Paren (Apply (Variable (QualIdent (Just "Integer") (Ident "minlist" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 66))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ns" 66)))))))) []))])+,(FunctionDecl (149,1) (Ident "bitTrunc" 0) [(Equation (149,1) (FunLhs (Ident "bitTrunc" 0) [(VariablePattern (Ident "n" 68)),(VariablePattern (Ident "m" 68))]) (SimpleRhs (149,16) (Apply (Apply (Variable (QualIdent (Just "Integer") (Ident "bitAnd" 0))) (Paren (InfixApply (Apply (Apply (Variable (QualIdent (Just "Integer") (Ident "pow" 0))) (Literal (Int (Ident "_" 70) 2))) (Variable (QualIdent Nothing (Ident "n" 68)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 71) 1))))) (Variable (QualIdent Nothing (Ident "m" 68)))) []))])+,(FunctionDecl (157,1) (Ident "bitAnd" 0) [(Equation (157,1) (FunLhs (Ident "bitAnd" 0) [(VariablePattern (Ident "n" 72)),(VariablePattern (Ident "m" 72))]) (SimpleRhs (157,14) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "m" 72))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 74) 0))) (Literal (Int (Ident "_" 75) 0)) (Let [(PatternDecl (158,23) (VariablePattern (Ident "p" 76)) (SimpleRhs (158,27) (InfixApply (Literal (Int (Ident "_" 78) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Apply (Variable (QualIdent (Just "Integer") (Ident "bitAnd" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 72))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 79) 2))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 72))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 80) 2)))))) [])),(PatternDecl (159,23) (VariablePattern (Ident "q" 76)) (SimpleRhs (159,27) (IfThenElse (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 72))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 82) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 83) 0))) (Literal (Int (Ident "_" 84) 0)) (InfixApply (Variable (QualIdent Nothing (Ident "n" 72))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 85) 2)))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "p" 76))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "q" 76)))))) []))])+,(FunctionDecl (168,1) (Ident "bitOr" 0) [(Equation (168,1) (FunLhs (Ident "bitOr" 0) [(VariablePattern (Ident "n" 86)),(VariablePattern (Ident "m" 86))]) (SimpleRhs (168,13) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "m" 86))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 88) 0))) (Variable (QualIdent Nothing (Ident "n" 86))) (Let [(PatternDecl (169,22) (VariablePattern (Ident "p" 89)) (SimpleRhs (169,26) (InfixApply (Literal (Int (Ident "_" 91) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Apply (Variable (QualIdent (Just "Integer") (Ident "bitOr" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 86))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 92) 2))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 86))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 93) 2)))))) [])),(PatternDecl (170,22) (VariablePattern (Ident "q" 89)) (SimpleRhs (170,26) (IfThenElse (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 86))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 95) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 96) 1))) (Literal (Int (Ident "_" 97) 1)) (InfixApply (Variable (QualIdent Nothing (Ident "n" 86))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 98) 2)))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "p" 89))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "q" 89)))))) []))])+,(FunctionDecl (180,1) (Ident "bitNot" 0) [(Equation (180,1) (FunLhs (Ident "bitNot" 0) [(VariablePattern (Ident "n" 99))]) (SimpleRhs (180,12) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 100))) (Literal (Int (Ident "_" 113) 32))) (Variable (QualIdent Nothing (Ident "n" 99)))) [(FunctionDecl (181,9) (Ident "aux" 100) [(Equation (181,9) (FunLhs (Ident "aux" 100) [(VariablePattern (Ident "c" 101)),(VariablePattern (Ident "m" 101))]) (SimpleRhs (181,19) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 101))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 103) 0))) (Literal (Int (Ident "_" 104) 0)) (Let [(PatternDecl (182,28) (VariablePattern (Ident "p" 105)) (SimpleRhs (182,32) (InfixApply (Literal (Int (Ident "_" 107) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "aux" 100))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "c" 101))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 108) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 101))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 109) 2)))))) [])),(PatternDecl (183,28) (VariablePattern (Ident "q" 105)) (SimpleRhs (183,32) (InfixApply (Literal (Int (Ident "_" 111) 1)) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "m" 101))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 112) 2)))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "p" 105))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "q" 105)))))) []))])]))])+,(FunctionDecl (192,1) (Ident "bitXor" 0) [(Equation (192,1) (FunLhs (Ident "bitXor" 0) [(VariablePattern (Ident "n" 114)),(VariablePattern (Ident "m" 114))]) (SimpleRhs (192,14) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "m" 114))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 116) 0))) (Variable (QualIdent Nothing (Ident "n" 114))) (Let [(PatternDecl (193,23) (VariablePattern (Ident "p" 117)) (SimpleRhs (193,27) (InfixApply (Literal (Int (Ident "_" 119) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Apply (Apply (Variable (QualIdent (Just "Integer") (Ident "bitXor" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 114))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 120) 2))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 114))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 121) 2)))))) [])),(PatternDecl (194,23) (VariablePattern (Ident "q" 117)) (SimpleRhs (194,27) (IfThenElse (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 114))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 123) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "n" 114))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 124) 2)))) (Literal (Int (Ident "_" 125) 0)) (Literal (Int (Ident "_" 126) 1))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "p" 117))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "q" 117)))))) []))])+,(FunctionDecl (202,1) (Ident "even" 0) [(Equation (202,1) (FunLhs (Ident "even" 0) [(VariablePattern (Ident "n" 127))]) (SimpleRhs (202,10) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 127))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 129) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 130) 0))) []))])+,(FunctionDecl (209,1) (Ident "odd" 0) [(Equation (209,1) (FunLhs (Ident "odd" 0) [(VariablePattern (Ident "n" 131))]) (SimpleRhs (209,9) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 131))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 133) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Literal (Int (Ident "_" 134) 0))) []))])+]
+ src/lib/Curry/Module/.curry/Integer.efc view
@@ -0,0 +1,1 @@+Prog "Integer" ["Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","pow")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","pow.powaux.3")) [Lit (Intc  1),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","pow.powaux.3")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","pow.powaux.3")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Lit (Intc  1)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Lit (Intc  1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","ilog")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  10)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Lit (Intc  1),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","ilog")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  10)]]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","isqrt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  4)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  1)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","isqrt.aux.21")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","isqrt.aux.21")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Lit (Intc  2)])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","isqrt.aux.21")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","isqrt.aux.21")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))])]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","factorial")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  1)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","factorial")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","binomial")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","binomial.aux.41")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","factorial")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","binomial.aux.41")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  1)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","binomial.aux.41")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","abs")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","max")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","min")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","max3")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","max")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","max")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Integer","min3")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","min")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","min")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","maxlist")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","max")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","maxlist")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","minlist")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","min")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","minlist")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitTrunc")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitAnd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","pow")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitAnd")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitAnd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)],Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)])])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))])))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitOr")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitOr")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)],Lit (Intc  1)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  1)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)])])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))])))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Integer","bitNot")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitNot.aux.100")) [Lit (Intc  32),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitNot.aux.100")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitNot.aux.100")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Lit (Intc  1),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))])))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitXor")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Integer","bitXor")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Lit (Intc  1))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))])))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","even")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Integer","odd")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Lit (Intc  0)]))] []
+ src/lib/Curry/Module/.curry/Integer.fcy view
@@ -0,0 +1,1 @@+Prog "Integer" ["Prelude"] [] [Func ("Integer","pow") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude",">=") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Integer","pow.powaux.3") [Lit (Intc  1),Var 1,Var 2]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])),Func ("Integer","pow.powaux.3") 3 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Integer","pow.powaux.3") [Comb FuncCall ("Prelude","*") [Var 1,Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 3,Lit (Intc  2)],Lit (Intc  1)]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Lit (Intc  1))]],Comb FuncCall ("Prelude","*") [Var 2,Var 2],Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)]])])),Func ("Integer","ilog") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 1,Lit (Intc  10)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","+") [Lit (Intc  1),Comb FuncCall ("Integer","ilog") [Comb FuncCall ("Prelude","div") [Var 1,Lit (Intc  10)]]])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])),Func ("Integer","isqrt") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude",">=") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 1,Lit (Intc  4)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  1)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Integer","isqrt.aux.21") [Var 1,Lit (Intc  2),Var 1])])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])),Func ("Integer","isqrt.aux.21") 3 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Comb FuncCall ("Prelude","+") [Var 2,Lit (Intc  1)]]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Let [(4,Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","+") [Var 3,Var 2],Lit (Intc  2)])] (Case  Rigid (Comb FuncCall ("Prelude",">") [Comb FuncCall ("Prelude","*") [Var 4,Var 4],Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Integer","isqrt.aux.21") [Var 1,Var 2,Var 4]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Integer","isqrt.aux.21") [Var 1,Var 4,Var 3])]))])),Func ("Integer","factorial") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude",">=") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  1)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","*") [Var 1,Comb FuncCall ("Integer","factorial") [Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)]]])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])),Func ("Integer","binomial") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">") [Var 2,Lit (Intc  0)],Comb FuncCall ("Prelude",">=") [Var 1,Var 2]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","div") [Comb FuncCall ("Integer","binomial.aux.41") [Var 2,Var 1],Comb FuncCall ("Integer","factorial") [Var 2]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])),Func ("Integer","binomial.aux.41") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  1)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","*") [Var 2,Comb FuncCall ("Integer","binomial.aux.41") [Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)],Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  1)]]])])),Func ("Integer","abs") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","negate") [Var 1]),Branch (Pattern ("Prelude","False") []) (Var 1)])),Func ("Integer","max") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Var 1)])),Func ("Integer","min") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Var 2)])),Func ("Integer","max3") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [1,2,3] (Comb FuncCall ("Integer","max") [Var 1,Comb FuncCall ("Integer","max") [Var 2,Var 3]])),Func ("Integer","min3") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [1,2,3] (Comb FuncCall ("Integer","min") [Var 1,Comb FuncCall ("Integer","min") [Var 2,Var 3]])),Func ("Integer","maxlist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Integer","max") [Var 2,Comb FuncCall ("Integer","maxlist") [Comb ConsCall ("Prelude",":") [Var 4,Var 5]]])])])),Func ("Integer","minlist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Integer","min") [Var 2,Comb FuncCall ("Integer","minlist") [Comb ConsCall ("Prelude",":") [Var 4,Var 5]]])])])),Func ("Integer","bitTrunc") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Comb FuncCall ("Integer","bitAnd") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Integer","pow") [Lit (Intc  2),Var 1],Lit (Intc  1)],Var 2])),Func ("Integer","bitAnd") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Comb FuncCall ("Integer","bitAnd") [Comb FuncCall ("Prelude","div") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","div") [Var 2,Lit (Intc  2)]]])] (Let [(4,Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  2)],Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)])])] (Comb FuncCall ("Prelude","+") [Var 3,Var 4])))])),Func ("Integer","bitOr") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Comb FuncCall ("Integer","bitOr") [Comb FuncCall ("Prelude","div") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","div") [Var 2,Lit (Intc  2)]]])] (Let [(4,Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  2)],Lit (Intc  1)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  1)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)])])] (Comb FuncCall ("Prelude","+") [Var 3,Var 4])))])),Func ("Integer","bitNot") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Integer","bitNot.aux.100") [Lit (Intc  32),Var 1])),Func ("Integer","bitNot.aux.100") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Comb FuncCall ("Integer","bitNot.aux.100") [Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)],Comb FuncCall ("Prelude","div") [Var 2,Lit (Intc  2)]]])] (Let [(4,Comb FuncCall ("Prelude","-") [Lit (Intc  1),Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  2)]])] (Comb FuncCall ("Prelude","+") [Var 3,Var 4])))])),Func ("Integer","bitXor") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Comb FuncCall ("Integer","bitXor") [Comb FuncCall ("Prelude","div") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","div") [Var 2,Lit (Intc  2)]]])] (Let [(4,Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  2)],Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)]]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Lit (Intc  1))])] (Comb FuncCall ("Prelude","+") [Var 3,Var 4])))])),Func ("Integer","even") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)],Lit (Intc  0)])),Func ("Integer","odd") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","/=") [Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)],Lit (Intc  0)]))] []
+ src/lib/Curry/Module/.curry/Integer.fint view
@@ -0,0 +1,1 @@+Prog "Integer" ["Prelude"] [] [Func ("Integer","pow") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","ilog") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","isqrt") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","factorial") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","binomial") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","abs") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","max") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","min") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","max3") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [] (Var 0)),Func ("Integer","min3") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [] (Var 0)),Func ("Integer","maxlist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","minlist") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","bitTrunc") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","bitAnd") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","bitOr") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","bitNot") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Integer","bitXor") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Integer","even") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Integer","odd") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Integer.uacy view
@@ -0,0 +1,23 @@+CurryProg "Integer"+ ["Prelude"]+ []+ [CFunc ("Integer","abs") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CApply (CSymbol ("Prelude","negate")) (CVar (0,"n")))) (CVar (0,"n")))] []]),+  CFunc ("Integer","binomial") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"n"))) (CVar (1,"m"))),CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Integer","aux")) (CVar (1,"m"))) (CVar (0,"n")))) (CApply (CSymbol ("Integer","factorial")) (CVar (1,"m"))))] [CLocalFunc (CFunc ("Integer","aux") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"x"),CPVar (3,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"x"))) (CLit (CIntc 0)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"y"))) (CApply (CApply (CSymbol ("Integer","aux")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (2,"x"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"y"))) (CLit (CIntc 1))))))] []]))]]),+  CFunc ("Integer","bitAnd") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CLetDecl [CLocalPat (CPVar (2,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","bitAnd")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (3,"q")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"m"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"p"))) (CVar (3,"q")))))] []]),+  CFunc ("Integer","bitNot") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","aux")) (CLit (CIntc 32))) (CVar (0,"n")))] [CLocalFunc (CFunc ("Integer","aux") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (1,"c"),CPVar (2,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CLetDecl [CLocalPat (CPVar (3,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","aux")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"c"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (2,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (4,"q")) (CApply (CApply (CSymbol ("Prelude","-")) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (2,"m"))) (CLit (CIntc 2)))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"p"))) (CVar (4,"q")))))] []]))]]),+  CFunc ("Integer","bitOr") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CVar (0,"n"))) (CLetDecl [CLocalPat (CPVar (2,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","bitOr")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (3,"q")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"m"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"p"))) (CVar (3,"q")))))] []]),+  CFunc ("Integer","bitTrunc") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Integer","bitAnd")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Integer","pow")) (CLit (CIntc 2))) (CVar (0,"n")))) (CLit (CIntc 1)))) (CVar (1,"m")))] []]),+  CFunc ("Integer","bitXor") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CVar (0,"n"))) (CLetDecl [CLocalPat (CPVar (2,"p")) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Integer","bitXor")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"m"))) (CLit (CIntc 2))))) [],CLocalPat (CPVar (3,"q")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"m"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2))))) (CLit (CIntc 0))) (CLit (CIntc 1))) []] (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"p"))) (CVar (3,"q")))))] []]),+  CFunc ("Integer","even") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))] []]),+  CFunc ("Integer","factorial") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CApply (CSymbol ("Integer","factorial")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (0,"n"))) (CLit (CIntc 1))))))] []]),+  CFunc ("Integer","ilog") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CApply (CApply (CSymbol ("Prelude",">")) (CVar (0,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CLit (CIntc 10)))) (CLit (CIntc 0))) (CApply (CApply (CSymbol ("Prelude","+")) (CLit (CIntc 1))) (CApply (CSymbol ("Integer","ilog")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"n"))) (CLit (CIntc 10))))))] []]),+  CFunc ("Integer","isqrt") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (0,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CLit (CIntc 0))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CLit (CIntc 4)))) (CLit (CIntc 1))) (CApply (CApply (CSymbol ("Integer","aux")) (CLit (CIntc 2))) (CVar (0,"n")))))] [CLocalFunc (CFunc ("Integer","aux") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (1,"low"),CPVar (2,"past")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"past"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"low"))) (CLit (CIntc 1))))) (CVar (1,"low"))) (CLetDecl [CLocalPat (CPVar (3,"cand")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"past"))) (CVar (1,"low")))) (CLit (CIntc 2))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"cand"))) (CVar (3,"cand")))) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Integer","aux")) (CVar (1,"low"))) (CVar (3,"cand")))) (CApply (CApply (CSymbol ("Integer","aux")) (CVar (3,"cand"))) (CVar (2,"past"))))))] []]))]]),+  CFunc ("Integer","max") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CVar (1,"m")))) (CVar (1,"m"))) (CVar (0,"n")))] []]),+  CFunc ("Integer","max3") 3 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m"),CPVar (2,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","max")) (CVar (0,"n"))) (CApply (CApply (CSymbol ("Prelude","max")) (CVar (1,"m"))) (CVar (2,"p"))))] []]),+  CFunc ("Integer","maxlist") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"n"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (0,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"n"),CPComb ("Prelude",":") [CPVar (2,"m"),CPVar (3,"ns")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","max")) (CVar (1,"n"))) (CApply (CSymbol ("Integer","maxlist")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"m"))) (CVar (3,"ns")))))] []]),+  CFunc ("Integer","min") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"n"))) (CVar (1,"m")))) (CVar (0,"n"))) (CVar (1,"m")))] []]),+  CFunc ("Integer","min3") 3 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m"),CPVar (2,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","min")) (CVar (0,"n"))) (CApply (CApply (CSymbol ("Prelude","min")) (CVar (1,"m"))) (CVar (2,"p"))))] []]),+  CFunc ("Integer","minlist") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"n"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (0,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"n"),CPComb ("Prelude",":") [CPVar (2,"m"),CPVar (3,"ns")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","min")) (CVar (1,"n"))) (CApply (CSymbol ("Integer","minlist")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"m"))) (CVar (3,"ns")))))] []]),+  CFunc ("Integer","odd") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"n"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))] []]),+  CFunc ("Integer","pow") 2 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"a"),CPVar (1,"b")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (1,"b"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Integer","powaux")) (CLit (CIntc 1))) (CVar (0,"a"))) (CVar (1,"b")))] [CLocalFunc (CFunc ("Integer","powaux") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"n"),CPVar (3,"x"),CPVar (4,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"y"))) (CLit (CIntc 0)))) (CVar (2,"n"))) (CApply (CApply (CApply (CSymbol ("Integer","powaux")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (2,"n"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (4,"y"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (3,"x"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"x"))) (CVar (3,"x")))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (4,"y"))) (CLit (CIntc 2)))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/Interactive.acy view
@@ -0,0 +1,7 @@+CurryProg "Interactive"+ ["Prelude"]+ []+ [CFunc ("Interactive","interactiveSols") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CSymbol ("Prelude","[]"))))))))))))))))))))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CSymbol ("Interactive","printTerm")) (CVar (0,"x"))),CSExpr (CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '?'))) (CSymbol ("Prelude","[]")))))))),CSPat (CPVar (2,"line")) (CSymbol ("Prelude","getLine")),CSExpr (CCase (CVar (2,"line")) [CBranch (CPComb ("Prelude",":") [CPLit (CCharc 'n'),CPVar (3,"_")]) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","()"))),CBranch (CPComb ("Prelude",":") [CPLit (CCharc 'N'),CPVar (4,"_")]) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","()"))),CBranch (CPVar (5,"_")) (CApply (CSymbol ("Interactive","interactiveSols")) (CVar (1,"xs")))])])] []]),+  CFunc ("Interactive","printIO") 1 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"act")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CVar (0,"act"))) (CLambda [CPVar (1,"x")] (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putStr")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Interactive","printTerm"))) (CVar (1,"x"))))))] []]),+  CFunc ("Interactive","printTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "printTerm")]+ []
+ src/lib/Curry/Module/.curry/Interactive.cy view
@@ -0,0 +1,10 @@+Module "Interactive"+Nothing+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(TypeSig (3,1) [(Ident "interactiveSols" 0)] (ArrowType (ListType (VariableType (Ident "_" 0))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (4,1) (Ident "interactiveSols" 0) [(Equation (4,1) (FunLhs (Ident "interactiveSols" 0) [(ListPattern [])]) (SimpleRhs (4,22) (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (Literal (String "No more Solutions"))) [])),(Equation (5,1) (FunLhs (Ident "interactiveSols" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 4)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 4))))]) (SimpleRhs (5,26) (Do [(StmtExpr (Apply (Variable (QualIdent (Just "Interactive") (Ident "printTerm" 0))) (Variable (QualIdent Nothing (Ident "x" 4))))),(StmtExpr (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (Literal (String "More?")))),(StmtBind (VariablePattern (Ident "line" 6)) (Variable (QualIdent (Just "Prelude") (Ident "getLine" 0))))] (Case (Variable (QualIdent Nothing (Ident "line" 6))) [(Alt (10,4) (InfixPattern (LiteralPattern (Char 'n')) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 8))) (SimpleRhs (10,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [])) [])),(Alt (11,4) (InfixPattern (LiteralPattern (Char 'N')) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 11))) (SimpleRhs (11,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [])) [])),(Alt (12,4) (VariablePattern (Ident "_" 14)) (SimpleRhs (12,9) (Apply (Variable (QualIdent (Just "Interactive") (Ident "interactiveSols" 0))) (Variable (QualIdent Nothing (Ident "xs" 4)))) []))])) []))])+,(TypeSig (14,1) [(Ident "printIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (15,1) (Ident "printIO" 0) [(Equation (15,1) (FunLhs (Ident "printIO" 0) [(VariablePattern (Ident "act" 16))]) (SimpleRhs (15,15) (InfixApply (Variable (QualIdent Nothing (Ident "act" 16))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Lambda [(VariablePattern (Ident "x" 18))] (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (Literal (String "IO: "))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Interactive") (Ident "printTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!!" 0))) (Variable (QualIdent Nothing (Ident "x" 18)))))))) []))])+,(TypeSig (17,1) [(Ident "printTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (18,1) [(Ident "printTerm" 0)])+]
+ src/lib/Curry/Module/.curry/Interactive.efc view
@@ -0,0 +1,1 @@+Prog "Interactive" ["Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","interactiveSols")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","printTerm")) [Var ((Just (TVar 0),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '?'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","getLine")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Interactive","interactiveSols._#lambda2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Interactive","interactiveSols._#lambda2")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 5]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3)),Lit (Charc  'n')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","()") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","()") []),"Prelude","()")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3)),Lit (Charc  'N')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","()") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","()") []),"Prelude","()")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","interactiveSols")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]),1))])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","interactiveSols")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]),1))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","printIO")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","printIO._#lambda4")) []])),Func ((Nothing,Just (FuncType (TVar 25) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","printIO._#lambda4")) 1 Private (FuncType (TVar 25) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TVar 25),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'I'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 25) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TVar 25) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$!!")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 25) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","printTerm")) [],Var ((Just (TVar 25),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Interactive","printTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "Interactive.printTerm")] []
+ src/lib/Curry/Module/.curry/Interactive.fcy view
@@ -0,0 +1,1 @@+Prog "Interactive" ["Prelude"] [] [Func ("Interactive","interactiveSols") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","putStrLn") [Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude",":") [2,3]) (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Interactive","printTerm") [Var 2],Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Prelude","putStrLn") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '?'),Comb ConsCall ("Prelude","[]") []]]]]]],Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","getLine") [],Comb (FuncPartCall 1) ("Interactive","interactiveSols._#lambda2") [Var 3]]]])])),Func ("Interactive","interactiveSols._#lambda2") 2 Private (FuncType (TCons ("Prelude","[]") [TVar 5]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Charc  'n')]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","()") []]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Charc  'N')]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","()") []]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Interactive","interactiveSols") [Var 1])])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Interactive","interactiveSols") [Var 1])])),Func ("Interactive","printIO") 1 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Var 1,Comb (FuncPartCall 1) ("Interactive","printIO._#lambda4") []])),Func ("Interactive","printIO._#lambda4") 1 Private (FuncType (TVar 25) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Prelude","putStr") [Comb ConsCall ("Prelude",":") [Lit (Charc  'I'),Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]],Comb FuncCall ("Prelude","$!!") [Comb (FuncPartCall 1) ("Interactive","printTerm") [],Var 1]])),Func ("Interactive","printTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Interactive.printTerm")] []
+ src/lib/Curry/Module/.curry/Interactive.fint view
@@ -0,0 +1,1 @@+Prog "Interactive" ["Prelude"] [] [Func ("Interactive","interactiveSols") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Interactive","printIO") 1 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Interactive","printTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Interactive.printTerm")] []
+ src/lib/Curry/Module/.curry/Interactive.uacy view
@@ -0,0 +1,7 @@+CurryProg "Interactive"+ ["Prelude"]+ []+ [CFunc ("Interactive","interactiveSols") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"_")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CSymbol ("Prelude","[]"))))))))))))))))))))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CSymbol ("Interactive","printTerm")) (CVar (0,"x"))),CSExpr (CApply (CSymbol ("Prelude","putStrLn")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '?'))) (CSymbol ("Prelude","[]")))))))),CSPat (CPVar (2,"line")) (CSymbol ("Prelude","getLine")),CSExpr (CCase (CVar (2,"line")) [CBranch (CPComb ("Prelude",":") [CPLit (CCharc 'n'),CPVar (3,"_")]) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","()"))),CBranch (CPComb ("Prelude",":") [CPLit (CCharc 'N'),CPVar (4,"_")]) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","()"))),CBranch (CPVar (5,"_")) (CApply (CSymbol ("Interactive","interactiveSols")) (CVar (1,"xs")))])])] []]),+  CFunc ("Interactive","printIO") 1 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"act")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CVar (0,"act"))) (CLambda [CPVar (1,"x")] (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putStr")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'I'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Interactive","printTerm"))) (CVar (1,"x"))))))] []]),+  CFunc ("Interactive","printTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "printTerm")]+ []
+ src/lib/Curry/Module/.curry/List.acy view
@@ -0,0 +1,25 @@+CurryProg "List"+ ["Prelude","Maybe"]+ []+ [CFunc ("List","\\\\") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CApply (CSymbol ("Prelude","flip")) (CSymbol ("List","delete")))) (CVar (0,"xs"))) (CVar (1,"ys")))] []]),+  CFunc ("List","delete") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"x"),CPComb ("Prelude",":") [CPVar (2,"y"),CPVar (3,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"x"))) (CVar (2,"y")))) (CVar (3,"ys"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"y"))) (CApply (CApply (CSymbol ("List","delete")) (CVar (1,"x"))) (CVar (3,"ys")))))] []]),+  CFunc ("List","elemIndex") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","findIndex")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("List","elemIndices") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","findIndices")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("List","find") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","listToMaybe"))) (CApply (CSymbol ("Prelude","filter")) (CVar (0,"p"))))] []]),+  CFunc ("List","findIndex") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","listToMaybe"))) (CApply (CSymbol ("List","findIndices")) (CVar (0,"p"))))] []]),+  CFunc ("List","findIndices") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CListComp (CVar (3,"i")) [CSPat (CPComb ("Prelude","(,)") [CPVar (2,"x"),CPVar (3,"i")]) (CApply (CApply (CSymbol ("Prelude","zip")) (CVar (1,"xs"))) (CApply (CSymbol ("Prelude","enumFrom")) (CLit (CIntc 0)))),CSExpr (CApply (CVar (0,"p")) (CVar (2,"x")))])] []]),+  CFunc ("List","group") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","groupBy")) (CSymbol ("Prelude","==")))] []]),+  CFunc ("List","groupBy") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"eq"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (4,"ys")))) (CApply (CApply (CSymbol ("List","groupBy")) (CVar (1,"eq"))) (CVar (5,"zs"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ys"),CPVar (5,"zs")]) (CApply (CApply (CSymbol ("Prelude","span")) (CApply (CVar (1,"eq")) (CVar (2,"x")))) (CVar (3,"xs"))) []]]),+  CFunc ("List","insertBy") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"x"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (2,"le"),CPVar (3,"x"),CPComb ("Prelude",":") [CPVar (4,"y"),CPVar (5,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (3,"x"))) (CVar (4,"y")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"y"))) (CVar (5,"ys"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"y"))) (CApply (CApply (CApply (CSymbol ("List","insertBy")) (CVar (2,"le"))) (CVar (3,"x"))) (CVar (5,"ys")))))] []]),+  CFunc ("List","intersect") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (1,"x"))) (CVar (3,"ys")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("List","intersect")) (CVar (2,"xs"))) (CVar (3,"ys"))))) (CApply (CApply (CSymbol ("List","intersect")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []]),+  CFunc ("List","intersperse") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (3,"sep"),CPComb ("Prelude",":") [CPVar (4,"x1"),CPComb ("Prelude",":") [CPVar (5,"x2"),CPVar (6,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x1"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"sep"))) (CApply (CApply (CSymbol ("List","intersperse")) (CVar (3,"sep"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x2"))) (CVar (6,"xs"))))))] []]),+  CFunc ("List","isPrefixOf") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude",":") [CPVar (5,"y"),CPVar (6,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x"))) (CVar (5,"y")))) (CApply (CApply (CSymbol ("List","isPrefixOf")) (CVar (4,"xs"))) (CVar (6,"ys"))))] []]),+  CFunc ("List","last") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","last")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))] []]),+  CFunc ("List","nub") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("List","nubBy")) (CSymbol ("Prelude","=="))) (CVar (0,"xs")))] []]),+  CFunc ("List","nubBy") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"eq"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("List","nubBy")) (CVar (1,"eq"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (4,"y")] (CApply (CSymbol ("Prelude","not")) (CApply (CApply (CVar (1,"eq")) (CVar (2,"x"))) (CVar (4,"y")))))) (CVar (3,"xs")))))] []]),+  CFunc ("List","partition") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("List","select"))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))) (CVar (1,"xs")))] [CLocalFunc (CFunc ("List","select") 2 Private (CFuncType (CTVar (1,"_146")) (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"_146")],CTCons ("Prelude","[]") [CTVar (1,"_146")]]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"_146")],CTCons ("Prelude","[]") [CTVar (1,"_146")]]))) (CRules CFlex [CRule [CPVar (2,"x"),CPComb ("Prelude","(,)") [CPVar (3,"ts"),CPVar (4,"fs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (0,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"ts")))) (CVar (4,"fs")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"ts"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (4,"fs")))))] []]))]]),+  CFunc ("List","replace") 3 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (2,"x"),CPVar (3,"p"),CPComb ("Prelude",":") [CPVar (4,"y"),CPVar (5,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"p"))) (CLit (CIntc 0)),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (5,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"y"))) (CApply (CApply (CApply (CSymbol ("List","replace")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"p"))) (CLit (CIntc 1)))) (CVar (5,"ys"))))] []]),+  CFunc ("List","sortBy") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"le")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CApply (CSymbol ("List","insertBy")) (CVar (0,"le")))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("List","transpose") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","[]") [],CPVar (0,"xss")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","transpose")) (CVar (0,"xss")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"xss")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","head"))) (CVar (3,"xss"))))) (CApply (CSymbol ("List","transpose")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"xs"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","tail"))) (CVar (3,"xss"))))))] []]),+  CFunc ("List","union") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (1,"x"))) (CVar (3,"ys")))) (CApply (CApply (CSymbol ("List","union")) (CVar (2,"xs"))) (CVar (3,"ys")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("List","union")) (CVar (2,"xs"))) (CVar (3,"ys")))))] []])]+ [COp ("List","\\\\") CInfixOp 5]
+ src/lib/Curry/Module/.curry/List.cy view
@@ -0,0 +1,48 @@+Module "List"+(Just (Exporting (8,12) [(Export (QualIdent Nothing (Ident "elemIndex" 0))),(Export (QualIdent Nothing (Ident "elemIndices" 0))),(Export (QualIdent Nothing (Ident "find" 0))),(Export (QualIdent Nothing (Ident "findIndex" 0))),(Export (QualIdent Nothing (Ident "findIndices" 0))),(Export (QualIdent Nothing (Ident "nub" 0))),(Export (QualIdent Nothing (Ident "nubBy" 0))),(Export (QualIdent Nothing (Ident "delete" 0))),(Export (QualIdent Nothing (Ident "\\\\" 0))),(Export (QualIdent Nothing (Ident "union" 0))),(Export (QualIdent Nothing (Ident "intersect" 0))),(Export (QualIdent Nothing (Ident "intersperse" 0))),(Export (QualIdent Nothing (Ident "transpose" 0))),(Export (QualIdent Nothing (Ident "partition" 0))),(Export (QualIdent Nothing (Ident "group" 0))),(Export (QualIdent Nothing (Ident "groupBy" 0))),(Export (QualIdent Nothing (Ident "replace" 0))),(Export (QualIdent Nothing (Ident "isPrefixOf" 0))),(Export (QualIdent Nothing (Ident "sortBy" 0))),(Export (QualIdent Nothing (Ident "insertBy" 0))),(Export (QualIdent Nothing (Ident "last" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "Maybe" False Nothing (Just (Importing (13,13) [(Import (Ident "listToMaybe" 0))])))+,(InfixDecl (15,1) Infix 5 [(Ident "\\\\" 0)])+,(TypeSig (19,1) [(Ident "elemIndex" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))))+,(FunctionDecl (20,1) (Ident "elemIndex" 0) [(Equation (20,1) (FunLhs (Ident "elemIndex" 0) [(VariablePattern (Ident "x" 2))]) (SimpleRhs (20,28) (Apply (Variable (QualIdent (Just "List") (Ident "findIndex" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "x" 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))))) []))])+,(TypeSig (23,1) [(Ident "elemIndices" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FunctionDecl (24,1) (Ident "elemIndices" 0) [(Equation (24,1) (FunLhs (Ident "elemIndices" 0) [(VariablePattern (Ident "x" 4))]) (SimpleRhs (24,28) (Apply (Variable (QualIdent (Just "List") (Ident "findIndices" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "x" 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))))) []))])+,(TypeSig (28,1) [(Ident "find" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (29,1) (Ident "find" 0) [(Equation (29,1) (FunLhs (Ident "find" 0) [(VariablePattern (Ident "p" 6))]) (SimpleRhs (29,28) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "listToMaybe" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Variable (QualIdent Nothing (Ident "p" 6))))) []))])+,(TypeSig (33,1) [(Ident "findIndex" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))))+,(FunctionDecl (34,1) (Ident "findIndex" 0) [(Equation (34,1) (FunLhs (Ident "findIndex" 0) [(VariablePattern (Ident "p" 8))]) (SimpleRhs (34,28) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "listToMaybe" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "List") (Ident "findIndices" 0))) (Variable (QualIdent Nothing (Ident "p" 8))))) []))])+,(TypeSig (37,1) [(Ident "findIndices" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FunctionDecl (38,1) (Ident "findIndices" 0) [(Equation (38,1) (FunLhs (Ident "findIndices" 0) [(VariablePattern (Ident "p" 10)),(VariablePattern (Ident "xs" 10))]) (SimpleRhs (38,28) (ListCompr (Variable (QualIdent Nothing (Ident "i" 13))) [(StmtBind (TuplePattern [(VariablePattern (Ident "x" 13)),(VariablePattern (Ident "i" 13))]) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zip" 0))) (Variable (QualIdent Nothing (Ident "xs" 10)))) (EnumFrom (Literal (Int (Ident "_" 12) 0))))),(StmtExpr (Apply (Variable (QualIdent Nothing (Ident "p" 10))) (Variable (QualIdent Nothing (Ident "x" 13)))))]) []))])+,(TypeSig (42,1) [(Ident "nub" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (43,1) (Ident "nub" 0) [(Equation (43,1) (FunLhs (Ident "nub" 0) [(VariablePattern (Ident "xs" 14))]) (SimpleRhs (43,26) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "nubBy" 0))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0)))) (Variable (QualIdent Nothing (Ident "xs" 14)))) []))])+,(TypeSig (47,1) [(Ident "nubBy" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (48,1) (Ident "nubBy" 0) [(Equation (48,1) (FunLhs (Ident "nubBy" 0) [(VariablePattern (Ident "_" 17)),(ListPattern [])]) (SimpleRhs (48,26) (List []) [])),(Equation (49,1) (FunLhs (Ident "nubBy" 0) [(VariablePattern (Ident "eq" 19)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 19)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 19))))]) (SimpleRhs (49,26) (InfixApply (Variable (QualIdent Nothing (Ident "x" 19))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "nubBy" 0))) (Variable (QualIdent Nothing (Ident "eq" 19)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (Lambda [(VariablePattern (Ident "y" 21))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "eq" 19))) (Variable (QualIdent Nothing (Ident "x" 19)))) (Variable (QualIdent Nothing (Ident "y" 21))))))))) (Variable (QualIdent Nothing (Ident "xs" 19))))))) []))])+,(TypeSig (52,1) [(Ident "delete" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (53,1) (Ident "delete" 0) [(Equation (53,1) (FunLhs (Ident "delete" 0) [(VariablePattern (Ident "_" 23)),(ListPattern [])]) (SimpleRhs (53,26) (List []) [])),(Equation (54,1) (FunLhs (Ident "delete" 0) [(VariablePattern (Ident "x" 25)),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 25)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 25))))]) (SimpleRhs (54,26) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "x" 25))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "y" 25)))) (Variable (QualIdent Nothing (Ident "ys" 25))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 25))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "delete" 0))) (Variable (QualIdent Nothing (Ident "x" 25)))) (Variable (QualIdent Nothing (Ident "ys" 25)))))) []))])+,(TypeSig (61,1) [(Ident "\\\\" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (62,1) (Ident "\\\\" 0) [(Equation (62,1) (OpLhs (VariablePattern (Ident "xs" 27)) (Ident "\\\\" 0) (VariablePattern (Ident "ys" 27))) (SimpleRhs (62,12) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldl" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "flip" 0))) (Variable (QualIdent (Just "List") (Ident "delete" 0)))))) (Variable (QualIdent Nothing (Ident "xs" 27)))) (Variable (QualIdent Nothing (Ident "ys" 27)))) []))])+,(TypeSig (65,1) [(Ident "union" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (66,1) (Ident "union" 0) [(Equation (66,1) (FunLhs (Ident "union" 0) [(ListPattern []),(VariablePattern (Ident "ys" 29))]) (SimpleRhs (66,26) (Variable (QualIdent Nothing (Ident "ys" 29))) [])),(Equation (67,1) (FunLhs (Ident "union" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 31)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 31)))),(VariablePattern (Ident "ys" 31))]) (SimpleRhs (67,26) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "x" 31))) (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent Nothing (Ident "ys" 31)))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "union" 0))) (Variable (QualIdent Nothing (Ident "xs" 31)))) (Variable (QualIdent Nothing (Ident "ys" 31)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 31))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "union" 0))) (Variable (QualIdent Nothing (Ident "xs" 31)))) (Variable (QualIdent Nothing (Ident "ys" 31)))))) []))])+,(TypeSig (71,1) [(Ident "intersect" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (72,1) (Ident "intersect" 0) [(Equation (72,1) (FunLhs (Ident "intersect" 0) [(ListPattern []),(VariablePattern (Ident "_" 34))]) (SimpleRhs (72,26) (List []) [])),(Equation (73,1) (FunLhs (Ident "intersect" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 36)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 36)))),(VariablePattern (Ident "ys" 36))]) (SimpleRhs (73,26) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "x" 36))) (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent Nothing (Ident "ys" 36)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 36))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersect" 0))) (Variable (QualIdent Nothing (Ident "xs" 36)))) (Variable (QualIdent Nothing (Ident "ys" 36))))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersect" 0))) (Variable (QualIdent Nothing (Ident "xs" 36)))) (Variable (QualIdent Nothing (Ident "ys" 36))))) []))])+,(TypeSig (79,1) [(Ident "intersperse" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (80,1) (Ident "intersperse" 0) [(Equation (80,1) (FunLhs (Ident "intersperse" 0) [(VariablePattern (Ident "_" 39)),(ListPattern [])]) (SimpleRhs (80,30) (List []) [])),(Equation (81,1) (FunLhs (Ident "intersperse" 0) [(VariablePattern (Ident "_" 42)),(ListPattern [(VariablePattern (Ident "x" 41))])]) (SimpleRhs (81,30) (List [(Variable (QualIdent Nothing (Ident "x" 41)))]) [])),(Equation (82,1) (FunLhs (Ident "intersperse" 0) [(VariablePattern (Ident "sep" 44)),(ParenPattern (InfixPattern (VariablePattern (Ident "x1" 44)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x2" 44)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 44)))))]) (SimpleRhs (82,30) (InfixApply (Variable (QualIdent Nothing (Ident "x1" 44))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "sep" 44))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "intersperse" 0))) (Variable (QualIdent Nothing (Ident "sep" 44)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x2" 44))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 44)))))))) []))])+,(TypeSig (87,1) [(Ident "transpose" 0)] (ArrowType (ListType (ListType (VariableType (Ident "a" 0)))) (ListType (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (88,1) (Ident "transpose" 0) [(Equation (88,1) (FunLhs (Ident "transpose" 0) [(ListPattern [])]) (SimpleRhs (88,28) (List []) [])),(Equation (89,1) (FunLhs (Ident "transpose" 0) [(ParenPattern (InfixPattern (ListPattern []) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xss" 48))))]) (SimpleRhs (89,28) (Apply (Variable (QualIdent (Just "List") (Ident "transpose" 0))) (Variable (QualIdent Nothing (Ident "xss" 48)))) [])),(Equation (90,1) (FunLhs (Ident "transpose" 0) [(ParenPattern (InfixPattern (ParenPattern (InfixPattern (VariablePattern (Ident "x" 50)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 50)))) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xss" 50))))]) (SimpleRhs (90,28) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 50))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "head" 0)))) (Variable (QualIdent Nothing (Ident "xss" 50)))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "List") (Ident "transpose" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "xs" 50))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "tail" 0)))) (Variable (QualIdent Nothing (Ident "xss" 50)))))))) []))])+,(TypeSig (97,1) [(Ident "partition" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "a" 0)))]))))+,(FunctionDecl (98,1) (Ident "partition" 0) [(Equation (98,1) (FunLhs (Ident "partition" 0) [(VariablePattern (Ident "p" 52)),(VariablePattern (Ident "xs" 52))]) (SimpleRhs (98,19) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent Nothing (Ident "select" 53)))) (Tuple [(List []),(List [])])) (Variable (QualIdent Nothing (Ident "xs" 52)))) [(FunctionDecl (99,14) (Ident "select" 53) [(Equation (99,14) (FunLhs (Ident "select" 53) [(VariablePattern (Ident "x" 54)),(TuplePattern [(VariablePattern (Ident "ts" 54)),(VariablePattern (Ident "fs" 54))])]) (SimpleRhs (99,33) (IfThenElse (Apply (Variable (QualIdent Nothing (Ident "p" 52))) (Variable (QualIdent Nothing (Ident "x" 54)))) (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 54))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ts" 54)))),(Variable (QualIdent Nothing (Ident "fs" 54)))]) (Tuple [(Variable (QualIdent Nothing (Ident "ts" 54))),(InfixApply (Variable (QualIdent Nothing (Ident "x" 54))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "fs" 54))))])) []))])]))])+,(TypeSig (106,1) [(Ident "group" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (107,1) (Ident "group" 0) [(Equation (107,1) (FunLhs (Ident "group" 0) []) (SimpleRhs (107,9) (Apply (Variable (QualIdent (Just "List") (Ident "groupBy" 0))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0)))) []))])+,(TypeSig (114,1) [(Ident "groupBy" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (ListType (VariableType (Ident "a" 0)))))))+,(FunctionDecl (115,1) (Ident "groupBy" 0) [(Equation (115,1) (FunLhs (Ident "groupBy" 0) [(VariablePattern (Ident "_" 59)),(ListPattern [])]) (SimpleRhs (115,21) (List []) [])),(Equation (116,1) (FunLhs (Ident "groupBy" 0) [(VariablePattern (Ident "eq" 61)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 61)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 61))))]) (SimpleRhs (116,21) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 61))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 62))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "List") (Ident "groupBy" 0))) (Variable (QualIdent Nothing (Ident "eq" 61)))) (Variable (QualIdent Nothing (Ident "zs" 62))))) [(PatternDecl (117,27) (TuplePattern [(VariablePattern (Ident "ys" 62)),(VariablePattern (Ident "zs" 62))]) (SimpleRhs (117,37) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "span" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "eq" 61))) (Variable (QualIdent Nothing (Ident "x" 61)))))) (Variable (QualIdent Nothing (Ident "xs" 61)))) []))]))])+,(TypeSig (124,1) [(Ident "replace" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))))+,(FunctionDecl (125,1) (Ident "replace" 0) [(Equation (125,1) (FunLhs (Ident "replace" 0) [(VariablePattern (Ident "_" 65)),(VariablePattern (Ident "_" 66)),(ListPattern [])]) (SimpleRhs (125,18) (List []) [])),(Equation (126,1) (FunLhs (Ident "replace" 0) [(VariablePattern (Ident "x" 68)),(VariablePattern (Ident "p" 68)),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 68)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 68))))]) (GuardedRhs [(CondExpr (126,20) (InfixApply (Variable (QualIdent Nothing (Ident "p" 68))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 70) 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 68))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 68))))),(CondExpr (127,20) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 68))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "List") (Ident "replace" 0))) (Variable (QualIdent Nothing (Ident "x" 68)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 68))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 71) 1))))) (Variable (QualIdent Nothing (Ident "ys" 68)))))))] []))])+,(TypeSig (133,1) [(Ident "isPrefixOf" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (134,1) (Ident "isPrefixOf" 0) [(Equation (134,1) (FunLhs (Ident "isPrefixOf" 0) [(ListPattern []),(VariablePattern (Ident "_" 73))]) (SimpleRhs (134,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (135,1) (FunLhs (Ident "isPrefixOf" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 76)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 77)))),(ListPattern [])]) (SimpleRhs (135,23) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (136,1) (FunLhs (Ident "isPrefixOf" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 79)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 79)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 79)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 79))))]) (SimpleRhs (136,28) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "x" 79))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "y" 79)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "List") (Ident "isPrefixOf" 0))) (Variable (QualIdent Nothing (Ident "xs" 79)))) (Variable (QualIdent Nothing (Ident "ys" 79)))))) []))])+,(TypeSig (139,1) [(Ident "sortBy" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (140,1) (Ident "sortBy" 0) [(Equation (140,1) (FunLhs (Ident "sortBy" 0) [(VariablePattern (Ident "le" 81))]) (SimpleRhs (140,13) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Paren (Apply (Variable (QualIdent (Just "List") (Ident "insertBy" 0))) (Variable (QualIdent Nothing (Ident "le" 81)))))) (List [])) []))])+,(TypeSig (147,1) [(Ident "insertBy" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))))+,(FunctionDecl (148,1) (Ident "insertBy" 0) [(Equation (148,1) (FunLhs (Ident "insertBy" 0) [(VariablePattern (Ident "_" 84)),(VariablePattern (Ident "x" 83)),(ListPattern [])]) (SimpleRhs (148,23) (List [(Variable (QualIdent Nothing (Ident "x" 83)))]) [])),(Equation (149,1) (FunLhs (Ident "insertBy" 0) [(VariablePattern (Ident "le" 86)),(VariablePattern (Ident "x" 86)),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 86)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 86))))]) (SimpleRhs (149,24) (IfThenElse (Apply (Apply (Variable (QualIdent Nothing (Ident "le" 86))) (Variable (QualIdent Nothing (Ident "x" 86)))) (Variable (QualIdent Nothing (Ident "y" 86)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 86))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 86))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 86))))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 86))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "List") (Ident "insertBy" 0))) (Variable (QualIdent Nothing (Ident "le" 86)))) (Variable (QualIdent Nothing (Ident "x" 86)))) (Variable (QualIdent Nothing (Ident "ys" 86)))))) []))])+,(TypeSig (154,1) [(Ident "last" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0))))+,(FunctionDecl (155,1) (Ident "last" 0) [(Equation (155,1) (FunLhs (Ident "last" 0) [(ListPattern [(VariablePattern (Ident "x" 88))])]) (SimpleRhs (155,12) (Variable (QualIdent Nothing (Ident "x" 88))) [])),(Equation (156,1) (FunLhs (Ident "last" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 91)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x" 90)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 90)))))]) (SimpleRhs (156,17) (Apply (Variable (QualIdent (Just "List") (Ident "last" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 90))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 90)))))) []))])+]
+ src/lib/Curry/Module/.curry/List.efc view
@@ -0,0 +1,1 @@+Prog "List" ["Maybe","Prelude"] [] [Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","elemIndex")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","findIndex")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","elemIndices")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TVar 0),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","findIndices")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))),"List","find")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Maybe","listToMaybe")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","filter")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","findIndex")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Maybe","listToMaybe")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","findIndices")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"List","findIndices")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"List","findIndices._#lambda4")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","Int") []]]))),"Prelude","zip")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","enumFrom")) [Lit (Intc  0)]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"List","findIndices._#lambda4")) 3 Private (FuncType (FuncType (TVar 7) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 7,TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])))) (Rule [(Just (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 7) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 7,TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 7),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","++")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 7) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 7),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) [])],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"List","nub")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","nubBy")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","nubBy")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","nubBy")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","filter")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"List","nubBy._#lambda6")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 45) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 45) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"List","nubBy._#lambda6")) 3 Private (FuncType (FuncType (TVar 45) (FuncType (TVar 45) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 45) (FuncType (TVar 45) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (FuncType (TVar 45) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TVar 45),2),(Just (TVar 45),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 45) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 45) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 45) (FuncType (TVar 45) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 45),2))],Var ((Just (TVar 45),3))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","delete")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","delete")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","\\\\")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldl")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","delete")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","union")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","union")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","union")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","intersect")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","intersect")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","intersect")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","intersperse")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","intersperse")) [Var ((Just (TVar 0),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))]]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"List","transpose")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"List","transpose")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"Prelude","head")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"List","transpose")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","tail")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),3))]]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"List","partition")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])))),"List","partition.select.53")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))],Comb ConsCall ((Nothing,Just (FuncType (TVar 151) (FuncType (TVar 152) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 151),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 152),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 146) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 146) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]])))),"List","partition.select.53")) 3 Private (FuncType (FuncType (TVar 146) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TVar 146) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 146],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 146]]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 146],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 146]])))) (Rule [(Just (FuncType (TVar 146) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TVar 146),2),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]),5)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 146) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 146) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 146) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 146),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 146) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]))),"Prelude",":")) [Var ((Just (TVar 146),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 146],TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]),4)),Comb ConsCall ((Nothing,Just (FuncType (TVar 146) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]))),"Prelude",":")) [Var ((Just (TVar 146),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 146]),5))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"List","group")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"List","groupBy")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"List","groupBy")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Let [((Just (TVar 159),5),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 163) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 163]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 163],TCons (Nothing,Nothing,"Prelude","[]") [TVar 163]]))),"Prelude","span")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 161) (TVar 162)) (FuncType (TVar 161) (TVar 162))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 164],TCons (Nothing,Nothing,"Prelude","[]") [TVar 164]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 164])),"List","groupBy._#selFP3#ys")) [Var ((Just (TVar 159),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 165],TCons (Nothing,Nothing,"Prelude","[]") [TVar 165]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 165])),"List","groupBy._#selFP4#zs")) [Var ((Just (TVar 159),5))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"List","groupBy")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154])),"List","groupBy._#selFP3#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 154],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 154]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 154])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]) (FuncType (TVar 157) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]),2),(Just (TVar 157),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154])),"List","groupBy._#selFP4#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 154],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 154]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 154])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 156) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 154],TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]]))),"Prelude","(,)")) [(Just (TVar 156),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 154]),3)))])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"List","replace")) 3 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"List","replace")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"List","isPrefixOf")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 0),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"List","isPrefixOf")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","sortBy")) 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"List","insertBy")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"List","insertBy")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),2))],Var ((Just (TVar 0),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"List","insertBy")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"List","last")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TVar 0),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"List","last")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]])])]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"List","\\\\")) InfixOp 5]
+ src/lib/Curry/Module/.curry/List.fcy view
@@ -0,0 +1,1 @@+Prog "List" ["Maybe","Prelude"] [] [Func ("List","elemIndex") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","Int") []]))) (Rule [1] (Comb FuncCall ("List","findIndex") [Comb (FuncPartCall 1) ("Prelude","==") [Var 1]])),Func ("List","elemIndices") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1] (Comb (FuncPartCall 1) ("List","findIndices") [Comb (FuncPartCall 1) ("Prelude","==") [Var 1]])),Func ("List","find") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Maybe","listToMaybe") [],Comb (FuncPartCall 1) ("Prelude","filter") [Var 1]])),Func ("List","findIndex") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","Int") []]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Maybe","listToMaybe") [],Comb (FuncPartCall 1) ("List","findIndices") [Var 1]])),Func ("List","findIndices") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("List","findIndices._#lambda4") [Var 1],Comb ConsCall ("Prelude","[]") [],Comb FuncCall ("Prelude","zip") [Var 2,Comb FuncCall ("Prelude","enumFrom") [Lit (Intc  0)]]])),Func ("List","findIndices._#lambda4") 3 Private (FuncType (FuncType (TVar 7) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","(,)") [TVar 7,TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (Rule [1,2,3] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude","(,)") [4,5]) (Comb FuncCall ("Prelude","++") [Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 5,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","[]") [])],Var 3])])),Func ("List","nub") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb FuncCall ("List","nubBy") [Comb (FuncPartCall 2) ("Prelude","==") [],Var 1])),Func ("List","nubBy") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("List","nubBy") [Var 1,Comb FuncCall ("Prelude","filter") [Comb (FuncPartCall 1) ("List","nubBy._#lambda6") [Var 1,Var 3],Var 4]]])])),Func ("List","nubBy._#lambda6") 3 Private (FuncType (FuncType (TVar 45) (FuncType (TVar 45) (TCons ("Prelude","Bool") []))) (FuncType (TVar 45) (FuncType (TVar 45) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","not") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Var 3]])),Func ("List","delete") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Var 3]) [Branch (Pattern ("Prelude","True") []) (Var 4),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("List","delete") [Var 1,Var 4]])])])),Func ("List","\\\\") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldl") [Comb (FuncPartCall 2) ("Prelude","flip") [Comb (FuncPartCall 2) ("List","delete") []],Var 1,Var 2])),Func ("List","union") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Var 3],Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("List","union") [Var 4,Var 2]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("List","union") [Var 4,Var 2]])])])),Func ("List","intersect") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Var 3],Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("List","intersect") [Var 4,Var 2]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("List","intersect") [Var 4,Var 2])])])),Func ("List","intersperse") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude",":") [Var 1,Comb FuncCall ("List","intersperse") [Var 1,Comb ConsCall ("Prelude",":") [Var 5,Var 6]]]])])])),Func ("List","transpose") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("List","transpose") [Var 3]),Branch (Pattern ("Prelude",":") [4,5]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","head") [],Var 3]],Comb FuncCall ("List","transpose") [Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","tail") [],Var 3]]]])])])),Func ("List","partition") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("List","partition.select.53") [Var 1],Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []],Var 2])),Func ("List","partition.select.53") 3 Private (FuncType (FuncType (TVar 146) (TCons ("Prelude","Bool") [])) (FuncType (TVar 146) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 146],TCons ("Prelude","[]") [TVar 146]]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 146],TCons ("Prelude","[]") [TVar 146]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,)") [4,5]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 2,Var 4],Var 5]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","(,)") [Var 4,Comb ConsCall ("Prelude",":") [Var 2,Var 5]])])])),Func ("List","group") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])) (Rule [] (Comb (FuncPartCall 1) ("List","groupBy") [Comb (FuncPartCall 2) ("Prelude","==") []])),Func ("List","groupBy") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Prelude","span") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4])] (Let [(6,Comb FuncCall ("List","groupBy._#selFP3#ys") [Var 5])] (Let [(7,Comb FuncCall ("List","groupBy._#selFP4#zs") [Var 5])] (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 3,Var 6],Comb FuncCall ("List","groupBy") [Var 1,Var 7]]))))])),Func ("List","groupBy._#selFP3#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 154],TCons ("Prelude","[]") [TVar 154]]) (TCons ("Prelude","[]") [TVar 154])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("List","groupBy._#selFP4#zs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 154],TCons ("Prelude","[]") [TVar 154]]) (TCons ("Prelude","[]") [TVar 154])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("List","replace") 3 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [4,5]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 1,Var 5]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("List","replace") [Var 1,Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  1)],Var 5]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("List","isPrefixOf") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 3,Var 5],Comb FuncCall ("List","isPrefixOf") [Var 4,Var 6]])])])),Func ("List","sortBy") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1] (Comb (FuncPartCall 1) ("Prelude","foldr") [Comb (FuncPartCall 2) ("List","insertBy") [Var 1],Comb ConsCall ("Prelude","[]") []])),Func ("List","insertBy") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Var 2,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 2,Comb ConsCall ("Prelude",":") [Var 4,Var 5]]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("List","insertBy") [Var 1,Var 2,Var 5]])])])),Func ("List","last") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("List","last") [Comb ConsCall ("Prelude",":") [Var 4,Var 5]])])]))] [Op ("List","\\\\") InfixOp 5]
+ src/lib/Curry/Module/.curry/List.fint view
@@ -0,0 +1,1 @@+Prog "List" ["Maybe","Prelude"] [] [Func ("List","elemIndex") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("List","elemIndices") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("List","find") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0]))) (Rule [] (Var 0)),Func ("List","findIndex") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("List","findIndices") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("List","nub") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("List","nubBy") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","delete") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","\\\\") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","union") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","intersect") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","intersperse") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","transpose") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])) (Rule [] (Var 0)),Func ("List","partition") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [] (Var 0)),Func ("List","group") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]])) (Rule [] (Var 0)),Func ("List","groupBy") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]))) (Rule [] (Var 0)),Func ("List","replace") 3 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [] (Var 0)),Func ("List","isPrefixOf") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("List","sortBy") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("List","insertBy") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [] (Var 0)),Func ("List","last") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (Rule [] (Var 0))] [Op ("List","\\\\") InfixOp 5]
+ src/lib/Curry/Module/.curry/List.uacy view
@@ -0,0 +1,25 @@+CurryProg "List"+ ["Prelude","Maybe"]+ []+ [CFunc ("List","\\\\") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"xs"),CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CApply (CSymbol ("Prelude","flip")) (CSymbol ("List","delete")))) (CVar (0,"xs"))) (CVar (1,"ys")))] []]),+  CFunc ("List","delete") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"x"),CPComb ("Prelude",":") [CPVar (2,"y"),CPVar (3,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"x"))) (CVar (2,"y")))) (CVar (3,"ys"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"y"))) (CApply (CApply (CSymbol ("List","delete")) (CVar (1,"x"))) (CVar (3,"ys")))))] []]),+  CFunc ("List","elemIndex") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","findIndex")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("List","elemIndices") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","findIndices")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("List","find") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","listToMaybe"))) (CApply (CSymbol ("Prelude","filter")) (CVar (0,"p"))))] []]),+  CFunc ("List","findIndex") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","listToMaybe"))) (CApply (CSymbol ("List","findIndices")) (CVar (0,"p"))))] []]),+  CFunc ("List","findIndices") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CListComp (CVar (3,"i")) [CSPat (CPComb ("Prelude","(,)") [CPVar (2,"x"),CPVar (3,"i")]) (CApply (CApply (CSymbol ("Prelude","zip")) (CVar (1,"xs"))) (CApply (CSymbol ("Prelude","enumFrom")) (CLit (CIntc 0)))),CSExpr (CApply (CVar (0,"p")) (CVar (2,"x")))])] []]),+  CFunc ("List","group") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","groupBy")) (CSymbol ("Prelude","==")))] []]),+  CFunc ("List","groupBy") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"eq"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (4,"ys")))) (CApply (CApply (CSymbol ("List","groupBy")) (CVar (1,"eq"))) (CVar (5,"zs"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ys"),CPVar (5,"zs")]) (CApply (CApply (CSymbol ("Prelude","span")) (CApply (CVar (1,"eq")) (CVar (2,"x")))) (CVar (3,"xs"))) []]]),+  CFunc ("List","insertBy") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"x"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (2,"le"),CPVar (3,"x"),CPComb ("Prelude",":") [CPVar (4,"y"),CPVar (5,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CVar (2,"le")) (CVar (3,"x"))) (CVar (4,"y")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"y"))) (CVar (5,"ys"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"y"))) (CApply (CApply (CApply (CSymbol ("List","insertBy")) (CVar (2,"le"))) (CVar (3,"x"))) (CVar (5,"ys")))))] []]),+  CFunc ("List","intersect") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (1,"x"))) (CVar (3,"ys")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("List","intersect")) (CVar (2,"xs"))) (CVar (3,"ys"))))) (CApply (CApply (CSymbol ("List","intersect")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []]),+  CFunc ("List","intersperse") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (3,"sep"),CPComb ("Prelude",":") [CPVar (4,"x1"),CPComb ("Prelude",":") [CPVar (5,"x2"),CPVar (6,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x1"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"sep"))) (CApply (CApply (CSymbol ("List","intersperse")) (CVar (3,"sep"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x2"))) (CVar (6,"xs"))))))] []]),+  CFunc ("List","isPrefixOf") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude",":") [CPVar (5,"y"),CPVar (6,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x"))) (CVar (5,"y")))) (CApply (CApply (CSymbol ("List","isPrefixOf")) (CVar (4,"xs"))) (CVar (6,"ys"))))] []]),+  CFunc ("List","last") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","last")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))] []]),+  CFunc ("List","nub") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("List","nubBy")) (CSymbol ("Prelude","=="))) (CVar (0,"xs")))] []]),+  CFunc ("List","nubBy") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"eq"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("List","nubBy")) (CVar (1,"eq"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (4,"y")] (CApply (CSymbol ("Prelude","not")) (CApply (CApply (CVar (1,"eq")) (CVar (2,"x"))) (CVar (4,"y")))))) (CVar (3,"xs")))))] []]),+  CFunc ("List","partition") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("List","select"))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))) (CVar (1,"xs")))] [CLocalFunc (CFunc ("List","select") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"x"),CPComb ("Prelude","(,)") [CPVar (3,"ts"),CPVar (4,"fs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (0,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"ts")))) (CVar (4,"fs")))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"ts"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (4,"fs")))))] []]))]]),+  CFunc ("List","replace") 3 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (2,"x"),CPVar (3,"p"),CPComb ("Prelude",":") [CPVar (4,"y"),CPVar (5,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"p"))) (CLit (CIntc 0)),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (5,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"y"))) (CApply (CApply (CApply (CSymbol ("List","replace")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"p"))) (CLit (CIntc 1)))) (CVar (5,"ys"))))] []]),+  CFunc ("List","sortBy") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"le")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CApply (CSymbol ("List","insertBy")) (CVar (0,"le")))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("List","transpose") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","[]") [],CPVar (0,"xss")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("List","transpose")) (CVar (0,"xss")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"xss")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","head"))) (CVar (3,"xss"))))) (CApply (CSymbol ("List","transpose")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"xs"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","tail"))) (CVar (3,"xss"))))))] []]),+  CFunc ("List","union") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (1,"x"))) (CVar (3,"ys")))) (CApply (CApply (CSymbol ("List","union")) (CVar (2,"xs"))) (CVar (3,"ys")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("List","union")) (CVar (2,"xs"))) (CVar (3,"ys")))))] []])]+ [COp ("List","\\\\") CInfixOp 5]
+ src/lib/Curry/Module/.curry/Maybe.acy view
@@ -0,0 +1,15 @@+CurryProg "Maybe"+ ["Prelude"]+ []+ [CFunc ("Maybe",">>-") 2 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CTCons ("Prelude","Maybe") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","Nothing") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Prelude","Just") [CPVar (1,"x")],CPVar (2,"f")] [(CSymbol ("Prelude","success"),CApply (CVar (2,"f")) (CVar (1,"x")))] []]),+  CFunc ("Maybe","catMaybes") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Maybe") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"ms")] [(CSymbol ("Prelude","success"),CListComp (CVar (1,"m")) [CSPat (CPComb ("Prelude","Just") [CPVar (1,"m")]) (CVar (0,"ms"))])] []]),+  CFunc ("Maybe","fromJust") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude","Just") [CPVar (0,"a")]] [(CSymbol ("Prelude","success"),CVar (0,"a"))] [],CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))] []]),+  CFunc ("Maybe","fromMaybe") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"d"),CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CVar (0,"d"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude","Just") [CPVar (2,"a")]] [(CSymbol ("Prelude","success"),CVar (2,"a"))] []]),+  CFunc ("Maybe","isJust") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","Just") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Maybe","isNothing") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Just") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Maybe","listToMaybe") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"a"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CVar (0,"a")))] []]),+  CFunc ("Maybe","mapMMaybe") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","sequenceMaybe"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Maybe","mapMaybe") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","catMaybes"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Maybe","maybeToList") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Just") [CPVar (0,"a")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"a"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Maybe","sequenceMaybe") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Maybe") [CTVar (0,"a")]]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Maybe",">>-")) (CVar (0,"c"))) (CLambda [CPVar (2,"x")] (CApply (CApply (CSymbol ("Maybe",">>-")) (CApply (CSymbol ("Maybe","sequenceMaybe")) (CVar (1,"cs")))) (CLambda [CPVar (3,"xs")] (CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))))))] []])]+ [COp ("Maybe",">>-") CInfixlOp 1]
+ src/lib/Curry/Module/.curry/Maybe.cy view
@@ -0,0 +1,27 @@+Module "Maybe"+(Just (Exporting (9,13) [(Export (QualIdent Nothing (Ident "isJust" 0))),(Export (QualIdent Nothing (Ident "isNothing" 0))),(Export (QualIdent Nothing (Ident "fromJust" 0))),(Export (QualIdent Nothing (Ident "fromMaybe" 0))),(Export (QualIdent Nothing (Ident "listToMaybe" 0))),(Export (QualIdent Nothing (Ident "maybeToList" 0))),(Export (QualIdent Nothing (Ident "catMaybes" 0))),(Export (QualIdent Nothing (Ident "mapMaybe" 0))),(Export (QualIdent Nothing (Ident ">>-" 0))),(Export (QualIdent Nothing (Ident "sequenceMaybe" 0))),(Export (QualIdent Nothing (Ident "mapMMaybe" 0))),(ExportTypeAll (QualIdent Nothing (Ident "Maybe" 0))),(Export (QualIdent Nothing (Ident "maybe" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(InfixDecl (19,1) InfixL 1 [(Ident ">>-" 0)])+,(TypeSig (21,1) [(Ident "isJust" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (22,1) (Ident "isJust" 0) [(Equation (22,1) (FunLhs (Ident "isJust" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "_" 3))]))]) (SimpleRhs (22,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (23,1) (FunLhs (Ident "isJust" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (23,19) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(TypeSig (25,1) [(Ident "isNothing" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (26,1) (Ident "isNothing" 0) [(Equation (26,1) (FunLhs (Ident "isNothing" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (26,22) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (27,1) (FunLhs (Ident "isNothing" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "_" 10))]))]) (SimpleRhs (27,22) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(TypeSig (29,1) [(Ident "fromJust" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (30,1) (Ident "fromJust" 0) [(Equation (30,1) (FunLhs (Ident "fromJust" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "a" 12))]))]) (SimpleRhs (30,21) (Variable (QualIdent Nothing (Ident "a" 12))) [])),(Equation (31,1) (FunLhs (Ident "fromJust" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (31,21) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Maybe.fromJust: Nothing"))) []))])+,(TypeSig (33,1) [(Ident "fromMaybe" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0)))))+,(FunctionDecl (34,1) (Ident "fromMaybe" 0) [(Equation (34,1) (FunLhs (Ident "fromMaybe" 0) [(VariablePattern (Ident "d" 16)),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (34,24) (Variable (QualIdent Nothing (Ident "d" 16))) [])),(Equation (35,1) (FunLhs (Ident "fromMaybe" 0) [(VariablePattern (Ident "_" 19)),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "a" 18))]))]) (SimpleRhs (35,24) (Variable (QualIdent Nothing (Ident "a" 18))) []))])+,(TypeSig (37,1) [(Ident "maybeToList" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (38,1) (Ident "maybeToList" 0) [(Equation (38,1) (FunLhs (Ident "maybeToList" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (38,24) (List []) [])),(Equation (39,1) (FunLhs (Ident "maybeToList" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "a" 23))]))]) (SimpleRhs (39,24) (List [(Variable (QualIdent Nothing (Ident "a" 23)))]) []))])+,(TypeSig (41,1) [(Ident "listToMaybe" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (42,1) (Ident "listToMaybe" 0) [(Equation (42,1) (FunLhs (Ident "listToMaybe" 0) [(ListPattern [])]) (SimpleRhs (42,22) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (43,1) (FunLhs (Ident "listToMaybe" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "a" 27)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 28))))]) (SimpleRhs (43,21) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Variable (QualIdent Nothing (Ident "a" 27)))) []))])+,(TypeSig (45,1) [(Ident "catMaybes" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (46,1) (Ident "catMaybes" 0) [(Equation (46,1) (FunLhs (Ident "catMaybes" 0) [(VariablePattern (Ident "ms" 30))]) (SimpleRhs (46,16) (ListCompr (Variable (QualIdent Nothing (Ident "m" 32))) [(StmtBind (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "m" 32))])) (Variable (QualIdent Nothing (Ident "ms" 30))))]) []))])+,(TypeSig (48,1) [(Ident "mapMaybe" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "b" 0))))))+,(FunctionDecl (49,1) (Ident "mapMaybe" 0) [(Equation (49,1) (FunLhs (Ident "mapMaybe" 0) [(VariablePattern (Ident "f" 33))]) (SimpleRhs (49,14) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "catMaybes" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 33))))) []))])+,(TypeSig (58,1) [(Ident ">>-" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (59,1) (Ident ">>-" 0) [(Equation (59,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (Ident ">>-" 0) (VariablePattern (Ident "_" 36))) (SimpleRhs (59,17) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (60,1) (OpLhs (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "x" 38))])) (Ident ">>-" 0) (VariablePattern (Ident "f" 38))) (SimpleRhs (60,19) (Apply (Variable (QualIdent Nothing (Ident "f" 38))) (Variable (QualIdent Nothing (Ident "x" 38)))) []))])+,(TypeSig (63,1) [(Ident "sequenceMaybe" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ListType (VariableType (Ident "a" 0)))])))+,(FunctionDecl (64,1) (Ident "sequenceMaybe" 0) [(Equation (64,1) (FunLhs (Ident "sequenceMaybe" 0) [(ListPattern [])]) (SimpleRhs (64,20) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (List [])) [])),(Equation (65,1) (FunLhs (Ident "sequenceMaybe" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 42)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 42))))]) (SimpleRhs (65,24) (InfixApply (Variable (QualIdent Nothing (Ident "c" 42))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (Lambda [(VariablePattern (Ident "x" 44))] (InfixApply (Apply (Variable (QualIdent (Just "Maybe") (Ident "sequenceMaybe" 0))) (Variable (QualIdent Nothing (Ident "cs" 42)))) (InfixOp (QualIdent (Just "Maybe") (Ident ">>-" 0))) (Lambda [(VariablePattern (Ident "xs" 45))] (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 44))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 45)))))))))) []))])+,(TypeSig (68,1) [(Ident "mapMMaybe" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(ListType (VariableType (Ident "b" 0)))]))))+,(FunctionDecl (69,1) (Ident "mapMMaybe" 0) [(Equation (69,1) (FunLhs (Ident "mapMMaybe" 0) [(VariablePattern (Ident "f" 46))]) (SimpleRhs (69,15) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "sequenceMaybe" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 46))))) []))])+]
+ src/lib/Curry/Module/.curry/Maybe.efc view
@@ -0,0 +1,1 @@+Prog "Maybe" ["Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Maybe","isJust")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Maybe","isNothing")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TVar 0)),"Maybe","fromJust")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [(Just (TVar 0),2)]) (Var ((Just (TVar 0),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TVar 0))),"Maybe","fromMaybe")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]) (TVar 0))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []) (Var ((Just (TVar 0),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [(Just (TVar 0),3)]) (Var ((Just (TVar 0),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Maybe","maybeToList")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Maybe","listToMaybe")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [Var ((Just (TVar 0),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Maybe","catMaybes")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Maybe","catMaybes._#lambda4")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 37]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]))),"Maybe","catMaybes._#lambda4")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 37]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 37]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 37]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 37]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 37]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 37) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 37])),"Prelude","Just")) [(Just (TVar 37),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 37) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]))),"Prelude",":")) [Var ((Just (TVar 37),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 37]),"Prelude","Nothing")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]),2)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Maybe","mapMaybe")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),"Maybe","catMaybes")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"Maybe",">>-")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1])) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [(Just (TVar 0),3)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),2)),Var ((Just (TVar 0),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Maybe","sequenceMaybe")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Maybe",">>-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Maybe","sequenceMaybe._#lambda6")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]]),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 66]]) (FuncType (TVar 66) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]]))),"Maybe","sequenceMaybe._#lambda6")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 66]]) (FuncType (TVar 66) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 66]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 66]]),1),(Just (TVar 66),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]])) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]]))),"Maybe",">>-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 66]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]])),"Maybe","sequenceMaybe")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 66]]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 66) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]]))),"Maybe","sequenceMaybe._#lambda6._#lambda7")) [Var ((Just (TVar 66),2))]])),Func ((Nothing,Just (FuncType (TVar 66) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]]))),"Maybe","sequenceMaybe._#lambda6._#lambda7")) 2 Private (FuncType (TVar 66) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 66]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 66]]))) (Rule [(Just (TVar 66),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]),2)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]])),"Prelude","Just")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 66) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]))),"Prelude",":")) [Var ((Just (TVar 66),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Maybe","mapMMaybe")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])),"Maybe","sequenceMaybe")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),1))]]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"Maybe",">>-")) InfixlOp 1]
+ src/lib/Curry/Module/.curry/Maybe.fcy view
@@ -0,0 +1,1 @@+Prog "Maybe" ["Prelude"] [] [Func ("Maybe","isJust") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Just") [2]) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","Nothing") []) (Comb ConsCall ("Prelude","False") [])])),Func ("Maybe","isNothing") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Nothing") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","Just") [2]) (Comb ConsCall ("Prelude","False") [])])),Func ("Maybe","fromJust") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Just") [2]) (Var 2),Branch (Pattern ("Prelude","Nothing") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]])])),Func ("Maybe","fromMaybe") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TVar 0))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Nothing") []) (Var 1),Branch (Pattern ("Prelude","Just") [3]) (Var 3)])),Func ("Maybe","maybeToList") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Nothing") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","Just") [2]) (Comb ConsCall ("Prelude",":") [Var 2,Comb ConsCall ("Prelude","[]") []])])),Func ("Maybe","listToMaybe") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("Prelude",":") [2,3]) (Comb ConsCall ("Prelude","Just") [Var 2])])),Func ("Maybe","catMaybes") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Maybe") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("Maybe","catMaybes._#lambda4") [],Comb ConsCall ("Prelude","[]") [],Var 1])),Func ("Maybe","catMaybes._#lambda4") 2 Private (FuncType (TCons ("Prelude","Maybe") [TVar 37]) (FuncType (TCons ("Prelude","[]") [TVar 37]) (TCons ("Prelude","[]") [TVar 37]))) (Rule [1,2] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude","Just") [3]) (Comb ConsCall ("Prelude",":") [Var 3,Var 2]),Branch (Pattern ("Prelude","Nothing") []) (Var 2)])),Func ("Maybe","mapMaybe") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 1]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Maybe","catMaybes") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]])),Func ("Maybe",">>-") 2 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Nothing") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("Prelude","Just") [3]) (Comb FuncCall ("Prelude","apply") [Var 2,Var 3])])),Func ("Maybe","sequenceMaybe") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Maybe") [TVar 0]]) (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [2,3]) (Comb FuncCall ("Maybe",">>-") [Var 2,Comb (FuncPartCall 1) ("Maybe","sequenceMaybe._#lambda6") [Var 3]])])),Func ("Maybe","sequenceMaybe._#lambda6") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Maybe") [TVar 66]]) (FuncType (TVar 66) (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TVar 66]]))) (Rule [1,2] (Comb FuncCall ("Maybe",">>-") [Comb FuncCall ("Maybe","sequenceMaybe") [Var 1],Comb (FuncPartCall 1) ("Maybe","sequenceMaybe._#lambda6._#lambda7") [Var 2]])),Func ("Maybe","sequenceMaybe._#lambda6._#lambda7") 2 Private (FuncType (TVar 66) (FuncType (TCons ("Prelude","[]") [TVar 66]) (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TVar 66]]))) (Rule [1,2] (Comb ConsCall ("Prelude","Just") [Comb ConsCall ("Prelude",":") [Var 1,Var 2]])),Func ("Maybe","mapMMaybe") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TVar 1]]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Maybe","sequenceMaybe") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]]))] [Op ("Maybe",">>-") InfixlOp 1]
+ src/lib/Curry/Module/.curry/Maybe.fint view
@@ -0,0 +1,1 @@+Prog "Maybe" ["Prelude"] [Type ("Prelude","Maybe") Public [0] [Cons ("Prelude","Nothing") 0 Public [],Cons ("Prelude","Just") 1 Public [TVar 0]]] [Func ("Prelude","maybe") 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TCons ("Prelude","Maybe") [TVar 1]) (TVar 0)))) (Rule [] (Var 0)),Func ("Maybe","isJust") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Maybe","isNothing") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Maybe","fromJust") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TVar 0)) (Rule [] (Var 0)),Func ("Maybe","fromMaybe") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TVar 0))) (Rule [] (Var 0)),Func ("Maybe","maybeToList") 1 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Maybe","listToMaybe") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0])) (Rule [] (Var 0)),Func ("Maybe","catMaybes") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Maybe") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Maybe","mapMaybe") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 1]))) (Rule [] (Var 0)),Func ("Maybe",">>-") 2 Public (FuncType (TCons ("Prelude","Maybe") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [] (Var 0)),Func ("Maybe","sequenceMaybe") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Maybe") [TVar 0]]) (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TVar 0]])) (Rule [] (Var 0)),Func ("Maybe","mapMMaybe") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Maybe") [TCons ("Prelude","[]") [TVar 1]]))) (Rule [] (Var 0))] [Op ("Maybe",">>-") InfixlOp 1]
+ src/lib/Curry/Module/.curry/Maybe.uacy view
@@ -0,0 +1,15 @@+CurryProg "Maybe"+ ["Prelude"]+ []+ [CFunc ("Maybe",">>-") 2 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CTCons ("Prelude","Maybe") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPComb ("Prelude","Nothing") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Prelude","Just") [CPVar (1,"x")],CPVar (2,"f")] [(CSymbol ("Prelude","success"),CApply (CVar (2,"f")) (CVar (1,"x")))] []]),+  CFunc ("Maybe","catMaybes") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Maybe") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"ms")] [(CSymbol ("Prelude","success"),CListComp (CVar (1,"m")) [CSPat (CPComb ("Prelude","Just") [CPVar (1,"m")]) (CVar (0,"ms"))])] []]),+  CFunc ("Maybe","fromJust") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude","Just") [CPVar (0,"a")]] [(CSymbol ("Prelude","success"),CVar (0,"a"))] [],CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))] []]),+  CFunc ("Maybe","fromMaybe") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"d"),CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CVar (0,"d"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude","Just") [CPVar (2,"a")]] [(CSymbol ("Prelude","success"),CVar (2,"a"))] []]),+  CFunc ("Maybe","isJust") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","Just") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Maybe","isNothing") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Just") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Maybe","listToMaybe") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"a"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CVar (0,"a")))] []]),+  CFunc ("Maybe","mapMMaybe") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","sequenceMaybe"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Maybe","mapMaybe") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","catMaybes"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Maybe","maybeToList") 1 Public (CFuncType (CTCons ("Prelude","Maybe") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Just") [CPVar (0,"a")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"a"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Maybe","sequenceMaybe") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Maybe") [CTVar (0,"a")]]) (CTCons ("Prelude","Maybe") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Just")) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Maybe",">>-")) (CVar (0,"c"))) (CLambda [CPVar (2,"x")] (CApply (CApply (CSymbol ("Maybe",">>-")) (CApply (CSymbol ("Maybe","sequenceMaybe")) (CVar (1,"cs")))) (CLambda [CPVar (3,"xs")] (CApply (CSymbol ("Prelude","Just")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))))))] []])]+ [COp ("Maybe",">>-") CInfixlOp 1]
+ src/lib/Curry/Module/.curry/Meta.acy view
@@ -0,0 +1,29 @@+CurryProg "Meta"+ ["Prelude"]+ [CType ("Meta","RichSearchTree") Public [(0,"a")] [CCons ("Meta","RichFail") 1 Public [CTCons ("Meta","Exception") []],CCons ("Meta","RichValue") 1 Public [CTVar (0,"a")],CCons ("Meta","RichChoice") 2 Public [CTCons ("Meta","OrRef") [],CTCons ("Prelude","[]") [CTCons ("Meta","RichSearchTree") [CTVar (0,"a")]]],CCons ("Meta","RichSuspend") 0 Public []],+  CType ("Meta","Exception") Public [] [CCons ("Meta","ErrorCall") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","PatternMatchFail") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","AssertionFailed") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","IOException") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","PreludeFailed") 0 Public []],+  CType ("Meta","OrRef") Public [] [],+  CType ("Meta","Seq") Private [(0,"a")] [CCons ("Meta","Nil") 0 Private [],CCons ("Meta","Cons") 2 Private [CTVar (0,"a"),CTCons ("Meta","Seq") [CTVar (0,"a")]],CCons ("Meta","Continued") 1 Private [CTCons ("Meta","Seq") [CTVar (0,"a")]]]]+ [CFunc ("Meta","allValuesI") 0 Public (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Meta","list"))) (CSymbol ("Meta","seq")))] []]),+  CFunc ("Meta","cover") 1 Public (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CExternal "cover"),+  CFunc ("Meta","getRichSearchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Meta","RichSearchTree") [CTVar (0,"a")]])) (CExternal "getRichSearchTree"),+  CFunc ("Meta","ghnfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "ghnfIO"),+  CFunc ("Meta","gnfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "gnfIO"),+  CFunc ("Meta","headNormalFormIO") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CExternal "headNormalFormIO"),+  CFunc ("Meta","hnfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "hnfIO"),+  CFunc ("Meta","interleave") 2 Private (CFuncType (CTCons ("Meta","Seq") [CTVar (0,"a")]) (CFuncType (CTCons ("Meta","Seq") [CTVar (0,"a")]) (CTCons ("Meta","Seq") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Meta","Nil") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Meta","Continued")) (CVar (0,"ys")))] [],CRule [CPComb ("Meta","Cons") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","Cons")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Meta","interleave")) (CVar (3,"ys"))) (CVar (2,"xs"))))] [],CRule [CPAs (5,"xs") (CPComb ("Meta","Continued") [CPVar (4,"_")]),CPComb ("Meta","Nil") []] [(CSymbol ("Prelude","success"),CVar (5,"xs"))] [],CRule [CPComb ("Meta","Continued") [CPVar (6,"xs")],CPComb ("Meta","Cons") [CPVar (7,"x"),CPVar (8,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","Cons")) (CVar (7,"x"))) (CApply (CApply (CSymbol ("Meta","interleave")) (CVar (6,"xs"))) (CVar (8,"ys"))))] [],CRule [CPComb ("Meta","Continued") [CPVar (9,"xs")],CPComb ("Meta","Continued") [CPVar (10,"ys")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Meta","Continued")) (CApply (CApply (CSymbol ("Meta","interleave")) (CVar (9,"xs"))) (CVar (10,"ys"))))] []]),+  CFunc ("Meta","isFree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Either") [CTVar (0,"a"),CTVar (0,"a")]])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","headNormalFormIO")) (CSymbol ("Meta","prim_isFree"))) (CVar (0,"x")))] []]),+  CFunc ("Meta","isValOrChoice") 1 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","Fail") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","Value") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Choice") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Suspend") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Meta","list") 1 Private (CFuncType (CTCons ("Meta","Seq") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Meta","Nil") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Meta","Cons") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CSymbol ("Meta","list")) (CVar (1,"xs"))))] [],CRule [CPComb ("Meta","Continued") [CPVar (2,"xs")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Meta","list")) (CVar (2,"xs")))] []]),+  CFunc ("Meta","nfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "nfIO"),+  CFunc ("Meta","ors") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CExternal "ors"),+  CFunc ("Meta","parallelSearch") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CExternal "parallelSearch"),+  CFunc ("Meta","prim_isFree") 1 Private (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Either") [CTVar (0,"a"),CTVar (0,"a")]])) (CExternal "prim_isFree"),+  CFunc ("Meta","prim_throw") 1 Private (CFuncType (CTCons ("Meta","Exception") []) (CTVar (0,"a"))) (CExternal "prim_throw"),+  CFunc ("Meta","richST") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Meta","RichSearchTree") [CTVar (0,"a")])) (CExternal "richST"),+  CFunc ("Meta","richSearchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Meta","RichSearchTree") [CTVar (0,"a")])) (CExternal "richSearchTree"),+  CFunc ("Meta","searchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","SearchTree") [CTVar (0,"a")])) (CExternal "searchTree"),+  CFunc ("Meta","seq") 1 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Meta","Seq") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","Fail") []] [(CSymbol ("Prelude","success"),CSymbol ("Meta","Nil"))] [],CRule [CPComb ("Prelude","Value") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","Cons")) (CVar (0,"x"))) (CSymbol ("Meta","Nil")))] [],CRule [CPComb ("Prelude","Choice") [CPVar (1,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr1")) (CSymbol ("Meta","interleave"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Meta","Nil"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Meta","seq"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CSymbol ("Meta","isValOrChoice"))) (CVar (1,"ts"))))))] [],CRule [CPComb ("Prelude","Suspend") []] [(CSymbol ("Prelude","success"),CSymbol ("Meta","Nil"))] []]),+  CFunc ("Meta","st") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","SearchTree") [CTVar (0,"a")])) (CExternal "st"),+  CFunc ("Meta","throw") 1 Public (CFuncType (CTCons ("Meta","Exception") []) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Meta","prim_throw"))) (CVar (0,"e")))] []])]+ []
+ src/lib/Curry/Module/.curry/Meta.cy view
@@ -0,0 +1,49 @@+Module "Meta"+(Just (Exporting (2,3) [(Export (QualIdent Nothing (Ident "isFree" 0))),(Export (QualIdent Nothing (Ident "headNormalFormIO" 0))),(Export (QualIdent Nothing (Ident "hnfIO" 0))),(Export (QualIdent Nothing (Ident "nfIO" 0))),(Export (QualIdent Nothing (Ident "ghnfIO" 0))),(Export (QualIdent Nothing (Ident "gnfIO" 0))),(Export (QualIdent Nothing (Ident "searchTree" 0))),(ExportTypeAll (QualIdent Nothing (Ident "RichSearchTree" 0))),(Export (QualIdent Nothing (Ident "getRichSearchTree" 0))),(Export (QualIdent Nothing (Ident "richSearchTree" 0))),(Export (QualIdent Nothing (Ident "st" 0))),(Export (QualIdent Nothing (Ident "richST" 0))),(Export (QualIdent Nothing (Ident "cover" 0))),(Export (QualIdent Nothing (Ident "ors" 0))),(Export (QualIdent Nothing (Ident "OrRef" 0))),(Export (QualIdent Nothing (Ident "parallelSearch" 0))),(ExportTypeAll (QualIdent Nothing (Ident "Exception" 0))),(Export (QualIdent Nothing (Ident "throw" 0))),(Export (QualIdent Nothing (Ident "allValuesI" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(DataDecl (56,1) (Ident "RichSearchTree" 0) [(Ident "a" 0)] [(ConstrDecl (57,5) [] (Ident "RichFail" 0) [(ConstructorType (QualIdent Nothing (Ident "Exception" 0)) [])]),(ConstrDecl (58,5) [] (Ident "RichValue" 0) [(VariableType (Ident "a" 0))]),(ConstrDecl (59,5) [] (Ident "RichChoice" 0) [(ConstructorType (QualIdent Nothing (Ident "OrRef" 0)) []),(ListType (ConstructorType (QualIdent Nothing (Ident "RichSearchTree" 0)) [(VariableType (Ident "a" 0))]))]),(ConstrDecl (60,5) [] (Ident "RichSuspend" 0) [])])+,(DataDecl (62,1) (Ident "Exception" 0) [] [(ConstrDecl (63,5) [] (Ident "ErrorCall" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]),(ConstrDecl (64,5) [] (Ident "PatternMatchFail" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]),(ConstrDecl (65,5) [] (Ident "AssertionFailed" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]),(ConstrDecl (66,5) [] (Ident "IOException" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]),(ConstrDecl (67,5) [] (Ident "PreludeFailed" 0) [])])+,(DataDecl (69,1) (Ident "OrRef" 0) [] [])+,(DataDecl (116,1) (Ident "Seq" 0) [(Ident "a" 0)] [(ConstrDecl (116,14) [] (Ident "Nil" 0) []),(ConstrDecl (116,20) [] (Ident "Cons" 0) [(VariableType (Ident "a" 0)),(ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))])]),(ConstrDecl (116,37) [] (Ident "Continued" 0) [(ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))])])])+,(TypeSig (26,1) [(Ident "isFree" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Either" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))])])))+,(FunctionDecl (27,1) (Ident "isFree" 0) [(Equation (27,1) (FunLhs (Ident "isFree" 0) [(VariablePattern (Ident "x" 2))]) (SimpleRhs (27,12) (Apply (Apply (Variable (QualIdent (Just "Meta") (Ident "headNormalFormIO" 0))) (Variable (QualIdent (Just "Meta") (Ident "prim_isFree" 0)))) (Variable (QualIdent Nothing (Ident "x" 2)))) []))])+,(TypeSig (29,1) [(Ident "prim_isFree" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Either" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))])])))+,(FlatExternalDecl (30,1) [(Ident "prim_isFree" 0)])+,(TypeSig (35,1) [(Ident "headNormalFormIO" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))]))))+,(FlatExternalDecl (36,1) [(Ident "headNormalFormIO" 0)])+,(TypeSig (44,1) [(Ident "searchTree" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (45,1) [(Ident "searchTree" 0)])+,(TypeSig (47,1) [(Ident "hnfIO" 0),(Ident "nfIO" 0),(Ident "gnfIO" 0),(Ident "ghnfIO" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (48,1) [(Ident "gnfIO" 0)])+,(FlatExternalDecl (49,1) [(Ident "ghnfIO" 0)])+,(FlatExternalDecl (50,1) [(Ident "nfIO" 0)])+,(FlatExternalDecl (51,1) [(Ident "hnfIO" 0)])+,(TypeSig (77,1) [(Ident "getRichSearchTree" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "RichSearchTree" 0)) [(VariableType (Ident "a" 0))])])))+,(FlatExternalDecl (78,1) [(Ident "getRichSearchTree" 0)])+,(TypeSig (80,1) [(Ident "richSearchTree" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "RichSearchTree" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (81,1) [(Ident "richSearchTree" 0)])+,(TypeSig (84,1) [(Ident "parallelSearch" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (VariableType (Ident "a" 0)))])))+,(FlatExternalDecl (85,1) [(Ident "parallelSearch" 0)])+,(TypeSig (88,1) [(Ident "cover" 0)] (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))+,(FlatExternalDecl (89,1) [(Ident "cover" 0)])+,(TypeSig (92,1) [(Ident "st" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (93,1) [(Ident "st" 0)])+,(TypeSig (96,1) [(Ident "richST" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "RichSearchTree" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (97,1) [(Ident "richST" 0)])+,(TypeSig (100,1) [(Ident "ors" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0))))+,(FlatExternalDecl (101,1) [(Ident "ors" 0)])+,(TypeSig (107,1) [(Ident "throw" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Exception" 0)) []) (VariableType (Ident "a" 0))))+,(FunctionDecl (108,1) (Ident "throw" 0) [(Equation (108,1) (FunLhs (Ident "throw" 0) [(VariablePattern (Ident "e" 4))]) (SimpleRhs (108,11) (InfixApply (Variable (QualIdent (Just "Meta") (Ident "prim_throw" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "e" 4)))) []))])+,(TypeSig (110,1) [(Ident "prim_throw" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Exception" 0)) []) (VariableType (Ident "a" 0))))+,(FlatExternalDecl (111,1) [(Ident "prim_throw" 0)])+,(TypeSig (118,1) [(Ident "list" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (119,1) (Ident "list" 0) [(Equation (119,1) (FunLhs (Ident "list" 0) [(ConstructorPattern (QualIdent (Just "Meta") (Ident "Nil" 0)) [])]) (SimpleRhs (119,12) (List []) [])),(Equation (120,1) (FunLhs (Ident "list" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Cons" 0)) [(VariablePattern (Ident "x" 8)),(VariablePattern (Ident "xs" 8))]))]) (SimpleRhs (120,20) (InfixApply (Variable (QualIdent Nothing (Ident "x" 8))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Meta") (Ident "list" 0))) (Variable (QualIdent Nothing (Ident "xs" 8))))) [])),(Equation (121,1) (FunLhs (Ident "list" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Continued" 0)) [(VariablePattern (Ident "xs" 10))]))]) (SimpleRhs (121,23) (Apply (Variable (QualIdent (Just "Meta") (Ident "list" 0))) (Variable (QualIdent Nothing (Ident "xs" 10)))) []))])+,(TypeSig (123,1) [(Ident "interleave" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (124,1) (Ident "interleave" 0) [(Equation (124,1) (FunLhs (Ident "interleave" 0) [(ConstructorPattern (QualIdent (Just "Meta") (Ident "Nil" 0)) []),(VariablePattern (Ident "ys" 12))]) (SimpleRhs (124,46) (Apply (Constructor (QualIdent (Just "Meta") (Ident "Continued" 0))) (Variable (QualIdent Nothing (Ident "ys" 12)))) [])),(Equation (125,1) (FunLhs (Ident "interleave" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Cons" 0)) [(VariablePattern (Ident "x" 14)),(VariablePattern (Ident "xs" 14))])),(VariablePattern (Ident "ys" 14))]) (SimpleRhs (125,46) (Apply (Apply (Constructor (QualIdent (Just "Meta") (Ident "Cons" 0))) (Variable (QualIdent Nothing (Ident "x" 14)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Meta") (Ident "interleave" 0))) (Variable (QualIdent Nothing (Ident "ys" 14)))) (Variable (QualIdent Nothing (Ident "xs" 14)))))) [])),(Equation (126,1) (FunLhs (Ident "interleave" 0) [(AsPattern (Ident "xs" 16) (ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Continued" 0)) [(VariablePattern (Ident "_" 17))]))),(ConstructorPattern (QualIdent (Just "Meta") (Ident "Nil" 0)) [])]) (SimpleRhs (126,46) (Variable (QualIdent Nothing (Ident "xs" 16))) [])),(Equation (127,1) (FunLhs (Ident "interleave" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Continued" 0)) [(VariablePattern (Ident "xs" 19))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Cons" 0)) [(VariablePattern (Ident "x" 19)),(VariablePattern (Ident "ys" 19))]))]) (SimpleRhs (127,46) (Apply (Apply (Constructor (QualIdent (Just "Meta") (Ident "Cons" 0))) (Variable (QualIdent Nothing (Ident "x" 19)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Meta") (Ident "interleave" 0))) (Variable (QualIdent Nothing (Ident "xs" 19)))) (Variable (QualIdent Nothing (Ident "ys" 19)))))) [])),(Equation (128,1) (FunLhs (Ident "interleave" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Continued" 0)) [(VariablePattern (Ident "xs" 21))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Meta") (Ident "Continued" 0)) [(VariablePattern (Ident "ys" 21))]))]) (SimpleRhs (128,46) (Apply (Constructor (QualIdent (Just "Meta") (Ident "Continued" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Meta") (Ident "interleave" 0))) (Variable (QualIdent Nothing (Ident "xs" 21)))) (Variable (QualIdent Nothing (Ident "ys" 21)))))) []))])+,(TypeSig (130,1) [(Ident "seq" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Seq" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (131,1) (Ident "seq" 0) [(Equation (131,1) (FunLhs (Ident "seq" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Fail" 0)) [])]) (SimpleRhs (131,19) (Constructor (QualIdent (Just "Meta") (Ident "Nil" 0))) [])),(Equation (132,1) (FunLhs (Ident "seq" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Value" 0)) [(VariablePattern (Ident "x" 25))]))]) (SimpleRhs (132,19) (Apply (Apply (Constructor (QualIdent (Just "Meta") (Ident "Cons" 0))) (Variable (QualIdent Nothing (Ident "x" 25)))) (Constructor (QualIdent (Just "Meta") (Ident "Nil" 0)))) [])),(Equation (133,1) (FunLhs (Ident "seq" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Choice" 0)) [(VariablePattern (Ident "ts" 27))]))]) (SimpleRhs (133,19) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr1" 0))) (Variable (QualIdent (Just "Meta") (Ident "interleave" 0)))) (Paren (InfixApply (Constructor (QualIdent (Just "Meta") (Ident "Nil" 0))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "Prelude") (Ident "seq" 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Variable (QualIdent (Just "Meta") (Ident "isValOrChoice" 0)))) (Variable (QualIdent Nothing (Ident "ts" 27))))))))) [])),(Equation (134,1) (FunLhs (Ident "seq" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Suspend" 0)) [])]) (SimpleRhs (134,19) (Constructor (QualIdent (Just "Meta") (Ident "Nil" 0))) []))])+,(TypeSig (136,1) [(Ident "isValOrChoice" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (137,1) (Ident "isValOrChoice" 0) [(Equation (137,1) (FunLhs (Ident "isValOrChoice" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Fail" 0)) [])]) (SimpleRhs (137,28) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (138,1) (FunLhs (Ident "isValOrChoice" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Value" 0)) [(VariablePattern (Ident "_" 34))]))]) (SimpleRhs (138,28) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (139,1) (FunLhs (Ident "isValOrChoice" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Choice" 0)) [(VariablePattern (Ident "_" 37))]))]) (SimpleRhs (139,28) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (140,1) (FunLhs (Ident "isValOrChoice" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Suspend" 0)) [])]) (SimpleRhs (140,28) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(TypeSig (142,1) [(Ident "allValuesI" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (143,1) (Ident "allValuesI" 0) [(Equation (143,1) (FunLhs (Ident "allValuesI" 0) []) (SimpleRhs (143,14) (InfixApply (Variable (QualIdent (Just "Meta") (Ident "list" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "seq" 0)))) []))])+]
+ src/lib/Curry/Module/.curry/Meta.efc view
@@ -0,0 +1,1 @@+Prog "Meta" ["Prelude"] [Type ((Nothing,Nothing,"Meta","RichSearchTree")) Public [0] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Exception") []) (TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0])),"Meta","RichFail")) 1 Public [TCons ((Nothing,Nothing,"Meta","Exception")) []],Cons ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0])),"Meta","RichValue")) 1 Public [TVar 0],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","OrRef") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0]))),"Meta","RichChoice")) 2 Public [TCons ((Nothing,Nothing,"Meta","OrRef")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Meta","RichSearchTree")) [TVar 0]]],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0]),"Meta","RichSuspend")) 0 Public []],Type ((Nothing,Nothing,"Meta","Exception")) Public [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Meta","Exception") [])),"Meta","ErrorCall")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Meta","Exception") [])),"Meta","PatternMatchFail")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Meta","Exception") [])),"Meta","AssertionFailed")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Meta","Exception") [])),"Meta","IOException")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Exception") []),"Meta","PreludeFailed")) 0 Public []],Type ((Nothing,Nothing,"Meta","OrRef")) Public [] [],Type ((Nothing,Nothing,"Meta","Seq")) Private [0] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) 0 Private [],Cons ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) 2 Private [TVar 0,TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0]],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","Continued")) 1 Private [TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0]]]] [Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]])),"Meta","isFree")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Either")) [TVar 0,TVar 0]])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]]))),"Meta","headNormalFormIO")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]])),"Meta","prim_isFree")) [],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]])),"Meta","prim_isFree")) 1 Private (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Either")) [TVar 0,TVar 0]])) (External "Meta.prim_isFree"),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Meta","headNormalFormIO")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1]))) (External "Meta.headNormalFormIO"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Meta","searchTree")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0])) (External "Meta.searchTree"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Meta","gnfIO")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "Meta.gnfIO"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Meta","ghnfIO")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "Meta.ghnfIO"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Meta","nfIO")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "Meta.nfIO"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Meta","hnfIO")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "Meta.hnfIO"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0]])),"Meta","getRichSearchTree")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Meta","RichSearchTree")) [TVar 0]])) (External "Meta.getRichSearchTree"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0])),"Meta","richSearchTree")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Meta","RichSearchTree")) [TVar 0])) (External "Meta.richSearchTree"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Meta","parallelSearch")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (External "Meta.parallelSearch"),Func ((Nothing,Just (FuncType (TVar 0) (TVar 0)),"Meta","cover")) 1 Public (FuncType (TVar 0) (TVar 0)) (External "Meta.cover"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Meta","st")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0])) (External "Meta.st"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Meta","RichSearchTree") [TVar 0])),"Meta","richST")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Meta","RichSearchTree")) [TVar 0])) (External "Meta.richST"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"Meta","ors")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)) (External "Meta.ors"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Exception") []) (TVar 0)),"Meta","throw")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Meta","Exception")) []) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Meta","Exception") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Meta","Exception") []) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Meta","Exception") []) (TVar 0))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Exception") []) (TVar 0)),"Meta","prim_throw")) [],Var ((Just (TCons (Nothing,Nothing,"Meta","Exception") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Exception") []) (TVar 0)),"Meta","prim_throw")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Meta","Exception")) []) (TVar 0)) (External "Meta.prim_throw"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Meta","list")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Meta","list")) [Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),3))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","Continued")) [(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Meta","list")) [Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),4))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","interleave")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0]) (TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","Continued")) [Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),2))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","interleave")) [Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),2)),Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),4))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","Continued")) [(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) []) (Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) [Var ((Just (TVar 0),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","interleave")) [Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),7))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","Continued")) [(Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),8)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","Continued")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","interleave")) [Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),8))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","seq")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Meta","Seq")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Fail")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Value")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","Cons")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Prelude","foldr1")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]))),"Meta","interleave")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","seq")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude","filter")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Meta","isValOrChoice")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3))]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Suspend")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]),"Meta","Nil")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Meta","isValOrChoice")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Fail")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Value")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Suspend")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Meta","allValuesI")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Meta","list")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Meta","Seq") [TVar 0])),"Meta","seq")) []]))] []
+ src/lib/Curry/Module/.curry/Meta.fcy view
@@ -0,0 +1,1 @@+Prog "Meta" ["Prelude"] [Type ("Meta","RichSearchTree") Public [0] [Cons ("Meta","RichFail") 1 Public [TCons ("Meta","Exception") []],Cons ("Meta","RichValue") 1 Public [TVar 0],Cons ("Meta","RichChoice") 2 Public [TCons ("Meta","OrRef") [],TCons ("Prelude","[]") [TCons ("Meta","RichSearchTree") [TVar 0]]],Cons ("Meta","RichSuspend") 0 Public []],Type ("Meta","Exception") Public [] [Cons ("Meta","ErrorCall") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","PatternMatchFail") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","AssertionFailed") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","IOException") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","PreludeFailed") 0 Public []],Type ("Meta","OrRef") Public [] [],Type ("Meta","Seq") Private [0] [Cons ("Meta","Nil") 0 Private [],Cons ("Meta","Cons") 2 Private [TVar 0,TCons ("Meta","Seq") [TVar 0]],Cons ("Meta","Continued") 1 Private [TCons ("Meta","Seq") [TVar 0]]]] [Func ("Meta","isFree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","Either") [TVar 0,TVar 0]])) (Rule [1] (Comb FuncCall ("Meta","headNormalFormIO") [Comb (FuncPartCall 1) ("Meta","prim_isFree") [],Var 1])),Func ("Meta","prim_isFree") 1 Private (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","Either") [TVar 0,TVar 0]])) (External "Meta.prim_isFree"),Func ("Meta","headNormalFormIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1]))) (External "Meta.headNormalFormIO"),Func ("Meta","searchTree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","SearchTree") [TVar 0])) (External "Meta.searchTree"),Func ("Meta","gnfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.gnfIO"),Func ("Meta","ghnfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.ghnfIO"),Func ("Meta","nfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.nfIO"),Func ("Meta","hnfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.hnfIO"),Func ("Meta","getRichSearchTree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Meta","RichSearchTree") [TVar 0]])) (External "Meta.getRichSearchTree"),Func ("Meta","richSearchTree") 1 Public (FuncType (TVar 0) (TCons ("Meta","RichSearchTree") [TVar 0])) (External "Meta.richSearchTree"),Func ("Meta","parallelSearch") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 0]])) (External "Meta.parallelSearch"),Func ("Meta","cover") 1 Public (FuncType (TVar 0) (TVar 0)) (External "Meta.cover"),Func ("Meta","st") 1 Public (FuncType (TVar 0) (TCons ("Prelude","SearchTree") [TVar 0])) (External "Meta.st"),Func ("Meta","richST") 1 Public (FuncType (TVar 0) (TCons ("Meta","RichSearchTree") [TVar 0])) (External "Meta.richST"),Func ("Meta","ors") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (External "Meta.ors"),Func ("Meta","throw") 1 Public (FuncType (TCons ("Meta","Exception") []) (TVar 0)) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Meta","prim_throw") [],Var 1])),Func ("Meta","prim_throw") 1 Private (FuncType (TCons ("Meta","Exception") []) (TVar 0)) (External "Meta.prim_throw"),Func ("Meta","list") 1 Private (FuncType (TCons ("Meta","Seq") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Meta","Nil") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Meta","Cons") [2,3]) (Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("Meta","list") [Var 3]]),Branch (Pattern ("Meta","Continued") [4]) (Comb FuncCall ("Meta","list") [Var 4])])),Func ("Meta","interleave") 2 Private (FuncType (TCons ("Meta","Seq") [TVar 0]) (FuncType (TCons ("Meta","Seq") [TVar 0]) (TCons ("Meta","Seq") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Meta","Nil") []) (Comb ConsCall ("Meta","Continued") [Var 2]),Branch (Pattern ("Meta","Cons") [3,4]) (Comb ConsCall ("Meta","Cons") [Var 3,Comb FuncCall ("Meta","interleave") [Var 2,Var 4]]),Branch (Pattern ("Meta","Continued") [5]) (Case  Flex (Var 2) [Branch (Pattern ("Meta","Nil") []) (Var 1),Branch (Pattern ("Meta","Cons") [6,7]) (Comb ConsCall ("Meta","Cons") [Var 6,Comb FuncCall ("Meta","interleave") [Var 5,Var 7]]),Branch (Pattern ("Meta","Continued") [8]) (Comb ConsCall ("Meta","Continued") [Comb FuncCall ("Meta","interleave") [Var 5,Var 8]])])])),Func ("Meta","seq") 1 Private (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Meta","Seq") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Fail") []) (Comb ConsCall ("Meta","Nil") []),Branch (Pattern ("Prelude","Value") [2]) (Comb ConsCall ("Meta","Cons") [Var 2,Comb ConsCall ("Meta","Nil") []]),Branch (Pattern ("Prelude","Choice") [3]) (Comb FuncCall ("Prelude","foldr1") [Comb (FuncPartCall 2) ("Meta","interleave") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Meta","Nil") [],Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Meta","seq") [],Comb FuncCall ("Prelude","filter") [Comb (FuncPartCall 1) ("Meta","isValOrChoice") [],Var 3]]]]),Branch (Pattern ("Prelude","Suspend") []) (Comb ConsCall ("Meta","Nil") [])])),Func ("Meta","isValOrChoice") 1 Private (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Fail") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude","Value") [2]) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","Choice") [3]) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","Suspend") []) (Comb ConsCall ("Prelude","False") [])])),Func ("Meta","allValuesI") 0 Public (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Meta","list") [],Comb (FuncPartCall 1) ("Meta","seq") []]))] []
+ src/lib/Curry/Module/.curry/Meta.fint view
@@ -0,0 +1,1 @@+Prog "Meta" ["Prelude"] [Type ("Meta","RichSearchTree") Public [0] [Cons ("Meta","RichFail") 1 Public [TCons ("Meta","Exception") []],Cons ("Meta","RichValue") 1 Public [TVar 0],Cons ("Meta","RichChoice") 2 Public [TCons ("Meta","OrRef") [],TCons ("Prelude","[]") [TCons ("Meta","RichSearchTree") [TVar 0]]],Cons ("Meta","RichSuspend") 0 Public []],Type ("Meta","Exception") Public [] [Cons ("Meta","ErrorCall") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","PatternMatchFail") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","AssertionFailed") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","IOException") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]],Cons ("Meta","PreludeFailed") 0 Public []],Type ("Meta","OrRef") Public [] []] [Func ("Meta","isFree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","Either") [TVar 0,TVar 0]])) (Rule [] (Var 0)),Func ("Meta","headNormalFormIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1]))) (External "Meta.headNormalFormIO"),Func ("Meta","searchTree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","SearchTree") [TVar 0])) (External "Meta.searchTree"),Func ("Meta","gnfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.gnfIO"),Func ("Meta","ghnfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.ghnfIO"),Func ("Meta","nfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.nfIO"),Func ("Meta","hnfIO") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Meta.hnfIO"),Func ("Meta","getRichSearchTree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Meta","RichSearchTree") [TVar 0]])) (External "Meta.getRichSearchTree"),Func ("Meta","richSearchTree") 1 Public (FuncType (TVar 0) (TCons ("Meta","RichSearchTree") [TVar 0])) (External "Meta.richSearchTree"),Func ("Meta","parallelSearch") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 0]])) (External "Meta.parallelSearch"),Func ("Meta","cover") 1 Public (FuncType (TVar 0) (TVar 0)) (External "Meta.cover"),Func ("Meta","st") 1 Public (FuncType (TVar 0) (TCons ("Prelude","SearchTree") [TVar 0])) (External "Meta.st"),Func ("Meta","richST") 1 Public (FuncType (TVar 0) (TCons ("Meta","RichSearchTree") [TVar 0])) (External "Meta.richST"),Func ("Meta","ors") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (External "Meta.ors"),Func ("Meta","throw") 1 Public (FuncType (TCons ("Meta","Exception") []) (TVar 0)) (Rule [] (Var 0)),Func ("Meta","allValuesI") 0 Public (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Meta.uacy view
@@ -0,0 +1,29 @@+CurryProg "Meta"+ ["Prelude"]+ [CType ("Meta","RichSearchTree") Public [(0,"a")] [CCons ("Meta","RichFail") 1 Public [CTCons ("Meta","Exception") []],CCons ("Meta","RichValue") 1 Public [CTVar (0,"a")],CCons ("Meta","RichChoice") 2 Public [CTCons ("Meta","OrRef") [],CTCons ("Prelude","[]") [CTCons ("Meta","RichSearchTree") [CTVar (0,"a")]]],CCons ("Meta","RichSuspend") 0 Public []],+  CType ("Meta","Exception") Public [] [CCons ("Meta","ErrorCall") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","PatternMatchFail") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","AssertionFailed") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","IOException") 1 Public [CTCons ("Prelude","String") []],CCons ("Meta","PreludeFailed") 0 Public []],+  CType ("Meta","OrRef") Public [] [],+  CType ("Meta","Seq") Private [(0,"a")] [CCons ("Meta","Nil") 0 Private [],CCons ("Meta","Cons") 2 Private [CTVar (0,"a"),CTCons ("Meta","Seq") [CTVar (0,"a")]],CCons ("Meta","Continued") 1 Private [CTCons ("Meta","Seq") [CTVar (0,"a")]]]]+ [CFunc ("Meta","allValuesI") 0 Public (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Meta","list"))) (CSymbol ("Prelude","seq")))] []]),+  CFunc ("Meta","cover") 1 Public (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CExternal "cover"),+  CFunc ("Meta","getRichSearchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Meta","RichSearchTree") [CTVar (0,"a")]])) (CExternal "getRichSearchTree"),+  CFunc ("Meta","ghnfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "ghnfIO"),+  CFunc ("Meta","gnfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "gnfIO"),+  CFunc ("Meta","headNormalFormIO") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CExternal "headNormalFormIO"),+  CFunc ("Meta","hnfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "hnfIO"),+  CFunc ("Meta","interleave") 2 Private (CFuncType (CTCons ("Meta","Seq") [CTVar (0,"a")]) (CFuncType (CTCons ("Meta","Seq") [CTVar (0,"a")]) (CTCons ("Meta","Seq") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Meta","Nil") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Meta","Continued")) (CVar (0,"ys")))] [],CRule [CPComb ("Meta","Cons") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","Cons")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Meta","interleave")) (CVar (3,"ys"))) (CVar (2,"xs"))))] [],CRule [CPAs (5,"xs") (CPComb ("Meta","Continued") [CPVar (4,"_")]),CPComb ("Meta","Nil") []] [(CSymbol ("Prelude","success"),CVar (5,"xs"))] [],CRule [CPComb ("Meta","Continued") [CPVar (6,"xs")],CPComb ("Meta","Cons") [CPVar (7,"x"),CPVar (8,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","Cons")) (CVar (7,"x"))) (CApply (CApply (CSymbol ("Meta","interleave")) (CVar (6,"xs"))) (CVar (8,"ys"))))] [],CRule [CPComb ("Meta","Continued") [CPVar (9,"xs")],CPComb ("Meta","Continued") [CPVar (10,"ys")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Meta","Continued")) (CApply (CApply (CSymbol ("Meta","interleave")) (CVar (9,"xs"))) (CVar (10,"ys"))))] []]),+  CFunc ("Meta","isFree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Either") [CTVar (0,"a"),CTVar (0,"a")]])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","headNormalFormIO")) (CSymbol ("Meta","prim_isFree"))) (CVar (0,"x")))] []]),+  CFunc ("Meta","isValOrChoice") 1 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","Fail") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","Value") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Choice") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","Suspend") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Meta","list") 1 Private (CFuncType (CTCons ("Meta","Seq") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Meta","Nil") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Meta","Cons") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CSymbol ("Meta","list")) (CVar (1,"xs"))))] [],CRule [CPComb ("Meta","Continued") [CPVar (2,"xs")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Meta","list")) (CVar (2,"xs")))] []]),+  CFunc ("Meta","nfIO") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "nfIO"),+  CFunc ("Meta","ors") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CExternal "ors"),+  CFunc ("Meta","parallelSearch") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CExternal "parallelSearch"),+  CFunc ("Meta","prim_isFree") 1 Private (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Either") [CTVar (0,"a"),CTVar (0,"a")]])) (CExternal "prim_isFree"),+  CFunc ("Meta","prim_throw") 1 Private (CFuncType (CTCons ("Meta","Exception") []) (CTVar (0,"a"))) (CExternal "prim_throw"),+  CFunc ("Meta","richST") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Meta","RichSearchTree") [CTVar (0,"a")])) (CExternal "richST"),+  CFunc ("Meta","richSearchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Meta","RichSearchTree") [CTVar (0,"a")])) (CExternal "richSearchTree"),+  CFunc ("Meta","searchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","SearchTree") [CTVar (0,"a")])) (CExternal "searchTree"),+  CFunc ("Meta","seq") 1 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Meta","Seq") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","Fail") []] [(CSymbol ("Prelude","success"),CSymbol ("Meta","Nil"))] [],CRule [CPComb ("Prelude","Value") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Meta","Cons")) (CVar (0,"x"))) (CSymbol ("Meta","Nil")))] [],CRule [CPComb ("Prelude","Choice") [CPVar (1,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr1")) (CSymbol ("Meta","interleave"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("Meta","Nil"))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Prelude","seq"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CSymbol ("Meta","isValOrChoice"))) (CVar (1,"ts"))))))] [],CRule [CPComb ("Prelude","Suspend") []] [(CSymbol ("Prelude","success"),CSymbol ("Meta","Nil"))] []]),+  CFunc ("Meta","st") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","SearchTree") [CTVar (0,"a")])) (CExternal "st"),+  CFunc ("Meta","throw") 1 Public (CFuncType (CTCons ("Meta","Exception") []) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Meta","prim_throw"))) (CVar (0,"e")))] []])]+ []
+ src/lib/Curry/Module/.curry/Parser.acy view
@@ -0,0 +1,14 @@+CurryProg "Parser"+ ["Prelude"]+ [CTypeSyn ("Parser","Parser") Public [(0,"token")] (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"token")]) (CTCons ("Prelude","[]") [CTVar (0,"token")])),+  CTypeSyn ("Parser","ParserRep") Public [(0,"rep"),(1,"token")] (CFuncType (CTVar (0,"rep")) (CTCons ("Parser","Parser") [CTVar (1,"token")]))]+ [CFunc ("Parser","<*>") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"p1"),CPVar (1,"p2")] [(CSymbol ("Prelude","success"),CSymbol ("Parser","seq"))] [CLocalFunc (CFunc ("Parser","seq") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"_23")]) (CTCons ("Prelude","[]") [CTVar (1,"_23")])) (CRules CFlex [CRule [CPVar (2,"sentence")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CVar (1,"p2"))) (CApply (CVar (0,"p1")) (CVar (2,"sentence"))))] []]))]]),+  CFunc ("Parser","<|>") 2 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"sentence")] (CApply (CVar (0,"p")) (CVar (2,"sentence"))))] [],CRule [CPVar (3,"_"),CPVar (4,"q")] [(CSymbol ("Prelude","success"),CLambda [CPVar (5,"sentence")] (CApply (CVar (4,"q")) (CVar (5,"sentence"))))] []]),+  CFunc ("Parser","<||>") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"q")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"rep")] (CApply (CApply (CSymbol ("Parser","<|>")) (CApply (CVar (0,"p")) (CVar (2,"rep")))) (CApply (CVar (1,"q")) (CVar (2,"rep")))))] []]),+  CFunc ("Parser",">>>") 4 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"parser"),CPVar (1,"repexp"),CPVar (2,"rep"),CPVar (3,"sentence")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Parser","attach"))) (CApply (CVar (0,"parser")) (CVar (3,"sentence"))))] [CLocalFunc (CFunc ("Parser","attach") 1 Private (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (4,"rest")] [(CApply (CApply (CSymbol ("Prelude","=:=")) (CVar (1,"repexp"))) (CVar (2,"rep")),CVar (4,"rest"))] []]))]]),+  CFunc ("Parser","empty") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"sentence")] [(CSymbol ("Prelude","success"),CVar (0,"sentence"))] []]),+  CFunc ("Parser","satisfy") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"pred"),CPVar (1,"sym"),CPComb ("Prelude",":") [CPVar (2,"token"),CPVar (3,"tokens")]] [(CApply (CApply (CSymbol ("Prelude","&")) (CApply (CApply (CSymbol ("Prelude","=:=")) (CApply (CVar (0,"pred")) (CVar (2,"token")))) (CSymbol ("Prelude","True")))) (CApply (CApply (CSymbol ("Prelude","=:=")) (CVar (1,"sym"))) (CVar (2,"token"))),CVar (3,"tokens"))] []]),+  CFunc ("Parser","some") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Parser",">>>")) (CApply (CApply (CSymbol ("Parser","<*>")) (CApply (CVar (0,"p")) (CVar (1,"x")))) (CApply (CApply (CSymbol ("Parser","star")) (CVar (0,"p"))) (CVar (2,"xs"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (2,"xs"))))] [CLocalVar (1,"x"),CLocalVar (2,"xs")]]),+  CFunc ("Parser","star") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Parser","<||>")) (CApply (CApply (CSymbol ("Parser",">>>")) (CApply (CApply (CSymbol ("Parser","<*>")) (CApply (CVar (0,"p")) (CVar (1,"x")))) (CApply (CApply (CSymbol ("Parser","star")) (CVar (0,"p"))) (CVar (2,"xs"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (2,"xs"))))) (CApply (CApply (CSymbol ("Parser",">>>")) (CSymbol ("Parser","empty"))) (CSymbol ("Prelude","[]"))))] [CLocalVar (1,"x"),CLocalVar (2,"xs")]]),+  CFunc ("Parser","terminal") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"sym"),CPComb ("Prelude",":") [CPVar (1,"token"),CPVar (2,"tokens")]] [(CApply (CApply (CSymbol ("Prelude","=:=")) (CVar (0,"sym"))) (CVar (1,"token")),CVar (2,"tokens"))] []])]+ [COp ("Parser","<*>") CInfixrOp 4,COp ("Parser",">>>") CInfixrOp 3,COp ("Parser","<||>") CInfixrOp 2,COp ("Parser","<|>") CInfixrOp 2]
+ src/lib/Curry/Module/.curry/Parser.cy view
@@ -0,0 +1,27 @@+Module "Parser"+Nothing+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(TypeDecl (25,1) (Ident "Parser" 0) [(Ident "token" 0)] (ArrowType (ListType (VariableType (Ident "token" 0))) (ListType (VariableType (Ident "token" 0)))))+,(TypeDecl (31,1) (Ident "ParserRep" 0) [(Ident "rep" 0),(Ident "token" 0)] (ArrowType (VariableType (Ident "rep" 0)) (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "token" 0))])))+,(InfixDecl (16,1) InfixR 4 [(Ident "<*>" 0)])+,(InfixDecl (17,1) InfixR 3 [(Ident ">>>" 0)])+,(InfixDecl (18,1) InfixR 2 [(Ident "<|>" 0),(Ident "<||>" 0)])+,(TypeSig (37,1) [(Ident "<|>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "t" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "t" 0))]) (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "t" 0))]))))+,(FunctionDecl (38,1) (Ident "<|>" 0) [(Equation (38,1) (OpLhs (VariablePattern (Ident "p" 2)) (Ident "<|>" 0) (VariablePattern (Ident "_" 3))) (SimpleRhs (38,11) (Lambda [(VariablePattern (Ident "sentence" 5))] (Apply (Variable (QualIdent Nothing (Ident "p" 2))) (Variable (QualIdent Nothing (Ident "sentence" 5))))) [])),(Equation (39,1) (OpLhs (VariablePattern (Ident "_" 7)) (Ident "<|>" 0) (VariablePattern (Ident "q" 6))) (SimpleRhs (39,11) (Lambda [(VariablePattern (Ident "sentence" 9))] (Apply (Variable (QualIdent Nothing (Ident "q" 6))) (Variable (QualIdent Nothing (Ident "sentence" 9))))) []))])+,(TypeSig (43,1) [(Ident "<||>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "r" 0)),(VariableType (Ident "t" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "r" 0)),(VariableType (Ident "t" 0))]) (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "r" 0)),(VariableType (Ident "t" 0))]))))+,(FunctionDecl (44,1) (Ident "<||>" 0) [(Equation (44,1) (OpLhs (VariablePattern (Ident "p" 10)) (Ident "<||>" 0) (VariablePattern (Ident "q" 10))) (SimpleRhs (44,12) (Lambda [(VariablePattern (Ident "rep" 12))] (InfixApply (Apply (Variable (QualIdent Nothing (Ident "p" 10))) (Variable (QualIdent Nothing (Ident "rep" 12)))) (InfixOp (QualIdent (Just "Parser") (Ident "<|>" 0))) (Apply (Variable (QualIdent Nothing (Ident "q" 10))) (Variable (QualIdent Nothing (Ident "rep" 12)))))) []))])+,(TypeSig (49,1) [(Ident "<*>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "t" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "t" 0))]) (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "t" 0))]))))+,(FunctionDecl (50,1) (Ident "<*>" 0) [(Equation (50,1) (OpLhs (VariablePattern (Ident "p1" 13)) (Ident "<*>" 0) (VariablePattern (Ident "p2" 13))) (SimpleRhs (50,13) (Variable (QualIdent Nothing (Ident "seq" 14))) [(FunctionDecl (51,8) (Ident "seq" 14) [(Equation (51,8) (FunLhs (Ident "seq" 14) [(VariablePattern (Ident "sentence" 15))]) (SimpleRhs (51,23) (InfixApply (Variable (QualIdent Nothing (Ident "p2" 13))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!!" 0))) (Apply (Variable (QualIdent Nothing (Ident "p1" 13))) (Variable (QualIdent Nothing (Ident "sentence" 15))))) []))])]))])+,(TypeSig (55,1) [(Ident ">>>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "token" 0))]) (ArrowType (VariableType (Ident "rep" 0)) (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "rep" 0)),(VariableType (Ident "token" 0))]))))+,(FunctionDecl (56,1) (Ident ">>>" 0) [(Equation (56,1) (ApLhs (OpLhs (VariablePattern (Ident "parser" 17)) (Ident ">>>" 0) (VariablePattern (Ident "repexp" 17))) [(VariablePattern (Ident "rep" 17)),(VariablePattern (Ident "sentence" 17))]) (SimpleRhs (56,36) (InfixApply (Variable (QualIdent Nothing (Ident "attach" 18))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!!" 0))) (Apply (Variable (QualIdent Nothing (Ident "parser" 17))) (Variable (QualIdent Nothing (Ident "sentence" 17))))) [(FunctionDecl (57,9) (Ident "attach" 18) [(Equation (57,9) (FunLhs (Ident "attach" 18) [(VariablePattern (Ident "rest" 19))]) (GuardedRhs [(CondExpr (57,21) (InfixApply (Variable (QualIdent Nothing (Ident "repexp" 17))) (InfixOp (QualIdent (Just "Prelude") (Ident "=:=" 0))) (Variable (QualIdent Nothing (Ident "rep" 17)))) (Variable (QualIdent Nothing (Ident "rest" 19))))] []))])]))])+,(TypeSig (63,1) [(Ident "empty" 0)] (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "_" 0))]))+,(FunctionDecl (64,1) (Ident "empty" 0) [(Equation (64,1) (FunLhs (Ident "empty" 0) [(VariablePattern (Ident "sentence" 21))]) (SimpleRhs (64,18) (Variable (QualIdent Nothing (Ident "sentence" 21))) []))])+,(TypeSig (67,1) [(Ident "terminal" 0)] (ArrowType (VariableType (Ident "token" 0)) (ConstructorType (QualIdent Nothing (Ident "Parser" 0)) [(VariableType (Ident "token" 0))])))+,(FunctionDecl (68,1) (Ident "terminal" 0) [(Equation (68,1) (FunLhs (Ident "terminal" 0) [(VariablePattern (Ident "sym" 23)),(ParenPattern (InfixPattern (VariablePattern (Ident "token" 23)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "tokens" 23))))]) (GuardedRhs [(CondExpr (68,29) (InfixApply (Variable (QualIdent Nothing (Ident "sym" 23))) (InfixOp (QualIdent (Just "Prelude") (Ident "=:=" 0))) (Variable (QualIdent Nothing (Ident "token" 23)))) (Variable (QualIdent Nothing (Ident "tokens" 23))))] []))])+,(TypeSig (72,1) [(Ident "satisfy" 0)] (ArrowType (ArrowType (VariableType (Ident "token" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "token" 0)),(VariableType (Ident "token" 0))])))+,(FunctionDecl (73,1) (Ident "satisfy" 0) [(Equation (73,1) (FunLhs (Ident "satisfy" 0) [(VariablePattern (Ident "pred" 25)),(VariablePattern (Ident "sym" 25)),(ParenPattern (InfixPattern (VariablePattern (Ident "token" 25)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "tokens" 25))))]) (GuardedRhs [(CondExpr (73,33) (InfixApply (InfixApply (Apply (Variable (QualIdent Nothing (Ident "pred" 25))) (Variable (QualIdent Nothing (Ident "token" 25)))) (InfixOp (QualIdent (Just "Prelude") (Ident "=:=" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "sym" 25))) (InfixOp (QualIdent (Just "Prelude") (Ident "=:=" 0))) (Variable (QualIdent Nothing (Ident "token" 25))))) (Variable (QualIdent Nothing (Ident "tokens" 25))))] []))])+,(TypeSig (78,1) [(Ident "star" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "rep" 0)),(VariableType (Ident "token" 0))]) (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(ListType (VariableType (Ident "rep" 0))),(VariableType (Ident "token" 0))])))+,(FunctionDecl (79,1) (Ident "star" 0) [(Equation (79,1) (FunLhs (Ident "star" 0) [(VariablePattern (Ident "p" 27))]) (SimpleRhs (79,13) (InfixApply (InfixApply (InfixApply (Apply (Variable (QualIdent Nothing (Ident "p" 27))) (Variable (QualIdent Nothing (Ident "x" 28)))) (InfixOp (QualIdent (Just "Parser") (Ident "<*>" 0))) (Apply (Paren (Apply (Variable (QualIdent (Just "Parser") (Ident "star" 0))) (Variable (QualIdent Nothing (Ident "p" 27))))) (Variable (QualIdent Nothing (Ident "xs" 28))))) (InfixOp (QualIdent (Just "Parser") (Ident ">>>" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 28))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 28)))))) (InfixOp (QualIdent (Just "Parser") (Ident "<||>" 0))) (InfixApply (Variable (QualIdent (Just "Parser") (Ident "empty" 0))) (InfixOp (QualIdent (Just "Parser") (Ident ">>>" 0))) (List []))) [(ExtraVariables (80,54) [(Ident "x" 28),(Ident "xs" 28)])]))])+,(TypeSig (84,1) [(Ident "some" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(VariableType (Ident "rep" 0)),(VariableType (Ident "token" 0))]) (ConstructorType (QualIdent Nothing (Ident "ParserRep" 0)) [(ListType (VariableType (Ident "rep" 0))),(VariableType (Ident "token" 0))])))+,(FunctionDecl (85,1) (Ident "some" 0) [(Equation (85,1) (FunLhs (Ident "some" 0) [(VariablePattern (Ident "p" 29))]) (SimpleRhs (85,10) (InfixApply (InfixApply (Apply (Variable (QualIdent Nothing (Ident "p" 29))) (Variable (QualIdent Nothing (Ident "x" 30)))) (InfixOp (QualIdent (Just "Parser") (Ident "<*>" 0))) (Apply (Paren (Apply (Variable (QualIdent (Just "Parser") (Ident "star" 0))) (Variable (QualIdent Nothing (Ident "p" 29))))) (Variable (QualIdent Nothing (Ident "xs" 30))))) (InfixOp (QualIdent (Just "Parser") (Ident ">>>" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 30))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 30)))))) [(ExtraVariables (85,54) [(Ident "x" 30),(Ident "xs" 30)])]))])+]
+ src/lib/Curry/Module/.curry/Parser.efc view
@@ -0,0 +1,1 @@+Prog "Parser" ["Prelude"] [TypeSyn ((Nothing,Nothing,"Parser","Parser")) Public [0] (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])),TypeSyn ((Nothing,Nothing,"Parser","ParserRep")) Public [0,1] (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1])))] [Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser","<|>")) 2 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),2)] (Or (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Parser","<|>._#lambda2")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),1))]) (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Parser","<|>._#lambda3")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),2))]))),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Parser","<|>._#lambda2")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),2))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Parser","<|>._#lambda3")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser","<||>")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1),(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser","<||>._#lambda4")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))) (FuncType (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))) (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))))),"Parser","<||>._#lambda4")) 3 Private (FuncType (FuncType (TVar 17) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 18]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 18]))) (FuncType (FuncType (TVar 17) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 18]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 18]))) (FuncType (TVar 17) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 18]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 18]))))) (Rule [(Just (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))),1),(Just (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))),2),(Just (TVar 17),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18])))),"Parser","<|>")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))) (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))),1)),Var ((Just (TVar 17),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))) (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 17) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 18]))),2)),Var ((Just (TVar 17),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser","<*>")) 2 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser","<*>.seq.14")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),1)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),2))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])))),"Parser","<*>.seq.14")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 23]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 23])) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 23]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 23])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 23]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 23])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]))),"Prelude","$!!")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TVar 1) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))))),"Parser",">>>")) 4 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (FuncType (TVar 1) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),1),(Just (TVar 1),2),(Just (TVar 1),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","$!!")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser",">>>.attach.18")) [Var ((Just (TVar 1),3)),Var ((Just (TVar 1),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]])),Func ((Nothing,Just (FuncType (TVar 36) (FuncType (TVar 36) (FuncType (TVar 0) (TVar 0)))),"Parser",">>>.attach.18")) 3 Private (FuncType (TVar 36) (FuncType (TVar 36) (FuncType (TVar 0) (TVar 0)))) (Rule [(Just (TVar 36),1),(Just (TVar 36),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TVar 0) (TVar 0))),"Prelude","cond")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 36) (FuncType (TVar 36) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:=")) [Var ((Just (TVar 36),2)),Var ((Just (TVar 36),1))],Var ((Just (TVar 0),3))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Parser","empty")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)))),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Parser","terminal")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","cond")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:=")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 0),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser","satisfy")) 3 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","cond")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:=")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 0),4))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:=")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 0),4))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Parser","star")) 1 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1)] (Free [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser","<||>")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser",">>>")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Parser","<*>")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1)),Var ((Just (TVar 0),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Parser","star")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser",">>>")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),"Parser","empty")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]]))),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Parser","some")) 1 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1)] (Free [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser",">>>")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Parser","<*>")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1)),Var ((Just (TVar 0),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Parser","star")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]])))] [Op ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser","<*>")) InfixrOp 4,Op ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TVar 1) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))))),"Parser",">>>")) InfixrOp 3,Op ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Parser","<|>")) InfixrOp 2,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Parser","<||>")) InfixrOp 2]
+ src/lib/Curry/Module/.curry/Parser.fcy view
@@ -0,0 +1,1 @@+Prog "Parser" ["Prelude"] [TypeSyn ("Parser","Parser") Public [0] (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])),TypeSyn ("Parser","ParserRep") Public [0,1] (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1])))] [Func ("Parser","<|>") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2] (Or (Comb (FuncPartCall 1) ("Parser","<|>._#lambda2") [Var 1]) (Comb (FuncPartCall 1) ("Parser","<|>._#lambda3") [Var 2]))),Func ("Parser","<|>._#lambda2") 2 Private (FuncType (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TVar 2])) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TVar 2]))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Var 1,Var 2])),Func ("Parser","<|>._#lambda3") 2 Private (FuncType (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TVar 2])) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TVar 2]))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Var 1,Var 2])),Func ("Parser","<||>") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))))) (Rule [1,2] (Comb (FuncPartCall 1) ("Parser","<||>._#lambda4") [Var 1,Var 2])),Func ("Parser","<||>._#lambda4") 3 Private (FuncType (FuncType (TVar 17) (FuncType (TCons ("Prelude","[]") [TVar 18]) (TCons ("Prelude","[]") [TVar 18]))) (FuncType (FuncType (TVar 17) (FuncType (TCons ("Prelude","[]") [TVar 18]) (TCons ("Prelude","[]") [TVar 18]))) (FuncType (TVar 17) (FuncType (TCons ("Prelude","[]") [TVar 18]) (TCons ("Prelude","[]") [TVar 18]))))) (Rule [1,2,3] (Comb FuncCall ("Parser","<|>") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Comb FuncCall ("Prelude","apply") [Var 2,Var 3]])),Func ("Parser","<*>") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2] (Comb (FuncPartCall 1) ("Parser","<*>.seq.14") [Var 1,Var 2])),Func ("Parser","<*>.seq.14") 3 Private (FuncType (FuncType (TCons ("Prelude","[]") [TVar 23]) (TCons ("Prelude","[]") [TVar 23])) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 23]) (TCons ("Prelude","[]") [TVar 23])) (FuncType (TCons ("Prelude","[]") [TVar 23]) (TCons ("Prelude","[]") [TVar 23])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","$!!") [Var 2,Comb FuncCall ("Prelude","apply") [Var 1,Var 3]])),Func ("Parser",">>>") 4 Public (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (TVar 1) (FuncType (TVar 1) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))))) (Rule [1,2,3,4] (Comb FuncCall ("Prelude","$!!") [Comb (FuncPartCall 1) ("Parser",">>>.attach.18") [Var 3,Var 2],Comb FuncCall ("Prelude","apply") [Var 1,Var 4]])),Func ("Parser",">>>.attach.18") 3 Private (FuncType (TVar 36) (FuncType (TVar 36) (FuncType (TVar 0) (TVar 0)))) (Rule [1,2,3] (Comb FuncCall ("Prelude","cond") [Comb FuncCall ("Prelude","=:=") [Var 2,Var 1],Var 3])),Func ("Parser","empty") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Var 1)),Func ("Parser","terminal") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Prelude","cond") [Comb FuncCall ("Prelude","=:=") [Var 1,Var 3],Var 4])])),Func ("Parser","satisfy") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Prelude","cond") [Comb FuncCall ("Prelude","&") [Comb FuncCall ("Prelude","=:=") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Comb ConsCall ("Prelude","True") []],Comb FuncCall ("Prelude","=:=") [Var 2,Var 4]],Var 5])])),Func ("Parser","star") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1])))) (Rule [1] (Free [2,3] (Comb FuncCall ("Parser","<||>") [Comb (FuncPartCall 2) ("Parser",">>>") [Comb FuncCall ("Parser","<*>") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Parser","star") [Var 1],Var 3]],Comb ConsCall ("Prelude",":") [Var 2,Var 3]],Comb (FuncPartCall 2) ("Parser",">>>") [Comb (FuncPartCall 1) ("Parser","empty") [],Comb ConsCall ("Prelude","[]") []]]))),Func ("Parser","some") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1])))) (Rule [1] (Free [2,3] (Comb (FuncPartCall 2) ("Parser",">>>") [Comb FuncCall ("Parser","<*>") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Parser","star") [Var 1],Var 3]],Comb ConsCall ("Prelude",":") [Var 2,Var 3]])))] [Op ("Parser","<*>") InfixrOp 4,Op ("Parser",">>>") InfixrOp 3,Op ("Parser","<|>") InfixrOp 2,Op ("Parser","<||>") InfixrOp 2]
+ src/lib/Curry/Module/.curry/Parser.fint view
@@ -0,0 +1,1 @@+Prog "Parser" ["Prelude"] [TypeSyn ("Parser","Parser") Public [0] (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])),TypeSyn ("Parser","ParserRep") Public [0,1] (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1])))] [Func ("Parser","<|>") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [] (Var 0)),Func ("Parser","<||>") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))))) (Rule [] (Var 0)),Func ("Parser","<*>") 2 Public (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [] (Var 0)),Func ("Parser",">>>") 4 Public (FuncType (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (FuncType (TVar 1) (FuncType (TVar 1) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))))) (Rule [] (Var 0)),Func ("Parser","empty") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Parser","terminal") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Parser","satisfy") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [] (Var 0)),Func ("Parser","star") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1])))) (Rule [] (Var 0)),Func ("Parser","some") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1])))) (Rule [] (Var 0))] [Op ("Parser","<*>") InfixrOp 4,Op ("Parser",">>>") InfixrOp 3,Op ("Parser","<|>") InfixrOp 2,Op ("Parser","<||>") InfixrOp 2]
+ src/lib/Curry/Module/.curry/Parser.uacy view
@@ -0,0 +1,14 @@+CurryProg "Parser"+ ["Prelude"]+ [CTypeSyn ("Parser","Parser") Public [(0,"token")] (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"token")]) (CTCons ("Prelude","[]") [CTVar (0,"token")])),+  CTypeSyn ("Parser","ParserRep") Public [(0,"rep"),(1,"token")] (CFuncType (CTVar (0,"rep")) (CTCons ("Parser","Parser") [CTVar (1,"token")]))]+ [CFunc ("Parser","<*>") 2 Public (CFuncType (CTCons ("Parser","Parser") [CTVar (0,"t")]) (CFuncType (CTCons ("Parser","Parser") [CTVar (0,"t")]) (CTCons ("Parser","Parser") [CTVar (0,"t")]))) (CRules CFlex [CRule [CPVar (0,"p1"),CPVar (1,"p2")] [(CSymbol ("Prelude","success"),CSymbol ("Parser","seq"))] [CLocalFunc (CFunc ("Parser","seq") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"sentence")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CVar (1,"p2"))) (CApply (CVar (0,"p1")) (CVar (2,"sentence"))))] []]))]]),+  CFunc ("Parser","<|>") 2 Public (CFuncType (CTCons ("Parser","Parser") [CTVar (0,"t")]) (CFuncType (CTCons ("Parser","Parser") [CTVar (0,"t")]) (CTCons ("Parser","Parser") [CTVar (0,"t")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"sentence")] (CApply (CVar (0,"p")) (CVar (2,"sentence"))))] [],CRule [CPVar (3,"_"),CPVar (4,"q")] [(CSymbol ("Prelude","success"),CLambda [CPVar (5,"sentence")] (CApply (CVar (4,"q")) (CVar (5,"sentence"))))] []]),+  CFunc ("Parser","<||>") 2 Public (CFuncType (CTCons ("Parser","ParserRep") [CTVar (0,"r"),CTVar (1,"t")]) (CFuncType (CTCons ("Parser","ParserRep") [CTVar (0,"r"),CTVar (1,"t")]) (CTCons ("Parser","ParserRep") [CTVar (0,"r"),CTVar (1,"t")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"q")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"rep")] (CApply (CApply (CSymbol ("Parser","<|>")) (CApply (CVar (0,"p")) (CVar (2,"rep")))) (CApply (CVar (1,"q")) (CVar (2,"rep")))))] []]),+  CFunc ("Parser",">>>") 4 Public (CFuncType (CTCons ("Parser","Parser") [CTVar (0,"token")]) (CFuncType (CTVar (1,"rep")) (CTCons ("Parser","ParserRep") [CTVar (1,"rep"),CTVar (0,"token")]))) (CRules CFlex [CRule [CPVar (0,"parser"),CPVar (1,"repexp"),CPVar (2,"rep"),CPVar (3,"sentence")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Parser","attach"))) (CApply (CVar (0,"parser")) (CVar (3,"sentence"))))] [CLocalFunc (CFunc ("Parser","attach") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (4,"rest")] [(CApply (CApply (CSymbol ("Prelude","=:=")) (CVar (1,"repexp"))) (CVar (2,"rep")),CVar (4,"rest"))] []]))]]),+  CFunc ("Parser","empty") 1 Public (CTCons ("Parser","Parser") [CTVar (0,"_")]) (CRules CFlex [CRule [CPVar (0,"sentence")] [(CSymbol ("Prelude","success"),CVar (0,"sentence"))] []]),+  CFunc ("Parser","satisfy") 3 Public (CFuncType (CFuncType (CTVar (0,"token")) (CTCons ("Prelude","Bool") [])) (CTCons ("Parser","ParserRep") [CTVar (0,"token"),CTVar (0,"token")])) (CRules CFlex [CRule [CPVar (0,"pred"),CPVar (1,"sym"),CPComb ("Prelude",":") [CPVar (2,"token"),CPVar (3,"tokens")]] [(CApply (CApply (CSymbol ("Prelude","&")) (CApply (CApply (CSymbol ("Prelude","=:=")) (CApply (CVar (0,"pred")) (CVar (2,"token")))) (CSymbol ("Prelude","True")))) (CApply (CApply (CSymbol ("Prelude","=:=")) (CVar (1,"sym"))) (CVar (2,"token"))),CVar (3,"tokens"))] []]),+  CFunc ("Parser","some") 1 Public (CFuncType (CTCons ("Parser","ParserRep") [CTVar (0,"rep"),CTVar (1,"token")]) (CTCons ("Parser","ParserRep") [CTCons ("Prelude","[]") [CTVar (0,"rep")],CTVar (1,"token")])) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Parser",">>>")) (CApply (CApply (CSymbol ("Parser","<*>")) (CApply (CVar (0,"p")) (CVar (1,"x")))) (CApply (CApply (CSymbol ("Parser","star")) (CVar (0,"p"))) (CVar (2,"xs"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (2,"xs"))))] [CLocalVar (1,"x"),CLocalVar (2,"xs")]]),+  CFunc ("Parser","star") 1 Public (CFuncType (CTCons ("Parser","ParserRep") [CTVar (0,"rep"),CTVar (1,"token")]) (CTCons ("Parser","ParserRep") [CTCons ("Prelude","[]") [CTVar (0,"rep")],CTVar (1,"token")])) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Parser","<||>")) (CApply (CApply (CSymbol ("Parser",">>>")) (CApply (CApply (CSymbol ("Parser","<*>")) (CApply (CVar (0,"p")) (CVar (1,"x")))) (CApply (CApply (CSymbol ("Parser","star")) (CVar (0,"p"))) (CVar (2,"xs"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (2,"xs"))))) (CApply (CApply (CSymbol ("Parser",">>>")) (CSymbol ("Parser","empty"))) (CSymbol ("Prelude","[]"))))] [CLocalVar (1,"x"),CLocalVar (2,"xs")]]),+  CFunc ("Parser","terminal") 2 Public (CFuncType (CTVar (0,"token")) (CTCons ("Parser","Parser") [CTVar (0,"token")])) (CRules CFlex [CRule [CPVar (0,"sym"),CPComb ("Prelude",":") [CPVar (1,"token"),CPVar (2,"tokens")]] [(CApply (CApply (CSymbol ("Prelude","=:=")) (CVar (0,"sym"))) (CVar (1,"token")),CVar (2,"tokens"))] []])]+ [COp ("Parser","<*>") CInfixrOp 4,COp ("Parser",">>>") CInfixrOp 3,COp ("Parser","<||>") CInfixrOp 2,COp ("Parser","<|>") CInfixrOp 2]
+ src/lib/Curry/Module/.curry/Prelude.acy view
@@ -0,0 +1,168 @@+CurryProg "Prelude"+ []+ [CType ("Prelude","Float") Public [] [],+  CType ("Prelude","Char") Public [] [],+  CTypeSyn ("Prelude","String") Public [] (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]),+  CType ("Prelude","Bool") Public [] [CCons ("Prelude","False") 0 Public [],CCons ("Prelude","True") 0 Public []],+  CType ("Prelude","Ordering") Public [] [CCons ("Prelude","LT") 0 Public [],CCons ("Prelude","EQ") 0 Public [],CCons ("Prelude","GT") 0 Public []],+  CType ("Prelude","Nat") Public [] [CCons ("Prelude","IHi") 0 Public [],CCons ("Prelude","O") 1 Public [CTCons ("Prelude","Nat") []],CCons ("Prelude","I") 1 Public [CTCons ("Prelude","Nat") []]],+  CType ("Prelude","Int") Public [] [CCons ("Prelude","Neg") 1 Public [CTCons ("Prelude","Nat") []],CCons ("Prelude","Zero") 0 Public [],CCons ("Prelude","Pos") 1 Public [CTCons ("Prelude","Nat") []]],+  CType ("Prelude","Success") Public [] [CCons ("Prelude","Success") 0 Public []],+  CType ("Prelude","Maybe") Public [(0,"a")] [CCons ("Prelude","Nothing") 0 Public [],CCons ("Prelude","Just") 1 Public [CTVar (0,"a")]],+  CType ("Prelude","Either") Public [(0,"a"),(1,"b")] [CCons ("Prelude","Left") 1 Public [CTVar (0,"a")],CCons ("Prelude","Right") 1 Public [CTVar (1,"b")]],+  CType ("Prelude","IO") Public [(0,"_")] [],+  CType ("Prelude","SearchTree") Public [(0,"a")] [CCons ("Prelude","Fail") 0 Public [],CCons ("Prelude","Value") 1 Public [CTVar (0,"a")],CCons ("Prelude","Choice") 1 Public [CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]],CCons ("Prelude","Suspend") 0 Public []]]+ [CFunc ("Prelude","!!") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a")))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")],CPVar (2,"n")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"n"))) (CLit (CIntc 0)),CVar (0,"x")),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (2,"n"))) (CLit (CIntc 0)),CApply (CApply (CSymbol ("Prelude","!!")) (CVar (1,"xs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (2,"n"))) (CLit (CIntc 1))))] []]),+  CFunc ("Prelude","$") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CVar (0,"f")) (CVar (1,"x")))] []]),+  CFunc ("Prelude","$!") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$!"),+  CFunc ("Prelude","$!!") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$!!"),+  CFunc ("Prelude","$#") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$#"),+  CFunc ("Prelude","$##") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$##"),+  CFunc ("Prelude","&") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTCons ("Prelude","Success") []) (CTCons ("Prelude","Success") []))) (CExternal "&"),+  CFunc ("Prelude","&&") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"x")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","&>") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"x")] [(CVar (0,"c"),CVar (1,"x"))] []]),+  CFunc ("Prelude","*") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","Pos") [CPVar (0,"x")],CPComb ("Prelude","Pos") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (0,"x"))) (CVar (1,"y"))))] [],CRule [CPComb ("Prelude","Pos") [CPVar (2,"x")],CPComb ("Prelude","Neg") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (4,"x")],CPComb ("Prelude","Neg") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (4,"x"))) (CVar (5,"y"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (6,"x")],CPComb ("Prelude","Pos") [CPVar (7,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (6,"x"))) (CVar (7,"y"))))] [],CRule [CPComb ("Prelude","Zero") [],CPVar (8,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (9,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (10,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] []]),+  CFunc ("Prelude","*^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPVar (0,"y")] [(CSymbol ("Prelude","success"),CVar (0,"y"))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"x")],CPVar (2,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+^")) (CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (2,"y"))) (CVar (1,"x"))))) (CVar (2,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (3,"x")],CPVar (4,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (3,"x"))) (CVar (4,"y"))))] []]),+  CFunc ("Prelude","+") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","Pos") [CPVar (0,"x")],CPComb ("Prelude","Pos") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (0,"x"))) (CVar (1,"y"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (2,"x")],CPComb ("Prelude","Neg") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","Pos") [CPVar (4,"x")],CPComb ("Prelude","Neg") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","-^")) (CVar (4,"x"))) (CVar (5,"y")))] [],CRule [CPComb ("Prelude","Neg") [CPVar (6,"x")],CPComb ("Prelude","Pos") [CPVar (7,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","-^")) (CVar (7,"y"))) (CVar (6,"x")))] [],CRule [CPComb ("Prelude","Zero") [],CPVar (8,"x")] [(CSymbol ("Prelude","success"),CVar (8,"x"))] [],CRule [CPAs (10,"x") (CPComb ("Prelude","Pos") [CPVar (9,"_")]),CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CVar (10,"x"))] [],CRule [CPAs (12,"x") (CPComb ("Prelude","Neg") [CPVar (11,"_")]),CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CVar (12,"x"))] []]),+  CFunc ("Prelude","++") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []]),+  CFunc ("Prelude","+^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") []))) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (0,"x")],CPComb ("Prelude","O") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (0,"x"))) (CVar (1,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (2,"x")],CPComb ("Prelude","I") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (4,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CVar (4,"x")))] [],CRule [CPComb ("Prelude","I") [CPVar (5,"x")],CPComb ("Prelude","O") [CPVar (6,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (5,"x"))) (CVar (6,"y"))))] [],CRule [CPComb ("Prelude","I") [CPVar (7,"x")],CPComb ("Prelude","I") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","+^")) (CApply (CSymbol ("Prelude","succ")) (CVar (7,"x")))) (CVar (8,"y"))))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CSymbol ("Prelude","succ")) (CVar (9,"x"))))] [],CRule [CPComb ("Prelude","IHi") [],CPVar (10,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","succ")) (CVar (10,"y")))] []]),+  CFunc ("Prelude","-") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPComb ("Prelude","Neg") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","Pos")) (CVar (1,"y"))))] [],CRule [CPVar (2,"x"),CPComb ("Prelude","Pos") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"x"))) (CApply (CSymbol ("Prelude","Neg")) (CVar (3,"y"))))] [],CRule [CPVar (4,"x"),CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CVar (4,"x"))] []]),+  CFunc ("Prelude","-^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPVar (0,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","inc")) (CApply (CSymbol ("Prelude","Neg")) (CVar (0,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (1,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","pred")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"x")))))] [],CRule [CPComb ("Prelude","O") [CPVar (2,"x")],CPComb ("Prelude","O") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (4,"x")],CPComb ("Prelude","I") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","dec")) (CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (4,"x"))) (CVar (5,"y")))))] [],CRule [CPComb ("Prelude","I") [CPVar (6,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (6,"x"))))] [],CRule [CPComb ("Prelude","I") [CPVar (7,"x")],CPComb ("Prelude","O") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","inc")) (CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (7,"x"))) (CVar (8,"y")))))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","I") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (9,"x"))) (CVar (10,"y"))))] []]),+  CFunc ("Prelude",".") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CFuncType (CTVar (2,"c")) (CTVar (0,"a"))) (CFuncType (CTVar (2,"c")) (CTVar (1,"b"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"x")] (CApply (CVar (0,"f")) (CApply (CVar (1,"g")) (CVar (2,"x")))))] []]),+  CFunc ("Prelude","/=") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","not")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","<") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","LT")))] []]),+  CFunc ("Prelude","<=") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","GT")))] []]),+  CFunc ("Prelude","<=^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","isGT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y")))))] []]),+  CFunc ("Prelude","<^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","isLT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","=:<=") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") []))) (CExternal "=:<="),+  CFunc ("Prelude","=:=") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CApply (CApply (CSymbol ("Prelude","===")) (CVar (0,"x"))) (CVar (1,"y")),CSymbol ("Prelude","success"))] []]),+  CFunc ("Prelude","==") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CExternal "=="),+  CFunc ("Prelude","===") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CExternal "==="),+  CFunc ("Prelude",">") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","GT")))] []]),+  CFunc ("Prelude",">=") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","LT")))] []]),+  CFunc ("Prelude",">=^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","isLT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y")))))] []]),+  CFunc ("Prelude",">>") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","IO") [CTVar (1,"b")]) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"a"),CPVar (1,"b")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CVar (0,"a"))) (CApply (CSymbol ("Prelude","const")) (CVar (1,"b"))))] []]),+  CFunc ("Prelude",">>=") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CExternal ">>="),+  CFunc ("Prelude",">^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","isGT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","?") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPVar (2,"_"),CPVar (3,"y")] [(CSymbol ("Prelude","success"),CVar (3,"y"))] []]),+  CFunc ("Prelude","PEVAL") 1 Public (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","all") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","and"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"p"))))] []]),+  CFunc ("Prelude","allValuesB") 1 Public (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"st")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","unfoldOrs")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"st"))) (CSymbol ("Prelude","[]"))))] [CLocalFunc (CFunc ("Prelude","partition") 2 Private (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]]))) (CRules CFlex [CRule [CPComb ("Prelude","Value") [CPVar (1,"x")],CPVar (2,"y")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"vs"),CPVar (4,"ors")]) (CVar (2,"y")) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (3,"vs")))) (CVar (4,"ors"))))] [],CRule [CPComb ("Prelude","Choice") [CPVar (5,"xs")],CPVar (6,"y")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (7,"vs"),CPVar (8,"ors")]) (CVar (6,"y")) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (7,"vs"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (5,"xs"))) (CVar (8,"ors")))))] [],CRule [CPComb ("Prelude","Fail") [],CPVar (9,"y")] [(CSymbol ("Prelude","success"),CVar (9,"y"))] [],CRule [CPComb ("Prelude","Suspend") [],CPVar (10,"y")] [(CSymbol ("Prelude","success"),CVar (10,"y"))] []])),CLocalFunc (CFunc ("Prelude","unfoldOrs") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"vals"),CPVar (4,"ors")]) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","partition"))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (2,"xs")))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (3,"vals"))) (CApply (CSymbol ("Prelude","unfoldOrs")) (CVar (4,"ors")))))] []]))]]),+  CFunc ("Prelude","allValuesD") 1 Public (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","Value") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude","Fail") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Suspend") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Choice") [CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("Prelude","allValuesD"))) (CVar (1,"xs")))] []]),+  CFunc ("Prelude","and") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","&&"))) (CSymbol ("Prelude","True")))] []]),+  CFunc ("Prelude","any") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","or"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"p"))))] []]),+  CFunc ("Prelude","appendFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"fn"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_appendFile"))) (CVar (0,"fn")))) (CVar (1,"s")))] []]),+  CFunc ("Prelude","apply") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "apply"),+  CFunc ("Prelude","break") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","span")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CVar (0,"p"))))] []]),+  CFunc ("Prelude","catchFail") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")]))) (CExternal "catchFail"),+  CFunc ("Prelude","chr") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"i")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_chr"))) (CVar (0,"i")))] []]),+  CFunc ("Prelude","cmpNat") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","EQ"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","O") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","I") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","O") [CPVar (2,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","I") [CPVar (3,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","O") [CPVar (4,"x")],CPComb ("Prelude","O") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (4,"x"))) (CVar (5,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (6,"x")],CPComb ("Prelude","I") [CPVar (7,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (6,"x"))) (CVar (7,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (8,"x")],CPComb ("Prelude","I") [CPVar (9,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (8,"x"))) (CVar (9,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (10,"x")],CPComb ("Prelude","O") [CPVar (11,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (10,"x"))) (CVar (11,"y")))] []]),+  CFunc ("Prelude","cmpNatGT") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","O") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","I") [CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","O") [CPVar (3,"x")],CPComb ("Prelude","O") [CPVar (4,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (3,"x"))) (CVar (4,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (5,"x")],CPComb ("Prelude","I") [CPVar (6,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (5,"x"))) (CVar (6,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (7,"x")],CPComb ("Prelude","I") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (7,"x"))) (CVar (8,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","O") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (9,"x"))) (CVar (10,"y")))] []]),+  CFunc ("Prelude","cmpNatLT") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","O") [CPVar (1,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","I") [CPVar (2,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","O") [CPVar (3,"x")],CPComb ("Prelude","O") [CPVar (4,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (3,"x"))) (CVar (4,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (5,"x")],CPComb ("Prelude","I") [CPVar (6,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (5,"x"))) (CVar (6,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (7,"x")],CPComb ("Prelude","I") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (7,"x"))) (CVar (8,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","O") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (9,"x"))) (CVar (10,"y")))] []]),+  CFunc ("Prelude","compare") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Prelude","Zero") [],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","EQ"))] [],CRule [CPComb ("Prelude","Zero") [],CPComb ("Prelude","Pos") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","Zero") [],CPComb ("Prelude","Neg") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (2,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (3,"x")],CPComb ("Prelude","Pos") [CPVar (4,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (3,"x"))) (CVar (4,"y")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (5,"_")],CPComb ("Prelude","Neg") [CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (7,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (8,"_")],CPComb ("Prelude","Pos") [CPVar (9,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (10,"x")],CPComb ("Prelude","Neg") [CPVar (11,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (11,"y"))) (CVar (10,"x")))] []]),+  CFunc ("Prelude","concat") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","++"))) (CSymbol ("Prelude","[]"))) (CVar (0,"l")))] []]),+  CFunc ("Prelude","concatMap") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","concat"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Prelude","cond") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CExternal "cond"),+  CFunc ("Prelude","const") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","curry") 3 Public (CFuncType (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (2,"c"))) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"a"),CPVar (2,"b")] [(CSymbol ("Prelude","success"),CApply (CVar (0,"f")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"a"))) (CVar (2,"b"))))] []]),+  CFunc ("Prelude","dec") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CSymbol ("Prelude","IHi")))] [],CRule [CPComb ("Prelude","Neg") [CPVar (0,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","succ")) (CVar (0,"n"))))] [],CRule [CPComb ("Prelude","Pos") [CPComb ("Prelude","IHi") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Pos") [CPComb ("Prelude","O") [CPVar (1,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","pred")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"n")))))] [],CRule [CPComb ("Prelude","Pos") [CPComb ("Prelude","I") [CPVar (2,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (2,"n"))))] []]),+  CFunc ("Prelude","div") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","fst")) (CApply (CApply (CSymbol ("Prelude","divmod")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","div2") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") [])) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"x")]] [(CSymbol ("Prelude","success"),CVar (1,"x"))] []]),+  CFunc ("Prelude","divmod") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPComb ("Prelude","Zero") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","Zero"))) (CSymbol ("Prelude","Zero")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (1,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CSymbol ("Prelude","[]"))))))))))))))))] [],CRule [CPComb ("Prelude","Pos") [CPVar (2,"x")],CPComb ("Prelude","Pos") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (2,"x"))) (CVar (3,"y")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (4,"x")],CPComb ("Prelude","Neg") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (6,"d"),CPVar (7,"m")]) (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (4,"x"))) (CVar (5,"y"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","negate")) (CVar (6,"d")))) (CVar (7,"m"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (8,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CSymbol ("Prelude","[]"))))))))))))))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (9,"x")],CPComb ("Prelude","Pos") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (11,"d"),CPVar (12,"m")]) (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (9,"x"))) (CVar (10,"y"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","negate")) (CVar (11,"d")))) (CApply (CSymbol ("Prelude","negate")) (CVar (12,"m")))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (13,"x")],CPComb ("Prelude","Neg") [CPVar (14,"y")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (15,"d"),CPVar (16,"m")]) (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (13,"x"))) (CVar (14,"y"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (15,"d"))) (CApply (CSymbol ("Prelude","negate")) (CVar (16,"m")))))] []]),+  CFunc ("Prelude","divmodNat") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"y"))) (CSymbol ("Prelude","IHi")),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CVar (0,"x")))) (CSymbol ("Prelude","Zero"))),(CSymbol ("Prelude","otherwise"),CCase (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","EQ") []) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))) (CSymbol ("Prelude","Zero"))),CBranch (CPComb ("Prelude","LT") []) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","Zero"))) (CApply (CSymbol ("Prelude","Pos")) (CVar (0,"x")))),CBranch (CPComb ("Prelude","GT") []) (CCase (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CApply (CSymbol ("Prelude","div2")) (CVar (0,"x")))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Zero") [],CPVar (2,"_")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (0,"x"))) (CVar (1,"y")))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Pos") [CPVar (3,"d")],CPComb ("Prelude","Zero") []]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (3,"d"))))) (CApply (CSymbol ("Prelude","mod2")) (CVar (0,"x")))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Pos") [CPVar (4,"d")],CPComb ("Prelude","Pos") [CPVar (5,"m")]]) (CCase (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CApply (CApply (CSymbol ("Prelude","shift")) (CVar (0,"x"))) (CVar (5,"m")))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Zero") [],CPVar (6,"m'")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (4,"d"))))) (CVar (6,"m'"))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Pos") [CPVar (7,"d'")],CPVar (8,"m'")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","+^")) (CApply (CSymbol ("Prelude","O")) (CVar (4,"d")))) (CVar (7,"d'"))))) (CVar (8,"m'")))])])])] [CLocalFunc (CFunc ("Prelude","shift") 2 Private (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") []))) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (2,"_")],CPVar (3,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CVar (3,"n")))] [],CRule [CPComb ("Prelude","I") [CPVar (4,"_")],CPVar (5,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CVar (5,"n")))] []]))]]),+  CFunc ("Prelude","doSolve") 1 Public (CFuncType (CTCons ("Prelude","Success") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"constraint")] [(CVar (0,"constraint"),CSymbol ("Prelude","done"))] []]),+  CFunc ("Prelude","done") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","()")))] []]),+  CFunc ("Prelude","drop") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CVar (1,"l"))) (CApply (CApply (CSymbol ("Prelude","dropp")) (CVar (0,"n"))) (CVar (1,"l"))))] [CLocalFunc (CFunc ("Prelude","dropp") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (3,"m"),CPComb ("Prelude",":") [CPVar (4,"_"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","drop")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"m"))) (CLit (CIntc 1)))) (CVar (5,"xs")))] []]))]]),+  CFunc ("Prelude","dropWhile") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CVar (1,"p"))) (CVar (3,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","either") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CFuncType (CTVar (2,"c")) (CTVar (1,"b"))) (CFuncType (CTCons ("Prelude","Either") [CTVar (0,"a"),CTVar (2,"c")]) (CTVar (1,"b"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"_"),CPComb ("Prelude","Left") [CPVar (2,"x")]] [(CSymbol ("Prelude","success"),CApply (CVar (0,"f")) (CVar (2,"x")))] [],CRule [CPVar (3,"_"),CPVar (4,"g"),CPComb ("Prelude","Right") [CPVar (5,"x")]] [(CSymbol ("Prelude","success"),CApply (CVar (4,"g")) (CVar (5,"x")))] []]),+  CFunc ("Prelude","elem") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","any")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("Prelude","ensureSpine") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Prelude","ensureList"))) (CVar (0,"x0"))))] [CLocalFunc (CFunc ("Prelude","ensureList") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","ensureSpine")) (CVar (1,"xs"))))] []]))]]),+  CFunc ("Prelude","enumFrom") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"n"))) (CApply (CSymbol ("Prelude","enumFrom")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"n"))) (CLit (CIntc 1)))))] []]),+  CFunc ("Prelude","enumFromThen") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"n1"),CPVar (1,"n2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","iterate")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"n2"))) (CVar (0,"n1")))) (CVar (2,"x0"))))) (CVar (0,"n1")))] []]),+  CFunc ("Prelude","enumFromThenTo") 3 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])))) (CRules CFlex [CRule [CPVar (0,"n1"),CPVar (1,"n2"),CPVar (2,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","takeWhile")) (CSymbol ("Prelude","p"))) (CApply (CApply (CSymbol ("Prelude","enumFromThen")) (CVar (0,"n1"))) (CVar (1,"n2"))))] [CLocalFunc (CFunc ("Prelude","p") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (3,"x")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (1,"n2"))) (CVar (0,"n1")),CApply (CApply (CSymbol ("Prelude","<=")) (CVar (3,"x"))) (CVar (2,"m"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",">=")) (CVar (3,"x"))) (CVar (2,"m")))] []]))]]),+  CFunc ("Prelude","enumFromTo") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (0,"n"))) (CVar (1,"m")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"n"))) (CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"n"))) (CLit (CIntc 1)))) (CVar (1,"m")))))] []]),+  CFunc ("Prelude","error") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_error"))) (CVar (0,"s")))] []]),+  CFunc ("Prelude","failed") 0 Public (CTVar (0,"a")) (CExternal "failed"),+  CFunc ("Prelude","filter") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CVar (1,"p"))) (CVar (3,"xs"))))) (CApply (CApply (CSymbol ("Prelude","filter")) (CVar (1,"p"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","flip") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (0,"a")) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"x"),CPVar (2,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (0,"f")) (CVar (2,"y"))) (CVar (1,"x")))] []]),+  CFunc ("Prelude","foldl") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (0,"a")))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"z"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CVar (1,"z"))] [],CRule [CPVar (2,"f"),CPVar (3,"z"),CPComb ("Prelude",":") [CPVar (4,"x"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CVar (2,"f"))) (CApply (CApply (CVar (2,"f")) (CVar (3,"z"))) (CVar (4,"x")))) (CVar (5,"xs")))] []]),+  CFunc ("Prelude","foldl1") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CVar (0,"f"))) (CVar (1,"x"))) (CVar (2,"xs")))] []]),+  CFunc ("Prelude","foldr") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (1,"b"))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"z"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CVar (1,"z"))] [],CRule [CPVar (2,"f"),CPVar (3,"z"),CPComb ("Prelude",":") [CPVar (4,"x"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (2,"f")) (CVar (4,"x"))) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CVar (2,"f"))) (CVar (3,"z"))) (CVar (5,"xs"))))] []]),+  CFunc ("Prelude","foldr1") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude",":") [CPVar (1,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (1,"x"))] [],CRule [CPVar (2,"f"),CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (2,"f")) (CVar (3,"x1"))) (CApply (CApply (CSymbol ("Prelude","foldr1")) (CVar (2,"f"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x2"))) (CVar (5,"xs")))))] []]),+  CFunc ("Prelude","fst") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"x"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","getChar") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Char") []]) (CExternal "getChar"),+  CFunc ("Prelude","getLine") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (0,"c")) (CSymbol ("Prelude","getChar")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\n')))) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]")))) (CDoExpr [CSPat (CPVar (1,"cs")) (CSymbol ("Prelude","getLine")),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CVar (1,"cs"))))]))])] []]),+  CFunc ("Prelude","getSearchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]])) (CExternal "getSearchTree"),+  CFunc ("Prelude","head") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","id") 1 Public (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","if_then_else") 3 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"b"),CPVar (1,"t"),CPVar (2,"f")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"b")) [CBranch (CPComb ("Prelude","True") []) (CVar (1,"t")),CBranch (CPComb ("Prelude","False") []) (CVar (2,"f"))])] []]),+  CFunc ("Prelude","inc") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (0,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","succ")) (CVar (0,"n"))))] [],CRule [CPComb ("Prelude","Neg") [CPComb ("Prelude","IHi") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Neg") [CPComb ("Prelude","O") [CPVar (1,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","pred")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"n")))))] [],CRule [CPComb ("Prelude","Neg") [CPComb ("Prelude","I") [CPVar (2,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","O")) (CVar (2,"n"))))] []]),+  CFunc ("Prelude","inject") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"p")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"x")] (CApply (CApply (CSymbol ("Prelude","&")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CVar (0,"g")) (CVar (2,"x")))))] []]),+  CFunc ("Prelude","isEQ") 1 Public (CFuncType (CTCons ("Prelude","Ordering") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","LT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","GT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","EQ") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] []]),+  CFunc ("Prelude","isGT") 1 Public (CFuncType (CTCons ("Prelude","Ordering") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","LT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","GT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","EQ") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","isLT") 1 Public (CFuncType (CTCons ("Prelude","Ordering") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","LT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","GT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","EQ") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","iterate") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Prelude","iterate")) (CVar (0,"f"))) (CApply (CVar (0,"f")) (CVar (1,"x")))))] []]),+  CFunc ("Prelude","length") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"_"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CLit (CIntc 1))) (CApply (CSymbol ("Prelude","length")) (CVar (1,"xs"))))] []]),+  CFunc ("Prelude","lines") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"xs_l")]) (CApply (CSymbol ("Prelude","splitline")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (1,"xs")))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"l"))) (CApply (CSymbol ("Prelude","lines")) (CVar (3,"xs_l")))))] [CLocalFunc (CFunc ("Prelude","splitline") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CLit (CCharc '\n')))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CVar (3,"cs")))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ds"),CPVar (5,"es")]) (CApply (CSymbol ("Prelude","splitline")) (CVar (3,"cs"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"c"))) (CVar (4,"ds")))) (CVar (5,"es")))))] []]))]]),+  CFunc ("Prelude","lookup") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","Maybe") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPVar (1,"k"),CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"x"),CPVar (3,"y")],CPVar (4,"xys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"k"))) (CVar (2,"x")),CApply (CSymbol ("Prelude","Just")) (CVar (3,"y"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (1,"k"))) (CVar (4,"xys")))] []]),+  CFunc ("Prelude","map") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"f"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CVar (1,"f")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude","map")) (CVar (1,"f"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","mapIO") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","sequenceIO"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Prelude","mapIO_") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","sequenceIO_"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Prelude","max") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","LT") []) (CVar (1,"y")),CBranch (CPVar (2,"_")) (CVar (0,"x"))])] []]),+  CFunc ("Prelude","maybe") 3 Public (CFuncType (CTVar (0,"a")) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (0,"a"))) (CFuncType (CTCons ("Prelude","Maybe") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"_"),CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CVar (0,"n"))] [],CRule [CPVar (2,"_"),CPVar (3,"f"),CPComb ("Prelude","Just") [CPVar (4,"x")]] [(CSymbol ("Prelude","success"),CApply (CVar (3,"f")) (CVar (4,"x")))] []]),+  CFunc ("Prelude","min") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","GT") []) (CVar (1,"y")),CBranch (CPVar (2,"_")) (CVar (0,"x"))])] []]),+  CFunc ("Prelude","mod") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","snd")) (CApply (CApply (CSymbol ("Prelude","divmod")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","mod2") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))] [],CRule [CPComb ("Prelude","O") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))] []]),+  CFunc ("Prelude","mult2") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Pos") [CPVar (0,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (0,"n"))))] [],CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (1,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"n"))))] []]),+  CFunc ("Prelude","negate") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CVar (0,"x")))] [],CRule [CPComb ("Prelude","Neg") [CPVar (1,"x")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CVar (1,"x")))] []]),+  CFunc ("Prelude","not") 1 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","True") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","False") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] []]),+  CFunc ("Prelude","notElem") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","all")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("Prelude","null") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"_"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","or") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","||"))) (CSymbol ("Prelude","False")))] []]),+  CFunc ("Prelude","ord") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_ord"))) (CVar (0,"c")))] []]),+  CFunc ("Prelude","otherwise") 0 Public (CTCons ("Prelude","Bool") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] []]),+  CFunc ("Prelude","pred") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") [])) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPComb ("Prelude","IHi") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","IHi"))] [],CRule [CPComb ("Prelude","O") [CPAs (1,"x") (CPComb ("Prelude","O") [CPVar (0,"_")])]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CSymbol ("Prelude","pred")) (CVar (1,"x"))))] [],CRule [CPComb ("Prelude","O") [CPComb ("Prelude","I") [CPVar (2,"x")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CSymbol ("Prelude","O")) (CVar (2,"x"))))] [],CRule [CPComb ("Prelude","I") [CPVar (3,"x")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CVar (3,"x")))] []]),+  CFunc ("Prelude","prim_appendFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_appendFile"),+  CFunc ("Prelude","prim_chr") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Char") [])) (CExternal "prim_chr"),+  CFunc ("Prelude","prim_error") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a"))) (CExternal "prim_error"),+  CFunc ("Prelude","prim_ord") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CExternal "prim_ord"),+  CFunc ("Prelude","prim_putChar") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_putChar"),+  CFunc ("Prelude","prim_readFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CExternal "prim_readFile"),+  CFunc ("Prelude","prim_show") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "prim_show"),+  CFunc ("Prelude","prim_writeFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_writeFile"),+  CFunc ("Prelude","print") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"t")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","putStrLn")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"t"))))] []]),+  CFunc ("Prelude","putChar") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_putChar"))) (CVar (0,"c")))] []]),+  CFunc ("Prelude","putStr") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","done"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putChar")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","putStr")) (CVar (1,"cs"))))] []]),+  CFunc ("Prelude","putStrLn") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"cs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putStr")) (CVar (0,"cs")))) (CApply (CSymbol ("Prelude","putChar")) (CLit (CCharc '\n'))))] []]),+  CFunc ("Prelude","readFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_readFile"))) (CVar (0,"s")))] []]),+  CFunc ("Prelude","repeat") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","repeat")) (CVar (0,"x"))))] []]),+  CFunc ("Prelude","replicate") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","take")) (CVar (0,"n"))) (CApply (CSymbol ("Prelude","repeat")) (CVar (1,"x"))))] []]),+  CFunc ("Prelude","return") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "return"),+  CFunc ("Prelude","reverse") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldl")) (CApply (CSymbol ("Prelude","flip")) (CSymbol ("Prelude",":")))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Prelude","seq") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!")) (CApply (CSymbol ("Prelude","const")) (CVar (1,"y")))) (CVar (0,"x")))] []]),+  CFunc ("Prelude","sequenceIO") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","IO") [CTVar (0,"a")]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"cs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"x")) (CVar (0,"c")),CSPat (CPVar (3,"xs")) (CApply (CSymbol ("Prelude","sequenceIO")) (CVar (1,"cs"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))])] []]),+  CFunc ("Prelude","sequenceIO_") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","IO") [CTVar (0,"a")]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude",">>"))) (CSymbol ("Prelude","done")))] []]),+  CFunc ("Prelude","show") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_show"))) (CVar (0,"s")))] []]),+  CFunc ("Prelude","snd") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (1,"b"))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"_"),CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CVar (1,"y"))] []]),+  CFunc ("Prelude","span") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CApply (CVar (1,"p")) (CVar (2,"x")),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ys"),CPVar (5,"zs")]) (CApply (CApply (CSymbol ("Prelude","span")) (CVar (1,"p"))) (CVar (3,"xs"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (4,"ys")))) (CVar (5,"zs")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","splitAt") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CVar (1,"l")))) (CApply (CApply (CSymbol ("Prelude","splitAtp")) (CVar (0,"n"))) (CVar (1,"l"))))] [CLocalFunc (CFunc ("Prelude","splitAtp") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (3,"m"),CPComb ("Prelude",":") [CPVar (4,"x"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (6,"ys"),CPVar (7,"zs")]) (CApply (CApply (CSymbol ("Prelude","splitAt")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"m"))) (CLit (CIntc 1)))) (CVar (5,"xs"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x"))) (CVar (6,"ys")))) (CVar (7,"zs"))))] []]))]]),+  CFunc ("Prelude","succ") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") [])) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (0,"bs")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CVar (0,"bs")))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"bs")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CSymbol ("Prelude","succ")) (CVar (1,"bs"))))] [],CRule [CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CSymbol ("Prelude","IHi")))] []]),+  CFunc ("Prelude","success") 0 Public (CTCons ("Prelude","Success") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Success"))] []]),+  CFunc ("Prelude","tail") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"_"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CVar (1,"xs"))] []]),+  CFunc ("Prelude","take") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","Neg") [CPVar (0,"_")],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Zero") [],CPVar (2,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (3,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (4,"n")],CPComb ("Prelude",":") [CPVar (5,"x"),CPVar (6,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x"))) (CApply (CApply (CSymbol ("Prelude","take")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","Pos")) (CVar (4,"n")))) (CLit (CIntc 1)))) (CVar (6,"xs"))))] []]),+  CFunc ("Prelude","takeWhile") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","takeWhile")) (CVar (1,"p"))) (CVar (3,"xs"))))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Prelude","uncurry") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (2,"c")))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Prelude","(,)") [CPVar (1,"a"),CPVar (2,"b")]] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (0,"f")) (CVar (1,"a"))) (CVar (2,"b")))] []]),+  CFunc ("Prelude","unknown") 0 Public (CTVar (0,"a")) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLetDecl [CLocalVar (0,"x")] (CVar (0,"x")))] []]),+  CFunc ("Prelude","unlines") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"ls")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"x0"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CVar (0,"ls")))] []]),+  CFunc ("Prelude","until") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"f"),CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (0,"p")) (CVar (2,"x")))) (CVar (2,"x"))) (CApply (CApply (CApply (CSymbol ("Prelude","until")) (CVar (0,"p"))) (CVar (1,"f"))) (CApply (CVar (1,"f")) (CVar (2,"x")))))] []]),+  CFunc ("Prelude","unwords") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"ws")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"ws"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude","foldr1")) (CLambda [CPVar (1,"w"),CPVar (2,"s")] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"w"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CVar (2,"s")))))) (CVar (0,"ws"))))] []]),+  CFunc ("Prelude","unzip") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (0,"x"),CPVar (1,"y")],CPVar (2,"ps")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (3,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"y"))) (CVar (4,"ys"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"xs"),CPVar (4,"ys")]) (CApply (CSymbol ("Prelude","unzip")) (CVar (2,"ps"))) []]]),+  CFunc ("Prelude","unzip3") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"a"),CTVar (1,"b"),CTVar (2,"c")]]) (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (1,"b")],CTCons ("Prelude","[]") [CTVar (2,"c")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","(,,)") [CPVar (0,"x"),CPVar (1,"y"),CPVar (2,"z")],CPVar (3,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (4,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"y"))) (CVar (5,"ys")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"z"))) (CVar (6,"zs"))))] [CLocalPat (CPComb ("Prelude","(,,)") [CPVar (4,"xs"),CPVar (5,"ys"),CPVar (6,"zs")]) (CApply (CSymbol ("Prelude","unzip3")) (CVar (3,"ts"))) []]]),+  CFunc ("Prelude","words") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (1,"s1")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CSymbol ("Prelude","isSpace"))) (CVar (0,"s"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"s1"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]"))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"w"),CPVar (3,"s2")]) (CApply (CApply (CSymbol ("Prelude","break")) (CSymbol ("Prelude","isSpace"))) (CVar (1,"s1"))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"w"))) (CApply (CSymbol ("Prelude","words")) (CVar (3,"s2")))))))] [CLocalFunc (CFunc ("Prelude","isSpace") 1 Private (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' ')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\t')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\n')))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\r'))))))] []]))]]),+  CFunc ("Prelude","writeFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"fn"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_writeFile"))) (CVar (0,"fn")))) (CVar (1,"s")))] []]),+  CFunc ("Prelude","zip") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude",":") [CPVar (5,"y"),CPVar (6,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"x"))) (CVar (5,"y")))) (CApply (CApply (CSymbol ("Prelude","zip")) (CVar (4,"xs"))) (CVar (6,"ys"))))] []]),+  CFunc ("Prelude","zip3") 3 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"c")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"a"),CTVar (1,"b"),CTVar (2,"c")]])))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")],CPComb ("Prelude","[]") [],CPVar (4,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"_")],CPComb ("Prelude",":") [CPVar (7,"_"),CPVar (8,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (9,"x"),CPVar (10,"xs")],CPComb ("Prelude",":") [CPVar (11,"y"),CPVar (12,"ys")],CPComb ("Prelude",":") [CPVar (13,"z"),CPVar (14,"zs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (9,"x"))) (CVar (11,"y"))) (CVar (13,"z")))) (CApply (CApply (CApply (CSymbol ("Prelude","zip3")) (CVar (10,"xs"))) (CVar (12,"ys"))) (CVar (14,"zs"))))] []]),+  CFunc ("Prelude","zipWith") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (2,"c")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"_"),CPVar (4,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (5,"f"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPComb ("Prelude",":") [CPVar (8,"y"),CPVar (9,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CVar (5,"f")) (CVar (6,"x"))) (CVar (8,"y")))) (CApply (CApply (CApply (CSymbol ("Prelude","zipWith")) (CVar (5,"f"))) (CVar (7,"xs"))) (CVar (9,"ys"))))] []]),+  CFunc ("Prelude","zipWith3") 4 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTVar (3,"d"))))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"c")]) (CTCons ("Prelude","[]") [CTVar (3,"d")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPVar (2,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (3,"_"),CPComb ("Prelude",":") [CPVar (4,"_"),CPVar (5,"_")],CPComb ("Prelude","[]") [],CPVar (6,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (7,"_"),CPComb ("Prelude",":") [CPVar (8,"_"),CPVar (9,"_")],CPComb ("Prelude",":") [CPVar (10,"_"),CPVar (11,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (12,"f"),CPComb ("Prelude",":") [CPVar (13,"x"),CPVar (14,"xs")],CPComb ("Prelude",":") [CPVar (15,"y"),CPVar (16,"ys")],CPComb ("Prelude",":") [CPVar (17,"z"),CPVar (18,"zs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CVar (12,"f")) (CVar (13,"x"))) (CVar (15,"y"))) (CVar (17,"z")))) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","zipWith3")) (CVar (12,"f"))) (CVar (14,"xs"))) (CVar (16,"ys"))) (CVar (18,"zs"))))] []]),+  CFunc ("Prelude","||") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"x")] [(CSymbol ("Prelude","success"),CVar (1,"x"))] []])]+ [COp ("Prelude","!!") CInfixlOp 9,COp ("Prelude",".") CInfixrOp 9,COp ("Prelude","mod") CInfixlOp 7,COp ("Prelude","div") CInfixlOp 7,COp ("Prelude","*^") CInfixlOp 7,COp ("Prelude","*") CInfixlOp 7,COp ("Prelude","-^") CInfixlOp 6,COp ("Prelude","-") CInfixlOp 6,COp ("Prelude","+^") CInfixlOp 6,COp ("Prelude","+") CInfixlOp 6,COp ("Prelude","++") CInfixrOp 5,COp ("Prelude",">=^") CInfixOp 4,COp ("Prelude",">^") CInfixOp 4,COp ("Prelude","<=^") CInfixOp 4,COp ("Prelude","<^") CInfixOp 4,COp ("Prelude","=:<=") CInfixOp 4,COp ("Prelude",">=") CInfixOp 4,COp ("Prelude","<=") CInfixOp 4,COp ("Prelude",">") CInfixOp 4,COp ("Prelude","<") CInfixOp 4,COp ("Prelude","/=") CInfixOp 4,COp ("Prelude","===") CInfixOp 4,COp ("Prelude","==") CInfixOp 4,COp ("Prelude","=:=") CInfixOp 4,COp ("Prelude","notElem") CInfixOp 4,COp ("Prelude","elem") CInfixOp 4,COp ("Prelude","&&") CInfixrOp 3,COp ("Prelude","||") CInfixrOp 2,COp ("Prelude",">>=") CInfixlOp 1,COp ("Prelude",">>") CInfixlOp 1,COp ("Prelude","?") CInfixrOp 0,COp ("Prelude","&>") CInfixrOp 0,COp ("Prelude","&") CInfixrOp 0,COp ("Prelude","seq") CInfixrOp 0,COp ("Prelude","$##") CInfixrOp 0,COp ("Prelude","$#") CInfixrOp 0,COp ("Prelude","$!!") CInfixrOp 0,COp ("Prelude","$!") CInfixrOp 0,COp ("Prelude","$") CInfixrOp 0]
+ src/lib/Curry/Module/.curry/Prelude.cy view
@@ -0,0 +1,323 @@+Module "Prelude"+Nothing+[(DataDecl (27,1) (Ident "Float" 0) [] [])+,(DataDecl (28,1) (Ident "Char" 0) [] [])+,(TypeDecl (29,1) (Ident "String" 0) [] (ListType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])))+,(DataDecl (114,1) (Ident "Bool" 0) [] [(ConstrDecl (114,13) [] (Ident "False" 0) []),(ConstrDecl (114,21) [] (Ident "True" 0) [])])+,(DataDecl (145,1) (Ident "Ordering" 0) [] [(ConstrDecl (145,17) [] (Ident "LT" 0) []),(ConstrDecl (145,22) [] (Ident "EQ" 0) []),(ConstrDecl (145,27) [] (Ident "GT" 0) [])])+,(DataDecl (509,1) (Ident "Nat" 0) [] [(ConstrDecl (509,12) [] (Ident "IHi" 0) []),(ConstrDecl (509,18) [] (Ident "O" 0) [(ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])]),(ConstrDecl (509,26) [] (Ident "I" 0) [(ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])])])+,(DataDecl (574,1) (Ident "Int" 0) [] [(ConstrDecl (574,12) [] (Ident "Neg" 0) [(ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])]),(ConstrDecl (574,22) [] (Ident "Zero" 0) []),(ConstrDecl (574,29) [] (Ident "Pos" 0) [(ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])])])+,(DataDecl (689,1) (Ident "Success" 0) [] [(ConstrDecl (689,16) [] (Ident "Success" 0) [])])+,(DataDecl (723,1) (Ident "Maybe" 0) [(Ident "a" 0)] [(ConstrDecl (723,16) [] (Ident "Nothing" 0) []),(ConstrDecl (723,26) [] (Ident "Just" 0) [(VariableType (Ident "a" 0))])])+,(DataDecl (732,1) (Ident "Either" 0) [(Ident "a" 0),(Ident "b" 0)] [(ConstrDecl (732,19) [] (Ident "Left" 0) [(VariableType (Ident "a" 0))]),(ConstrDecl (732,28) [] (Ident "Right" 0) [(VariableType (Ident "b" 0))])])+,(DataDecl (741,1) (Ident "IO" 0) [(Ident "_" 0)] [])+,(DataDecl (891,1) (Ident "SearchTree" 0) [(Ident "a" 0)] [(ConstrDecl (892,5) [] (Ident "Fail" 0) []),(ConstrDecl (893,5) [] (Ident "Value" 0) [(VariableType (Ident "a" 0))]),(ConstrDecl (894,5) [] (Ident "Choice" 0) [(ListType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]))]),(ConstrDecl (895,5) [] (Ident "Suspend" 0) [])])+,(InfixDecl (13,1) InfixL 9 [(Ident "!!" 0)])+,(InfixDecl (14,1) InfixR 9 [(Ident "." 0)])+,(InfixDecl (15,1) InfixL 7 [(Ident "*" 0),(Ident "*^" 0),(Ident "div" 0),(Ident "mod" 0)])+,(InfixDecl (16,1) InfixL 6 [(Ident "+" 0),(Ident "+^" 0),(Ident "-" 0),(Ident "-^" 0)])+,(InfixDecl (18,1) InfixR 5 [(Ident "++" 0)])+,(InfixDecl (19,1) Infix 4 [(Ident "=:=" 0),(Ident "==" 0),(Ident "===" 0),(Ident "/=" 0),(Ident "<" 0),(Ident ">" 0),(Ident "<=" 0),(Ident ">=" 0),(Ident "=:<=" 0),(Ident "<^" 0),(Ident "<=^" 0),(Ident ">^" 0),(Ident ">=^" 0)])+,(InfixDecl (20,1) Infix 4 [(Ident "elem" 0),(Ident "notElem" 0)])+,(InfixDecl (21,1) InfixR 3 [(Ident "&&" 0)])+,(InfixDecl (22,1) InfixR 2 [(Ident "||" 0)])+,(InfixDecl (23,1) InfixL 1 [(Ident ">>" 0),(Ident ">>=" 0)])+,(InfixDecl (24,1) InfixR 0 [(Ident "$" 0),(Ident "$!" 0),(Ident "$!!" 0),(Ident "$#" 0),(Ident "$##" 0),(Ident "seq" 0),(Ident "&" 0),(Ident "&>" 0),(Ident "?" 0)])+,(TypeSig (34,1) [(Ident "." 0)] (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "c" 0))))))+,(FunctionDecl (35,1) (Ident "." 0) [(Equation (35,1) (OpLhs (VariablePattern (Ident "f" 2)) (Ident "." 0) (VariablePattern (Ident "g" 2))) (SimpleRhs (35,9) (Lambda [(VariablePattern (Ident "x" 4))] (Apply (Variable (QualIdent Nothing (Ident "f" 2))) (Paren (Apply (Variable (QualIdent Nothing (Ident "g" 2))) (Variable (QualIdent Nothing (Ident "x" 4))))))) []))])+,(TypeSig (38,1) [(Ident "id" 0)] (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))+,(FunctionDecl (39,1) (Ident "id" 0) [(Equation (39,1) (FunLhs (Ident "id" 0) [(VariablePattern (Ident "x" 5))]) (SimpleRhs (39,19) (Variable (QualIdent Nothing (Ident "x" 5))) []))])+,(TypeSig (42,1) [(Ident "const" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "_" 0)) (VariableType (Ident "a" 0)))))+,(FunctionDecl (43,1) (Ident "const" 0) [(Equation (43,1) (FunLhs (Ident "const" 0) [(VariablePattern (Ident "x" 7)),(VariablePattern (Ident "_" 8))]) (SimpleRhs (43,19) (Variable (QualIdent Nothing (Ident "x" 7))) []))])+,(TypeSig (46,1) [(Ident "curry" 0)] (ArrowType (ArrowType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (VariableType (Ident "c" 0))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0))))))+,(FunctionDecl (47,1) (Ident "curry" 0) [(Equation (47,1) (FunLhs (Ident "curry" 0) [(VariablePattern (Ident "f" 10)),(VariablePattern (Ident "a" 10)),(VariablePattern (Ident "b" 10))]) (SimpleRhs (47,20) (Apply (Variable (QualIdent Nothing (Ident "f" 10))) (Tuple [(Variable (QualIdent Nothing (Ident "a" 10))),(Variable (QualIdent Nothing (Ident "b" 10)))])) []))])+,(TypeSig (50,1) [(Ident "uncurry" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0)))) (ArrowType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (VariableType (Ident "c" 0)))))+,(FunctionDecl (51,1) (Ident "uncurry" 0) [(Equation (51,1) (FunLhs (Ident "uncurry" 0) [(VariablePattern (Ident "f" 12)),(TuplePattern [(VariablePattern (Ident "a" 12)),(VariablePattern (Ident "b" 12))])]) (SimpleRhs (51,19) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 12))) (Variable (QualIdent Nothing (Ident "a" 12)))) (Variable (QualIdent Nothing (Ident "b" 12)))) []))])+,(TypeSig (54,1) [(Ident "flip" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0)))) (ArrowType (VariableType (Ident "b" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "c" 0))))))+,(FunctionDecl (55,1) (Ident "flip" 0) [(Equation (55,1) (FunLhs (Ident "flip" 0) [(VariablePattern (Ident "f" 14)),(VariablePattern (Ident "x" 14)),(VariablePattern (Ident "y" 14))]) (SimpleRhs (55,19) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 14))) (Variable (QualIdent Nothing (Ident "y" 14)))) (Variable (QualIdent Nothing (Ident "x" 14)))) []))])+,(TypeSig (58,1) [(Ident "until" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))))+,(FunctionDecl (59,1) (Ident "until" 0) [(Equation (59,1) (FunLhs (Ident "until" 0) [(VariablePattern (Ident "p" 16)),(VariablePattern (Ident "f" 16)),(VariablePattern (Ident "x" 16))]) (SimpleRhs (59,19) (IfThenElse (Apply (Variable (QualIdent Nothing (Ident "p" 16))) (Variable (QualIdent Nothing (Ident "x" 16)))) (Variable (QualIdent Nothing (Ident "x" 16))) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "until" 0))) (Variable (QualIdent Nothing (Ident "p" 16)))) (Variable (QualIdent Nothing (Ident "f" 16)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 16))) (Variable (QualIdent Nothing (Ident "x" 16))))))) []))])+,(TypeSig (62,1) [(Ident "$" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0)))))+,(FunctionDecl (63,1) (Ident "$" 0) [(Equation (63,1) (OpLhs (VariablePattern (Ident "f" 18)) (Ident "$" 0) (VariablePattern (Ident "x" 18))) (SimpleRhs (63,19) (Apply (Variable (QualIdent Nothing (Ident "f" 18))) (Variable (QualIdent Nothing (Ident "x" 18)))) []))])+,(TypeSig (67,1) [(Ident "$!" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0)))))+,(FlatExternalDecl (68,1) [(Ident "$!" 0)])+,(TypeSig (72,1) [(Ident "$!!" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0)))))+,(FlatExternalDecl (73,1) [(Ident "$!!" 0)])+,(TypeSig (78,1) [(Ident "$#" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0)))))+,(FlatExternalDecl (79,1) [(Ident "$#" 0)])+,(TypeSig (84,1) [(Ident "$##" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0)))))+,(FlatExternalDecl (85,1) [(Ident "$##" 0)])+,(TypeSig (89,1) [(Ident "ensureSpine" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (90,1) (Ident "ensureSpine" 0) [(Equation (90,1) (FunLhs (Ident "ensureSpine" 0) []) (SimpleRhs (90,15) (LeftSection (Variable (QualIdent Nothing (Ident "ensureList" 21))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0)))) [(FunctionDecl (91,8) (Ident "ensureList" 21) [(Equation (91,8) (FunLhs (Ident "ensureList" 21) [(ListPattern [])]) (SimpleRhs (91,28) (List []) [])),(Equation (92,8) (FunLhs (Ident "ensureList" 21) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 24)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 24))))]) (SimpleRhs (92,28) (InfixApply (Variable (QualIdent Nothing (Ident "x" 24))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ensureSpine" 0))) (Variable (QualIdent Nothing (Ident "xs" 24))))) []))])]))])+,(TypeSig (96,1) [(Ident "seq" 0)] (ArrowType (VariableType (Ident "_" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))+,(FunctionDecl (97,1) (Ident "seq" 0) [(Equation (97,1) (FunLhs (Ident "seq" 0) [(VariablePattern (Ident "x" 26)),(VariablePattern (Ident "y" 26))]) (SimpleRhs (97,11) (InfixApply (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Variable (QualIdent Nothing (Ident "y" 26))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!" 0))) (Variable (QualIdent Nothing (Ident "x" 26)))) []))])+,(TypeSig (102,1) [(Ident "error" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0))))+,(FunctionDecl (103,1) (Ident "error" 0) [(Equation (103,1) (FunLhs (Ident "error" 0) [(VariablePattern (Ident "s" 28))]) (SimpleRhs (103,11) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_error" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 28)))) []))])+,(TypeSig (105,1) [(Ident "prim_error" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0))))+,(FlatExternalDecl (106,1) [(Ident "prim_error" 0)])+,(TypeSig (110,1) [(Ident "failed" 0)] (VariableType (Ident "_" 0)))+,(FlatExternalDecl (111,1) [(Ident "failed" 0)])+,(TypeSig (117,1) [(Ident "&&" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (118,1) (Ident "&&" 0) [(Equation (118,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) []) (Ident "&&" 0) (VariablePattern (Ident "x" 30))) (SimpleRhs (118,19) (Variable (QualIdent Nothing (Ident "x" 30))) [])),(Equation (119,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) []) (Ident "&&" 0) (VariablePattern (Ident "_" 33))) (SimpleRhs (119,19) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(TypeSig (123,1) [(Ident "||" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (124,1) (Ident "||" 0) [(Equation (124,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) []) (Ident "||" 0) (VariablePattern (Ident "_" 36))) (SimpleRhs (124,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (125,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) []) (Ident "||" 0) (VariablePattern (Ident "x" 38))) (SimpleRhs (125,19) (Variable (QualIdent Nothing (Ident "x" 38))) []))])+,(TypeSig (129,1) [(Ident "not" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (130,1) (Ident "not" 0) [(Equation (130,1) (FunLhs (Ident "not" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) [])]) (SimpleRhs (130,19) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (131,1) (FunLhs (Ident "not" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) [])]) (SimpleRhs (131,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) []))])+,(TypeSig (134,1) [(Ident "otherwise" 0)] (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))+,(FunctionDecl (135,1) (Ident "otherwise" 0) [(Equation (135,1) (FunLhs (Ident "otherwise" 0) []) (SimpleRhs (135,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) []))])+,(TypeSig (139,1) [(Ident "if_then_else" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))))+,(FunctionDecl (140,1) (Ident "if_then_else" 0) [(Equation (140,1) (FunLhs (Ident "if_then_else" 0) [(VariablePattern (Ident "b" 46)),(VariablePattern (Ident "t" 46)),(VariablePattern (Ident "f" 46))]) (SimpleRhs (140,22) (Case (Variable (QualIdent Nothing (Ident "b" 46))) [(Alt (140,32) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "True" 0)) []) (SimpleRhs (140,41) (Variable (QualIdent Nothing (Ident "t" 46))) [])),(Alt (141,32) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "False" 0)) []) (SimpleRhs (141,41) (Variable (QualIdent Nothing (Ident "f" 46))) []))]) []))])+,(FunctionDecl (147,1) (Ident "isLT" 0) [(Equation (147,1) (FunLhs (Ident "isLT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "LT" 0)) [])]) (SimpleRhs (147,11) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (148,1) (FunLhs (Ident "isLT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "GT" 0)) [])]) (SimpleRhs (148,11) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (149,1) (FunLhs (Ident "isLT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "EQ" 0)) [])]) (SimpleRhs (149,11) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(FunctionDecl (151,1) (Ident "isGT" 0) [(Equation (151,1) (FunLhs (Ident "isGT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "LT" 0)) [])]) (SimpleRhs (151,11) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (152,1) (FunLhs (Ident "isGT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "GT" 0)) [])]) (SimpleRhs (152,11) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (153,1) (FunLhs (Ident "isGT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "EQ" 0)) [])]) (SimpleRhs (153,11) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(FunctionDecl (155,1) (Ident "isEQ" 0) [(Equation (155,1) (FunLhs (Ident "isEQ" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "LT" 0)) [])]) (SimpleRhs (155,11) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (156,1) (FunLhs (Ident "isEQ" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "GT" 0)) [])]) (SimpleRhs (156,11) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (157,1) (FunLhs (Ident "isEQ" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "EQ" 0)) [])]) (SimpleRhs (157,11) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) []))])+,(TypeSig (164,1) [(Ident "compare" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (165,1) (Ident "compare" 0) [(Equation (165,1) (FunLhs (Ident "compare" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (165,27) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0))) [])),(Equation (166,1) (FunLhs (Ident "compare" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 73))]))]) (SimpleRhs (166,27) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (167,1) (FunLhs (Ident "compare" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 76))]))]) (SimpleRhs (167,27) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (168,1) (FunLhs (Ident "compare" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 79))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (168,27) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (169,1) (FunLhs (Ident "compare" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 81))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 81))]))]) (SimpleRhs (169,27) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 81)))) (Variable (QualIdent Nothing (Ident "y" 81)))) [])),(Equation (170,1) (FunLhs (Ident "compare" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 84))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 85))]))]) (SimpleRhs (170,27) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (171,1) (FunLhs (Ident "compare" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 88))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (171,27) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (172,1) (FunLhs (Ident "compare" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 91))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 92))]))]) (SimpleRhs (172,27) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (173,1) (FunLhs (Ident "compare" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 94))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 94))]))]) (SimpleRhs (173,27) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "y" 94)))) (Variable (QualIdent Nothing (Ident "x" 94)))) []))])+,(TypeSig (187,1) [(Ident "<" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (188,1) (Ident "<" 0) [(Equation (188,1) (OpLhs (VariablePattern (Ident "x" 96)) (Ident "<" 0) (VariablePattern (Ident "y" 96))) (SimpleRhs (188,9) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "compare" 0))) (Variable (QualIdent Nothing (Ident "x" 96)))) (Variable (QualIdent Nothing (Ident "y" 96)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0)))) []))])+,(TypeSig (191,1) [(Ident ">" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (192,1) (Ident ">" 0) [(Equation (192,1) (OpLhs (VariablePattern (Ident "x" 98)) (Ident ">" 0) (VariablePattern (Ident "y" 98))) (SimpleRhs (192,9) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "compare" 0))) (Variable (QualIdent Nothing (Ident "x" 98)))) (Variable (QualIdent Nothing (Ident "y" 98)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0)))) []))])+,(TypeSig (195,1) [(Ident "<=" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (196,1) (Ident "<=" 0) [(Equation (196,1) (OpLhs (VariablePattern (Ident "x" 100)) (Ident "<=" 0) (VariablePattern (Ident "y" 100))) (SimpleRhs (196,10) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "compare" 0))) (Variable (QualIdent Nothing (Ident "x" 100)))) (Variable (QualIdent Nothing (Ident "y" 100)))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0)))) []))])+,(TypeSig (199,1) [(Ident ">=" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (200,1) (Ident ">=" 0) [(Equation (200,1) (OpLhs (VariablePattern (Ident "x" 102)) (Ident ">=" 0) (VariablePattern (Ident "y" 102))) (SimpleRhs (200,10) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "compare" 0))) (Variable (QualIdent Nothing (Ident "x" 102)))) (Variable (QualIdent Nothing (Ident "y" 102)))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0)))) []))])+,(TypeSig (203,1) [(Ident "max" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (204,1) (Ident "max" 0) [(Equation (204,1) (FunLhs (Ident "max" 0) [(VariablePattern (Ident "x" 104)),(VariablePattern (Ident "y" 104))]) (SimpleRhs (204,11) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "compare" 0))) (Variable (QualIdent Nothing (Ident "x" 104)))) (Variable (QualIdent Nothing (Ident "y" 104)))) [(Alt (205,3) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "LT" 0)) []) (SimpleRhs (205,9) (Variable (QualIdent Nothing (Ident "y" 104))) [])),(Alt (206,3) (VariablePattern (Ident "_" 109)) (SimpleRhs (206,9) (Variable (QualIdent Nothing (Ident "x" 104))) []))]) []))])+,(TypeSig (209,1) [(Ident "min" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (210,1) (Ident "min" 0) [(Equation (210,1) (FunLhs (Ident "min" 0) [(VariablePattern (Ident "x" 111)),(VariablePattern (Ident "y" 111))]) (SimpleRhs (210,12) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "compare" 0))) (Variable (QualIdent Nothing (Ident "x" 111)))) (Variable (QualIdent Nothing (Ident "y" 111)))) [(Alt (211,3) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "GT" 0)) []) (SimpleRhs (211,9) (Variable (QualIdent Nothing (Ident "y" 111))) [])),(Alt (212,3) (VariablePattern (Ident "_" 116)) (SimpleRhs (212,9) (Variable (QualIdent Nothing (Ident "x" 111))) []))]) []))])+,(TypeSig (215,1) [(Ident "==" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (216,1) [(Ident "==" 0)])+,(TypeSig (219,1) [(Ident "/=" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (220,1) (Ident "/=" 0) [(Equation (220,1) (OpLhs (VariablePattern (Ident "x" 118)) (Ident "/=" 0) (VariablePattern (Ident "y" 118))) (SimpleRhs (220,19) (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 118))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "y" 118)))))) []))])+,(TypeSig (228,1) [(Ident "fst" 0)] (ArrowType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "_" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (229,1) (Ident "fst" 0) [(Equation (229,1) (FunLhs (Ident "fst" 0) [(TuplePattern [(VariablePattern (Ident "x" 120)),(VariablePattern (Ident "_" 121))])]) (SimpleRhs (229,19) (Variable (QualIdent Nothing (Ident "x" 120))) []))])+,(TypeSig (232,1) [(Ident "snd" 0)] (ArrowType (TupleType [(VariableType (Ident "_" 0)),(VariableType (Ident "b" 0))]) (VariableType (Ident "b" 0))))+,(FunctionDecl (233,1) (Ident "snd" 0) [(Equation (233,1) (FunLhs (Ident "snd" 0) [(TuplePattern [(VariablePattern (Ident "_" 124)),(VariablePattern (Ident "y" 123))])]) (SimpleRhs (233,19) (Variable (QualIdent Nothing (Ident "y" 123))) []))])+,(TypeSig (244,1) [(Ident "head" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0))))+,(FunctionDecl (245,1) (Ident "head" 0) [(Equation (245,1) (FunLhs (Ident "head" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 126)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 127))))]) (SimpleRhs (245,19) (Variable (QualIdent Nothing (Ident "x" 126))) []))])+,(TypeSig (248,1) [(Ident "tail" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (249,1) (Ident "tail" 0) [(Equation (249,1) (FunLhs (Ident "tail" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 130)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 129))))]) (SimpleRhs (249,19) (Variable (QualIdent Nothing (Ident "xs" 129))) []))])+,(TypeSig (252,1) [(Ident "null" 0)] (ArrowType (ListType (VariableType (Ident "_" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (253,1) (Ident "null" 0) [(Equation (253,1) (FunLhs (Ident "null" 0) [(ListPattern [])]) (SimpleRhs (253,19) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (254,1) (FunLhs (Ident "null" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 135)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 136))))]) (SimpleRhs (254,19) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(TypeSig (259,1) [(Ident "++" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (260,1) (Ident "++" 0) [(Equation (260,1) (OpLhs (ListPattern []) (Ident "++" 0) (VariablePattern (Ident "ys" 138))) (SimpleRhs (260,19) (Variable (QualIdent Nothing (Ident "ys" 138))) [])),(Equation (261,1) (OpLhs (ParenPattern (InfixPattern (VariablePattern (Ident "x" 140)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 140)))) (Ident "++" 0) (VariablePattern (Ident "ys" 140))) (SimpleRhs (261,19) (InfixApply (Variable (QualIdent Nothing (Ident "x" 140))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "xs" 140))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "ys" 140))))) []))])+,(TypeSig (264,1) [(Ident "length" 0)] (ArrowType (ListType (VariableType (Ident "_" 0))) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (265,1) (Ident "length" 0) [(Equation (265,1) (FunLhs (Ident "length" 0) [(ListPattern [])]) (SimpleRhs (265,19) (Literal (Int (Ident "_" 144) 0)) [])),(Equation (266,1) (FunLhs (Ident "length" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 146)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 145))))]) (SimpleRhs (266,19) (InfixApply (Literal (Int (Ident "_" 148) 1)) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "xs" 145))))) []))])+,(TypeSig (269,1) [(Ident "!!" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (VariableType (Ident "a" 0)))))+,(FunctionDecl (270,1) (Ident "!!" 0) [(Equation (270,1) (OpLhs (ParenPattern (InfixPattern (VariablePattern (Ident "x" 149)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 149)))) (Ident "!!" 0) (VariablePattern (Ident "n" 149))) (GuardedRhs [(CondExpr (270,13) (InfixApply (Variable (QualIdent Nothing (Ident "n" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 151) 0))) (Variable (QualIdent Nothing (Ident "x" 149)))),(CondExpr (271,13) (InfixApply (Variable (QualIdent Nothing (Ident "n" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 152) 0))) (InfixApply (Variable (QualIdent Nothing (Ident "xs" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 153) 1))))))] []))])+,(TypeSig (274,1) [(Ident "map" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "b" 0))))))+,(FunctionDecl (275,1) (Ident "map" 0) [(Equation (275,1) (FunLhs (Ident "map" 0) [(VariablePattern (Ident "_" 155)),(ListPattern [])]) (SimpleRhs (275,19) (List []) [])),(Equation (276,1) (FunLhs (Ident "map" 0) [(VariablePattern (Ident "f" 157)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 157)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 157))))]) (SimpleRhs (276,19) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "f" 157))) (Variable (QualIdent Nothing (Ident "x" 157)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 157)))) (Variable (QualIdent Nothing (Ident "xs" 157))))) []))])+,(TypeSig (281,1) [(Ident "foldl" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "a" 0)))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "b" 0))) (VariableType (Ident "a" 0))))))+,(FunctionDecl (282,1) (Ident "foldl" 0) [(Equation (282,1) (FunLhs (Ident "foldl" 0) [(VariablePattern (Ident "_" 160)),(VariablePattern (Ident "z" 159)),(ListPattern [])]) (SimpleRhs (282,20) (Variable (QualIdent Nothing (Ident "z" 159))) [])),(Equation (283,1) (FunLhs (Ident "foldl" 0) [(VariablePattern (Ident "f" 162)),(VariablePattern (Ident "z" 162)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 162)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 162))))]) (SimpleRhs (283,20) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldl" 0))) (Variable (QualIdent Nothing (Ident "f" 162)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 162))) (Variable (QualIdent Nothing (Ident "z" 162)))) (Variable (QualIdent Nothing (Ident "x" 162)))))) (Variable (QualIdent Nothing (Ident "xs" 162)))) []))])+,(TypeSig (286,1) [(Ident "foldl1" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))) (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0)))))+,(FunctionDecl (287,1) (Ident "foldl1" 0) [(Equation (287,1) (FunLhs (Ident "foldl1" 0) [(VariablePattern (Ident "f" 164)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 164)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 164))))]) (SimpleRhs (287,20) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldl" 0))) (Variable (QualIdent Nothing (Ident "f" 164)))) (Variable (QualIdent Nothing (Ident "x" 164)))) (Variable (QualIdent Nothing (Ident "xs" 164)))) []))])+,(TypeSig (292,1) [(Ident "foldr" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0)))) (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "b" 0))))))+,(FunctionDecl (293,1) (Ident "foldr" 0) [(Equation (293,1) (FunLhs (Ident "foldr" 0) [(VariablePattern (Ident "_" 167)),(VariablePattern (Ident "z" 166)),(ListPattern [])]) (SimpleRhs (293,20) (Variable (QualIdent Nothing (Ident "z" 166))) [])),(Equation (294,1) (FunLhs (Ident "foldr" 0) [(VariablePattern (Ident "f" 169)),(VariablePattern (Ident "z" 169)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 169)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 169))))]) (SimpleRhs (294,20) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 169))) (Variable (QualIdent Nothing (Ident "x" 169)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent Nothing (Ident "f" 169)))) (Variable (QualIdent Nothing (Ident "z" 169)))) (Variable (QualIdent Nothing (Ident "xs" 169)))))) []))])+,(TypeSig (297,1) [(Ident "foldr1" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))) (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0)))))+,(FunctionDecl (298,1) (Ident "foldr1" 0) [(Equation (298,1) (FunLhs (Ident "foldr1" 0) [(VariablePattern (Ident "_" 172)),(ListPattern [(VariablePattern (Ident "x" 171))])]) (SimpleRhs (298,23) (Variable (QualIdent Nothing (Ident "x" 171))) [])),(Equation (299,1) (FunLhs (Ident "foldr1" 0) [(VariablePattern (Ident "f" 174)),(ParenPattern (InfixPattern (VariablePattern (Ident "x1" 174)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x2" 174)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 174)))))]) (SimpleRhs (299,23) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 174))) (Variable (QualIdent Nothing (Ident "x1" 174)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr1" 0))) (Variable (QualIdent Nothing (Ident "f" 174)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x2" 174))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 174)))))))) []))])+,(TypeSig (302,1) [(Ident "filter" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (303,1) (Ident "filter" 0) [(Equation (303,1) (FunLhs (Ident "filter" 0) [(VariablePattern (Ident "_" 177)),(ListPattern [])]) (SimpleRhs (303,21) (List []) [])),(Equation (304,1) (FunLhs (Ident "filter" 0) [(VariablePattern (Ident "p" 179)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 179)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 179))))]) (SimpleRhs (304,21) (IfThenElse (Apply (Variable (QualIdent Nothing (Ident "p" 179))) (Variable (QualIdent Nothing (Ident "x" 179)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 179))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Variable (QualIdent Nothing (Ident "p" 179)))) (Variable (QualIdent Nothing (Ident "xs" 179))))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Variable (QualIdent Nothing (Ident "p" 179)))) (Variable (QualIdent Nothing (Ident "xs" 179))))) []))])+,(TypeSig (309,1) [(Ident "zip" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "b" 0))) (ListType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])))))+,(FunctionDecl (310,1) (Ident "zip" 0) [(Equation (310,1) (FunLhs (Ident "zip" 0) [(ListPattern []),(VariablePattern (Ident "_" 182))]) (SimpleRhs (310,21) (List []) [])),(Equation (311,1) (FunLhs (Ident "zip" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 185)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 186)))),(ListPattern [])]) (SimpleRhs (311,21) (List []) [])),(Equation (312,1) (FunLhs (Ident "zip" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 188)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 188)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 188)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 188))))]) (SimpleRhs (312,21) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "x" 188))),(Variable (QualIdent Nothing (Ident "y" 188)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zip" 0))) (Variable (QualIdent Nothing (Ident "xs" 188)))) (Variable (QualIdent Nothing (Ident "ys" 188))))) []))])+,(TypeSig (316,1) [(Ident "zip3" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "b" 0))) (ArrowType (ListType (VariableType (Ident "c" 0))) (ListType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0)),(VariableType (Ident "c" 0))]))))))+,(FunctionDecl (317,1) (Ident "zip3" 0) [(Equation (317,1) (FunLhs (Ident "zip3" 0) [(ListPattern []),(VariablePattern (Ident "_" 191)),(VariablePattern (Ident "_" 192))]) (SimpleRhs (317,29) (List []) [])),(Equation (318,1) (FunLhs (Ident "zip3" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 195)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 196)))),(ListPattern []),(VariablePattern (Ident "_" 197))]) (SimpleRhs (318,29) (List []) [])),(Equation (319,1) (FunLhs (Ident "zip3" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 200)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 201)))),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 202)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 203)))),(ListPattern [])]) (SimpleRhs (319,29) (List []) [])),(Equation (320,1) (FunLhs (Ident "zip3" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 205)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 205)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 205)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 205)))),(ParenPattern (InfixPattern (VariablePattern (Ident "z" 205)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "zs" 205))))]) (SimpleRhs (320,29) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "x" 205))),(Variable (QualIdent Nothing (Ident "y" 205))),(Variable (QualIdent Nothing (Ident "z" 205)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zip3" 0))) (Variable (QualIdent Nothing (Ident "xs" 205)))) (Variable (QualIdent Nothing (Ident "ys" 205)))) (Variable (QualIdent Nothing (Ident "zs" 205))))) []))])+,(TypeSig (324,1) [(Ident "zipWith" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0)))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "b" 0))) (ListType (VariableType (Ident "c" 0)))))))+,(FunctionDecl (325,1) (Ident "zipWith" 0) [(Equation (325,1) (FunLhs (Ident "zipWith" 0) [(VariablePattern (Ident "_" 208)),(ListPattern []),(VariablePattern (Ident "_" 209))]) (SimpleRhs (325,27) (List []) [])),(Equation (326,1) (FunLhs (Ident "zipWith" 0) [(VariablePattern (Ident "_" 212)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 213)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 214)))),(ListPattern [])]) (SimpleRhs (326,27) (List []) [])),(Equation (327,1) (FunLhs (Ident "zipWith" 0) [(VariablePattern (Ident "f" 216)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 216)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 216)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 216)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 216))))]) (SimpleRhs (327,27) (InfixApply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 216))) (Variable (QualIdent Nothing (Ident "x" 216)))) (Variable (QualIdent Nothing (Ident "y" 216)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zipWith" 0))) (Variable (QualIdent Nothing (Ident "f" 216)))) (Variable (QualIdent Nothing (Ident "xs" 216)))) (Variable (QualIdent Nothing (Ident "ys" 216))))) []))])+,(TypeSig (331,1) [(Ident "zipWith3" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "b" 0)) (ArrowType (VariableType (Ident "c" 0)) (VariableType (Ident "d" 0))))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "b" 0))) (ArrowType (ListType (VariableType (Ident "c" 0))) (ListType (VariableType (Ident "d" 0))))))))+,(FunctionDecl (332,1) (Ident "zipWith3" 0) [(Equation (332,1) (FunLhs (Ident "zipWith3" 0) [(VariablePattern (Ident "_" 219)),(ListPattern []),(VariablePattern (Ident "_" 220)),(VariablePattern (Ident "_" 221))]) (SimpleRhs (332,35) (List []) [])),(Equation (333,1) (FunLhs (Ident "zipWith3" 0) [(VariablePattern (Ident "_" 224)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 225)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 226)))),(ListPattern []),(VariablePattern (Ident "_" 227))]) (SimpleRhs (333,35) (List []) [])),(Equation (334,1) (FunLhs (Ident "zipWith3" 0) [(VariablePattern (Ident "_" 230)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 231)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 232)))),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 233)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 234)))),(ListPattern [])]) (SimpleRhs (334,35) (List []) [])),(Equation (335,1) (FunLhs (Ident "zipWith3" 0) [(VariablePattern (Ident "f" 236)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 236)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 236)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 236)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 236)))),(ParenPattern (InfixPattern (VariablePattern (Ident "z" 236)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "zs" 236))))]) (SimpleRhs (335,35) (InfixApply (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 236))) (Variable (QualIdent Nothing (Ident "x" 236)))) (Variable (QualIdent Nothing (Ident "y" 236)))) (Variable (QualIdent Nothing (Ident "z" 236)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "zipWith3" 0))) (Variable (QualIdent Nothing (Ident "f" 236)))) (Variable (QualIdent Nothing (Ident "xs" 236)))) (Variable (QualIdent Nothing (Ident "ys" 236)))) (Variable (QualIdent Nothing (Ident "zs" 236))))) []))])+,(TypeSig (338,1) [(Ident "unzip" 0)] (ArrowType (ListType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "b" 0)))])))+,(FunctionDecl (339,1) (Ident "unzip" 0) [(Equation (339,1) (FunLhs (Ident "unzip" 0) [(ListPattern [])]) (SimpleRhs (339,23) (Tuple [(List []),(List [])]) [])),(Equation (340,1) (FunLhs (Ident "unzip" 0) [(ParenPattern (InfixPattern (TuplePattern [(VariablePattern (Ident "x" 240)),(VariablePattern (Ident "y" 240))]) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ps" 240))))]) (SimpleRhs (340,23) (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 240))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 241)))),(InfixApply (Variable (QualIdent Nothing (Ident "y" 240))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 241))))]) [(PatternDecl (340,41) (TuplePattern [(VariablePattern (Ident "xs" 241)),(VariablePattern (Ident "ys" 241))]) (SimpleRhs (340,51) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unzip" 0))) (Variable (QualIdent Nothing (Ident "ps" 240)))) []))]))])+,(TypeSig (343,1) [(Ident "unzip3" 0)] (ArrowType (ListType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0)),(VariableType (Ident "c" 0))])) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "b" 0))),(ListType (VariableType (Ident "c" 0)))])))+,(FunctionDecl (344,1) (Ident "unzip3" 0) [(Equation (344,1) (FunLhs (Ident "unzip3" 0) [(ListPattern [])]) (SimpleRhs (344,23) (Tuple [(List []),(List []),(List [])]) [])),(Equation (345,1) (FunLhs (Ident "unzip3" 0) [(ParenPattern (InfixPattern (TuplePattern [(VariablePattern (Ident "x" 245)),(VariablePattern (Ident "y" 245)),(VariablePattern (Ident "z" 245))]) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ts" 245))))]) (SimpleRhs (345,23) (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 245))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 246)))),(InfixApply (Variable (QualIdent Nothing (Ident "y" 245))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 246)))),(InfixApply (Variable (QualIdent Nothing (Ident "z" 245))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "zs" 246))))]) [(PatternDecl (345,46) (TuplePattern [(VariablePattern (Ident "xs" 246)),(VariablePattern (Ident "ys" 246)),(VariablePattern (Ident "zs" 246))]) (SimpleRhs (345,59) (Apply (Variable (QualIdent (Just "Prelude") (Ident "unzip3" 0))) (Variable (QualIdent Nothing (Ident "ts" 245)))) []))]))])+,(TypeSig (348,1) [(Ident "concat" 0)] (ArrowType (ListType (ListType (VariableType (Ident "a" 0)))) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (349,1) (Ident "concat" 0) [(Equation (349,1) (FunLhs (Ident "concat" 0) [(VariablePattern (Ident "l" 248))]) (SimpleRhs (349,21) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "Prelude") (Ident "++" 0)))) (List [])) (Variable (QualIdent Nothing (Ident "l" 248)))) []))])+,(TypeSig (352,1) [(Ident "concatMap" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "b" 0)))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "b" 0))))))+,(FunctionDecl (353,1) (Ident "concatMap" 0) [(Equation (353,1) (FunLhs (Ident "concatMap" 0) [(VariablePattern (Ident "f" 250))]) (SimpleRhs (353,21) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "concat" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 250))))) []))])+,(TypeSig (357,1) [(Ident "iterate" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))) (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (358,1) (Ident "iterate" 0) [(Equation (358,1) (FunLhs (Ident "iterate" 0) [(VariablePattern (Ident "f" 252)),(VariablePattern (Ident "x" 252))]) (SimpleRhs (358,21) (InfixApply (Variable (QualIdent Nothing (Ident "x" 252))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "iterate" 0))) (Variable (QualIdent Nothing (Ident "f" 252)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 252))) (Variable (QualIdent Nothing (Ident "x" 252))))))) []))])+,(TypeSig (362,1) [(Ident "repeat" 0)] (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (363,1) (Ident "repeat" 0) [(Equation (363,1) (FunLhs (Ident "repeat" 0) [(VariablePattern (Ident "x" 254))]) (SimpleRhs (363,21) (InfixApply (Variable (QualIdent Nothing (Ident "x" 254))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "repeat" 0))) (Variable (QualIdent Nothing (Ident "x" 254))))) []))])+,(TypeSig (366,1) [(Ident "replicate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (367,1) (Ident "replicate" 0) [(Equation (367,1) (FunLhs (Ident "replicate" 0) [(VariablePattern (Ident "n" 256)),(VariablePattern (Ident "x" 256))]) (SimpleRhs (367,21) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Variable (QualIdent Nothing (Ident "n" 256)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "repeat" 0))) (Variable (QualIdent Nothing (Ident "x" 256)))))) []))])+,(TypeSig (370,1) [(Ident "take" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (371,1) (Ident "take" 0) [(Equation (371,1) (FunLhs (Ident "take" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 259))])),(VariablePattern (Ident "_" 260))]) (SimpleRhs (371,25) (List []) [])),(Equation (372,1) (FunLhs (Ident "take" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(VariablePattern (Ident "_" 263))]) (SimpleRhs (372,25) (List []) [])),(Equation (373,1) (FunLhs (Ident "take" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 266))])),(ListPattern [])]) (SimpleRhs (373,25) (List []) [])),(Equation (374,1) (FunLhs (Ident "take" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "n" 268))])),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 268)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 268))))]) (SimpleRhs (374,23) (InfixApply (Variable (QualIdent Nothing (Ident "x" 268))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Paren (InfixApply (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Variable (QualIdent Nothing (Ident "n" 268)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 270) 1))))) (Variable (QualIdent Nothing (Ident "xs" 268))))) []))])+,(TypeSig (377,1) [(Ident "drop" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (378,1) (Ident "drop" 0) [(Equation (378,1) (FunLhs (Ident "drop" 0) [(VariablePattern (Ident "n" 271)),(VariablePattern (Ident "l" 271))]) (SimpleRhs (378,21) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 271))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Literal (Int (Ident "_" 280) 0))) (Variable (QualIdent Nothing (Ident "l" 271))) (Apply (Apply (Variable (QualIdent Nothing (Ident "dropp" 272))) (Variable (QualIdent Nothing (Ident "n" 271)))) (Variable (QualIdent Nothing (Ident "l" 271))))) [(FunctionDecl (379,10) (Ident "dropp" 272) [(Equation (379,10) (FunLhs (Ident "dropp" 272) [(VariablePattern (Ident "_" 274)),(ListPattern [])]) (SimpleRhs (379,27) (List []) [])),(Equation (380,10) (FunLhs (Ident "dropp" 272) [(VariablePattern (Ident "m" 276)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 277)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 276))))]) (SimpleRhs (380,27) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "drop" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 276))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 279) 1))))) (Variable (QualIdent Nothing (Ident "xs" 276)))) []))])]))])+,(TypeSig (383,1) [(Ident "splitAt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "a" 0)))]))))+,(FunctionDecl (384,1) (Ident "splitAt" 0) [(Equation (384,1) (FunLhs (Ident "splitAt" 0) [(VariablePattern (Ident "n" 281)),(VariablePattern (Ident "l" 281))]) (SimpleRhs (384,21) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 281))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Literal (Int (Ident "_" 291) 0))) (Tuple [(List []),(Variable (QualIdent Nothing (Ident "l" 281)))]) (Apply (Apply (Variable (QualIdent Nothing (Ident "splitAtp" 282))) (Variable (QualIdent Nothing (Ident "n" 281)))) (Variable (QualIdent Nothing (Ident "l" 281))))) [(FunctionDecl (385,10) (Ident "splitAtp" 282) [(Equation (385,10) (FunLhs (Ident "splitAtp" 282) [(VariablePattern (Ident "_" 284)),(ListPattern [])]) (SimpleRhs (385,30) (Tuple [(List []),(List [])]) [])),(Equation (386,10) (FunLhs (Ident "splitAtp" 282) [(VariablePattern (Ident "m" 286)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 286)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 286))))]) (SimpleRhs (386,30) (Let [(PatternDecl (386,34) (TuplePattern [(VariablePattern (Ident "ys" 288)),(VariablePattern (Ident "zs" 288))]) (SimpleRhs (386,44) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "splitAt" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 286))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 290) 1))))) (Variable (QualIdent Nothing (Ident "xs" 286)))) []))] (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 286))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 288)))),(Variable (QualIdent Nothing (Ident "zs" 288)))])) []))])]))])+,(TypeSig (389,1) [(Ident "takeWhile" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (390,1) (Ident "takeWhile" 0) [(Equation (390,1) (FunLhs (Ident "takeWhile" 0) [(VariablePattern (Ident "_" 293)),(ListPattern [])]) (SimpleRhs (390,22) (List []) [])),(Equation (391,1) (FunLhs (Ident "takeWhile" 0) [(VariablePattern (Ident "p" 295)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 295)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 295))))]) (SimpleRhs (391,22) (IfThenElse (Apply (Variable (QualIdent Nothing (Ident "p" 295))) (Variable (QualIdent Nothing (Ident "x" 295)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 295))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "takeWhile" 0))) (Variable (QualIdent Nothing (Ident "p" 295)))) (Variable (QualIdent Nothing (Ident "xs" 295))))) (List [])) []))])+,(TypeSig (394,1) [(Ident "dropWhile" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (395,1) (Ident "dropWhile" 0) [(Equation (395,1) (FunLhs (Ident "dropWhile" 0) [(VariablePattern (Ident "_" 298)),(ListPattern [])]) (SimpleRhs (395,22) (List []) [])),(Equation (396,1) (FunLhs (Ident "dropWhile" 0) [(VariablePattern (Ident "p" 300)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 300)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 300))))]) (SimpleRhs (396,22) (IfThenElse (Apply (Variable (QualIdent Nothing (Ident "p" 300))) (Variable (QualIdent Nothing (Ident "x" 300)))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "dropWhile" 0))) (Variable (QualIdent Nothing (Ident "p" 300)))) (Variable (QualIdent Nothing (Ident "xs" 300)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 300))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 300))))) []))])+,(TypeSig (399,1) [(Ident "span" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "a" 0)))]))))+,(FunctionDecl (400,1) (Ident "span" 0) [(Equation (400,1) (FunLhs (Ident "span" 0) [(VariablePattern (Ident "_" 303)),(ListPattern [])]) (SimpleRhs (400,22) (Tuple [(List []),(List [])]) [])),(Equation (401,1) (FunLhs (Ident "span" 0) [(VariablePattern (Ident "p" 305)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 305)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 305))))]) (GuardedRhs [(CondExpr (402,8) (Apply (Variable (QualIdent Nothing (Ident "p" 305))) (Variable (QualIdent Nothing (Ident "x" 305)))) (Let [(PatternDecl (402,26) (TuplePattern [(VariablePattern (Ident "ys" 307)),(VariablePattern (Ident "zs" 307))]) (SimpleRhs (402,36) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "span" 0))) (Variable (QualIdent Nothing (Ident "p" 305)))) (Variable (QualIdent Nothing (Ident "xs" 305)))) []))] (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 305))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 307)))),(Variable (QualIdent Nothing (Ident "zs" 307)))]))),(CondExpr (403,8) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Tuple [(List []),(InfixApply (Variable (QualIdent Nothing (Ident "x" 305))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 305))))]))] []))])+,(TypeSig (407,1) [(Ident "break" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (TupleType [(ListType (VariableType (Ident "a" 0))),(ListType (VariableType (Ident "a" 0)))]))))+,(FunctionDecl (408,1) (Ident "break" 0) [(Equation (408,1) (FunLhs (Ident "break" 0) [(VariablePattern (Ident "p" 309))]) (SimpleRhs (408,22) (Apply (Variable (QualIdent (Just "Prelude") (Ident "span" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent Nothing (Ident "p" 309)))))) []))])+,(TypeSig (412,1) [(Ident "lines" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (413,1) (Ident "lines" 0) [(Equation (413,1) (FunLhs (Ident "lines" 0) [(ListPattern [])]) (SimpleRhs (413,16) (List []) [])),(Equation (414,1) (FunLhs (Ident "lines" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 313)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 313))))]) (SimpleRhs (414,16) (Let [(PatternDecl (414,20) (TuplePattern [(VariablePattern (Ident "l" 321)),(VariablePattern (Ident "xs_l" 321))]) (SimpleRhs (414,31) (Apply (Variable (QualIdent Nothing (Ident "splitline" 314))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 313))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 313)))))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "l" 321))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "lines" 0))) (Variable (QualIdent Nothing (Ident "xs_l" 321)))))) [(FunctionDecl (415,8) (Ident "splitline" 314) [(Equation (415,8) (FunLhs (Ident "splitline" 314) [(ListPattern [])]) (SimpleRhs (415,27) (Tuple [(List []),(List [])]) [])),(Equation (416,8) (FunLhs (Ident "splitline" 314) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 317)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 317))))]) (SimpleRhs (416,27) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 317))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\n'))) (Tuple [(List []),(Variable (QualIdent Nothing (Ident "cs" 317)))]) (Let [(PatternDecl (418,36) (TuplePattern [(VariablePattern (Ident "ds" 319)),(VariablePattern (Ident "es" 319))]) (SimpleRhs (418,46) (Apply (Variable (QualIdent Nothing (Ident "splitline" 314))) (Variable (QualIdent Nothing (Ident "cs" 317)))) []))] (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "c" 317))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ds" 319)))),(Variable (QualIdent Nothing (Ident "es" 319)))]))) []))])]))])+,(TypeSig (421,1) [(Ident "unlines" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (422,1) (Ident "unlines" 0) [(Equation (422,1) (FunLhs (Ident "unlines" 0) [(VariablePattern (Ident "ls" 323))]) (SimpleRhs (422,14) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n")))) (Variable (QualIdent Nothing (Ident "ls" 323)))) []))])+,(TypeSig (426,1) [(Ident "words" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (427,1) (Ident "words" 0) [(Equation (427,1) (FunLhs (Ident "words" 0) [(VariablePattern (Ident "s" 325))]) (SimpleRhs (427,14) (Let [(PatternDecl (427,18) (VariablePattern (Ident "s1" 329)) (SimpleRhs (427,23) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "dropWhile" 0))) (Variable (QualIdent Nothing (Ident "isSpace" 326)))) (Variable (QualIdent Nothing (Ident "s" 325)))) []))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "s1" 329))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (String ""))) (List []) (Let [(PatternDecl (429,37) (TuplePattern [(VariablePattern (Ident "w" 331)),(VariablePattern (Ident "s2" 331))]) (SimpleRhs (429,46) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (Variable (QualIdent Nothing (Ident "isSpace" 326)))) (Variable (QualIdent Nothing (Ident "s1" 329)))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "w" 331))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "words" 0))) (Variable (QualIdent Nothing (Ident "s2" 331)))))))) [(FunctionDecl (432,4) (Ident "isSpace" 326) [(Equation (432,4) (FunLhs (Ident "isSpace" 326) [(VariablePattern (Ident "c" 327))]) (SimpleRhs (432,16) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 327))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 327))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\t'))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "c" 327))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\n'))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "c" 327))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\r')))))) []))])]))])+,(TypeSig (435,1) [(Ident "unwords" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (436,1) (Ident "unwords" 0) [(Equation (436,1) (FunLhs (Ident "unwords" 0) [(VariablePattern (Ident "ws" 333))]) (SimpleRhs (436,14) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "ws" 333))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (List [])) (List []) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr1" 0))) (Paren (Lambda [(VariablePattern (Ident "w" 335)),(VariablePattern (Ident "s" 335))] (InfixApply (Variable (QualIdent Nothing (Ident "w" 335))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (Char ' ')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "s" 335)))))))) (Variable (QualIdent Nothing (Ident "ws" 333))))) []))])+,(TypeSig (440,1) [(Ident "reverse" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (441,1) (Ident "reverse" 0) [(Equation (441,1) (FunLhs (Ident "reverse" 0) []) (SimpleRhs (441,14) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldl" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "flip" 0))) (Constructor (QualIdent Nothing (Ident ":" 0)))))) (List [])) []))])+,(TypeSig (444,1) [(Ident "and" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (445,1) (Ident "and" 0) [(Equation (445,1) (FunLhs (Ident "and" 0) []) (SimpleRhs (445,14) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "Prelude") (Ident "&&" 0)))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))) []))])+,(TypeSig (448,1) [(Ident "or" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (449,1) (Ident "or" 0) [(Equation (449,1) (FunLhs (Ident "or" 0) []) (SimpleRhs (449,14) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "Prelude") (Ident "||" 0)))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) []))])+,(TypeSig (452,1) [(Ident "any" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (453,1) (Ident "any" 0) [(Equation (453,1) (FunLhs (Ident "any" 0) [(VariablePattern (Ident "p" 342))]) (SimpleRhs (453,14) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "or" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "p" 342))))) []))])+,(TypeSig (456,1) [(Ident "all" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (457,1) (Ident "all" 0) [(Equation (457,1) (FunLhs (Ident "all" 0) [(VariablePattern (Ident "p" 344))]) (SimpleRhs (457,14) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "and" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "p" 344))))) []))])+,(TypeSig (460,1) [(Ident "elem" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (461,1) (Ident "elem" 0) [(Equation (461,1) (FunLhs (Ident "elem" 0) [(VariablePattern (Ident "x" 346))]) (SimpleRhs (461,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "any" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "x" 346))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))))) []))])+,(TypeSig (464,1) [(Ident "notElem" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (465,1) (Ident "notElem" 0) [(Equation (465,1) (FunLhs (Ident "notElem" 0) [(VariablePattern (Ident "x" 348))]) (SimpleRhs (465,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "x" 348))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))))) []))])+,(TypeSig (468,1) [(Ident "lookup" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (TupleType [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (469,1) (Ident "lookup" 0) [(Equation (469,1) (FunLhs (Ident "lookup" 0) [(VariablePattern (Ident "_" 351)),(ListPattern [])]) (SimpleRhs (469,21) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (470,1) (FunLhs (Ident "lookup" 0) [(VariablePattern (Ident "k" 353)),(ParenPattern (InfixPattern (TuplePattern [(VariablePattern (Ident "x" 353)),(VariablePattern (Ident "y" 353))]) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xys" 353))))]) (GuardedRhs [(CondExpr (471,7) (InfixApply (Variable (QualIdent Nothing (Ident "k" 353))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "x" 353)))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Variable (QualIdent Nothing (Ident "y" 353))))),(CondExpr (472,7) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "lookup" 0))) (Variable (QualIdent Nothing (Ident "k" 353)))) (Variable (QualIdent Nothing (Ident "xys" 353)))))] []))])+,(TypeSig (475,1) [(Ident "enumFrom" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (476,1) (Ident "enumFrom" 0) [(Equation (476,1) (FunLhs (Ident "enumFrom" 0) [(VariablePattern (Ident "n" 355))]) (SimpleRhs (476,26) (InfixApply (Variable (QualIdent Nothing (Ident "n" 355))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "enumFrom" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 355))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 357) 1)))))) []))])+,(TypeSig (479,1) [(Ident "enumFromThen" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FunctionDecl (480,1) (Ident "enumFromThen" 0) [(Equation (480,1) (FunLhs (Ident "enumFromThen" 0) [(VariablePattern (Ident "n1" 358)),(VariablePattern (Ident "n2" 358))]) (SimpleRhs (480,26) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "iterate" 0))) (LeftSection (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n2" 358))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "n1" 358))))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))))) (Variable (QualIdent Nothing (Ident "n1" 358)))) []))])+,(TypeSig (483,1) [(Ident "enumFromTo" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FunctionDecl (484,1) (Ident "enumFromTo" 0) [(Equation (484,1) (FunLhs (Ident "enumFromTo" 0) [(VariablePattern (Ident "n" 360)),(VariablePattern (Ident "m" 360))]) (SimpleRhs (484,26) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 360))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Variable (QualIdent Nothing (Ident "m" 360)))) (List []) (InfixApply (Variable (QualIdent Nothing (Ident "n" 360))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "enumFromTo" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 360))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 362) 1))))) (Variable (QualIdent Nothing (Ident "m" 360)))))) []))])+,(TypeSig (487,1) [(Ident "enumFromThenTo" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))))+,(FunctionDecl (488,1) (Ident "enumFromThenTo" 0) [(Equation (488,1) (FunLhs (Ident "enumFromThenTo" 0) [(VariablePattern (Ident "n1" 363)),(VariablePattern (Ident "n2" 363)),(VariablePattern (Ident "m" 363))]) (SimpleRhs (488,26) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "takeWhile" 0))) (Variable (QualIdent Nothing (Ident "p" 364)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "enumFromThen" 0))) (Variable (QualIdent Nothing (Ident "n1" 363)))) (Variable (QualIdent Nothing (Ident "n2" 363)))))) [(FunctionDecl (489,32) (Ident "p" 364) [(Equation (489,32) (FunLhs (Ident "p" 364) [(VariablePattern (Ident "x" 365))]) (GuardedRhs [(CondExpr (489,36) (InfixApply (Variable (QualIdent Nothing (Ident "n2" 363))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Variable (QualIdent Nothing (Ident "n1" 363)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 365))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "m" 363)))))),(CondExpr (490,36) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 365))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Variable (QualIdent Nothing (Ident "m" 363))))))] []))])]))])+,(TypeSig (494,1) [(Ident "ord" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (495,1) (Ident "ord" 0) [(Equation (495,1) (FunLhs (Ident "ord" 0) [(VariablePattern (Ident "c" 367))]) (SimpleRhs (495,9) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_ord" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "c" 367)))) []))])+,(TypeSig (497,1) [(Ident "prim_ord" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FlatExternalDecl (498,1) [(Ident "prim_ord" 0)])+,(TypeSig (501,1) [(Ident "chr" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])))+,(FunctionDecl (502,1) (Ident "chr" 0) [(Equation (502,1) (FunLhs (Ident "chr" 0) [(VariablePattern (Ident "i" 369))]) (SimpleRhs (502,9) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_chr" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "i" 369)))) []))])+,(TypeSig (504,1) [(Ident "prim_chr" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])))+,(FlatExternalDecl (505,1) [(Ident "prim_chr" 0)])+,(TypeSig (511,1) [(Ident "succ" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])))+,(FunctionDecl (512,1) (Ident "succ" 0) [(Equation (512,1) (FunLhs (Ident "succ" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "bs" 371))]))]) (SimpleRhs (512,15) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Variable (QualIdent Nothing (Ident "bs" 371)))) [])),(Equation (513,1) (FunLhs (Ident "succ" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "bs" 373))]))]) (SimpleRhs (513,15) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "succ" 0))) (Variable (QualIdent Nothing (Ident "bs" 373)))))) [])),(Equation (514,1) (FunLhs (Ident "succ" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (514,12) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))) []))])+,(TypeSig (516,1) [(Ident "+^" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []))))+,(FunctionDecl (517,1) (Ident "+^" 0) [(Equation (517,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 377))]) (Ident "+^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 377))])) (SimpleRhs (517,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 377))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 377)))))) [])),(Equation (518,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 379))]) (Ident "+^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 379))])) (SimpleRhs (518,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 379))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 379)))))) [])),(Equation (519,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 381))]) (Ident "+^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])) (SimpleRhs (519,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Variable (QualIdent Nothing (Ident "x" 381)))) [])),(Equation (520,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 383))]) (Ident "+^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 383))])) (SimpleRhs (520,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 383))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 383)))))) [])),(Equation (521,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 385))]) (Ident "+^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 385))])) (SimpleRhs (521,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "succ" 0))) (Variable (QualIdent Nothing (Ident "x" 385)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 385)))))) [])),(Equation (522,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 387))]) (Ident "+^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])) (SimpleRhs (522,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "succ" 0))) (Variable (QualIdent Nothing (Ident "x" 387)))))) [])),(Equation (523,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []) (Ident "+^" 0) (VariablePattern (Ident "y" 389))) (SimpleRhs (523,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "succ" 0))) (Variable (QualIdent Nothing (Ident "y" 389)))) []))])+,(TypeSig (525,1) [(Ident "cmpNat" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (526,1) (Ident "cmpNat" 0) [(Equation (526,1) (FunLhs (Ident "cmpNat" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (526,20) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0))) [])),(Equation (527,1) (FunLhs (Ident "cmpNat" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 394))]))]) (SimpleRhs (527,20) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (528,1) (FunLhs (Ident "cmpNat" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "_" 397))]))]) (SimpleRhs (528,20) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (529,1) (FunLhs (Ident "cmpNat" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 400))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (529,20) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (530,1) (FunLhs (Ident "cmpNat" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "_" 403))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (530,20) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (531,1) (FunLhs (Ident "cmpNat" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 405))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 405))]))]) (SimpleRhs (531,22) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 405)))) (Variable (QualIdent Nothing (Ident "y" 405)))) [])),(Equation (532,1) (FunLhs (Ident "cmpNat" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 407))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 407))]))]) (SimpleRhs (532,22) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 407)))) (Variable (QualIdent Nothing (Ident "y" 407)))) [])),(Equation (533,1) (FunLhs (Ident "cmpNat" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 409))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 409))]))]) (SimpleRhs (533,22) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatLT" 0))) (Variable (QualIdent Nothing (Ident "x" 409)))) (Variable (QualIdent Nothing (Ident "y" 409)))) [])),(Equation (534,1) (FunLhs (Ident "cmpNat" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 411))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 411))]))]) (SimpleRhs (534,22) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatGT" 0))) (Variable (QualIdent Nothing (Ident "x" 411)))) (Variable (QualIdent Nothing (Ident "y" 411)))) []))])+,(TypeSig (536,1) [(Ident "cmpNatLT" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (537,1) (Ident "cmpNatLT" 0) [(Equation (537,1) (FunLhs (Ident "cmpNatLT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []),(VariablePattern (Ident "_" 414))]) (SimpleRhs (537,22) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (538,1) (FunLhs (Ident "cmpNatLT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 417))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (538,22) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (539,1) (FunLhs (Ident "cmpNatLT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "_" 420))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (539,22) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (540,1) (FunLhs (Ident "cmpNatLT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 422))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 422))]))]) (SimpleRhs (540,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatLT" 0))) (Variable (QualIdent Nothing (Ident "x" 422)))) (Variable (QualIdent Nothing (Ident "y" 422)))) [])),(Equation (541,1) (FunLhs (Ident "cmpNatLT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 424))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 424))]))]) (SimpleRhs (541,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatLT" 0))) (Variable (QualIdent Nothing (Ident "x" 424)))) (Variable (QualIdent Nothing (Ident "y" 424)))) [])),(Equation (542,1) (FunLhs (Ident "cmpNatLT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 426))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 426))]))]) (SimpleRhs (542,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatLT" 0))) (Variable (QualIdent Nothing (Ident "x" 426)))) (Variable (QualIdent Nothing (Ident "y" 426)))) [])),(Equation (543,1) (FunLhs (Ident "cmpNatLT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 428))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 428))]))]) (SimpleRhs (543,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatGT" 0))) (Variable (QualIdent Nothing (Ident "x" 428)))) (Variable (QualIdent Nothing (Ident "y" 428)))) []))])+,(TypeSig (545,1) [(Ident "cmpNatGT" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (546,1) (Ident "cmpNatGT" 0) [(Equation (546,1) (FunLhs (Ident "cmpNatGT" 0) [(VariablePattern (Ident "_" 431)),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (546,22) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (547,1) (FunLhs (Ident "cmpNatGT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 434))]))]) (SimpleRhs (547,22) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (548,1) (FunLhs (Ident "cmpNatGT" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "_" 437))]))]) (SimpleRhs (548,22) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (549,1) (FunLhs (Ident "cmpNatGT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 439))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 439))]))]) (SimpleRhs (549,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatGT" 0))) (Variable (QualIdent Nothing (Ident "x" 439)))) (Variable (QualIdent Nothing (Ident "y" 439)))) [])),(Equation (550,1) (FunLhs (Ident "cmpNatGT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 441))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 441))]))]) (SimpleRhs (550,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatGT" 0))) (Variable (QualIdent Nothing (Ident "x" 441)))) (Variable (QualIdent Nothing (Ident "y" 441)))) [])),(Equation (551,1) (FunLhs (Ident "cmpNatGT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 443))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 443))]))]) (SimpleRhs (551,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatLT" 0))) (Variable (QualIdent Nothing (Ident "x" 443)))) (Variable (QualIdent Nothing (Ident "y" 443)))) [])),(Equation (552,1) (FunLhs (Ident "cmpNatGT" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 445))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 445))]))]) (SimpleRhs (552,24) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNatGT" 0))) (Variable (QualIdent Nothing (Ident "x" 445)))) (Variable (QualIdent Nothing (Ident "y" 445)))) []))])+,(TypeSig (554,1) [(Ident "<^" 0),(Ident ">^" 0),(Ident "<=^" 0),(Ident ">=^" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (556,1) (Ident "<^" 0) [(Equation (556,1) (OpLhs (VariablePattern (Ident "x" 447)) (Ident "<^" 0) (VariablePattern (Ident "y" 447))) (SimpleRhs (556,11) (Apply (Variable (QualIdent (Just "Prelude") (Ident "isLT" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 447)))) (Variable (QualIdent Nothing (Ident "y" 447)))))) []))])+,(FunctionDecl (557,1) (Ident ">^" 0) [(Equation (557,1) (OpLhs (VariablePattern (Ident "x" 449)) (Ident ">^" 0) (VariablePattern (Ident "y" 449))) (SimpleRhs (557,11) (Apply (Variable (QualIdent (Just "Prelude") (Ident "isGT" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 449)))) (Variable (QualIdent Nothing (Ident "y" 449)))))) []))])+,(FunctionDecl (558,1) (Ident "<=^" 0) [(Equation (558,1) (OpLhs (VariablePattern (Ident "x" 451)) (Ident "<=^" 0) (VariablePattern (Ident "y" 451))) (SimpleRhs (558,11) (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "isGT" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 451)))) (Variable (QualIdent Nothing (Ident "y" 451)))))))) []))])+,(FunctionDecl (559,1) (Ident ">=^" 0) [(Equation (559,1) (OpLhs (VariablePattern (Ident "x" 453)) (Ident ">=^" 0) (VariablePattern (Ident "y" 453))) (SimpleRhs (559,11) (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "isLT" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 453)))) (Variable (QualIdent Nothing (Ident "y" 453)))))))) []))])+,(TypeSig (561,1) [(Ident "*^" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []))))+,(FunctionDecl (562,1) (Ident "*^" 0) [(Equation (562,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []) (Ident "*^" 0) (VariablePattern (Ident "y" 455))) (SimpleRhs (562,12) (Variable (QualIdent Nothing (Ident "y" 455))) [])),(Equation (563,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 457))]) (Ident "*^" 0) (VariablePattern (Ident "y" 457))) (SimpleRhs (563,12) (InfixApply (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 457))) (InfixOp (QualIdent (Just "Prelude") (Ident "*^" 0))) (Variable (QualIdent Nothing (Ident "x" 457)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 457)))) [])),(Equation (564,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 459))]) (Ident "*^" 0) (VariablePattern (Ident "y" 459))) (SimpleRhs (564,12) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 459))) (InfixOp (QualIdent (Just "Prelude") (Ident "*^" 0))) (Variable (QualIdent Nothing (Ident "y" 459)))))) []))])+,(TypeSig (566,1) [(Ident "pred" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])))+,(FunctionDecl (567,1) (Ident "pred" 0) [(Equation (567,1) (FunLhs (Ident "pred" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]))]) (SimpleRhs (567,20) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0))) [])),(Equation (568,1) (FunLhs (Ident "pred" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(AsPattern (Ident "x" 463) (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 464))])))]))]) (SimpleRhs (568,20) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "pred" 0))) (Variable (QualIdent Nothing (Ident "x" 463)))))) [])),(Equation (569,1) (FunLhs (Ident "pred" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 466))]))]))]) (SimpleRhs (569,20) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "x" 466)))))) [])),(Equation (570,1) (FunLhs (Ident "pred" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 468))]))]) (SimpleRhs (570,20) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "x" 468)))) []))])+,(TypeSig (578,1) [(Ident "inc" 0),(Ident "dec" 0),(Ident "mult2" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (580,1) (Ident "inc" 0) [(Equation (580,1) (FunLhs (Ident "inc" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (580,12) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))) [])),(Equation (581,1) (FunLhs (Ident "inc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "n" 472))]))]) (SimpleRhs (581,15) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "succ" 0))) (Variable (QualIdent Nothing (Ident "n" 472)))))) [])),(Equation (582,1) (FunLhs (Ident "inc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]))]) (SimpleRhs (582,17) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (583,1) (FunLhs (Ident "inc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "n" 476))]))]))]) (SimpleRhs (583,19) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "pred" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 476)))))))) [])),(Equation (584,1) (FunLhs (Ident "inc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "n" 478))]))]))]) (SimpleRhs (584,19) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 478)))))) []))])+,(FunctionDecl (586,1) (Ident "dec" 0) [(Equation (586,1) (FunLhs (Ident "dec" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (586,12) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))) [])),(Equation (587,1) (FunLhs (Ident "dec" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "n" 482))]))]) (SimpleRhs (587,15) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "succ" 0))) (Variable (QualIdent Nothing (Ident "n" 482)))))) [])),(Equation (588,1) (FunLhs (Ident "dec" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]))]) (SimpleRhs (588,17) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (589,1) (FunLhs (Ident "dec" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "n" 486))]))]))]) (SimpleRhs (589,19) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "pred" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 486)))))))) [])),(Equation (590,1) (FunLhs (Ident "dec" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "n" 488))]))]))]) (SimpleRhs (590,19) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 488)))))) []))])+,(FunctionDecl (592,1) (Ident "mult2" 0) [(Equation (592,1) (FunLhs (Ident "mult2" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "n" 490))]))]) (SimpleRhs (592,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 490)))))) [])),(Equation (593,1) (FunLhs (Ident "mult2" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (593,17) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (594,1) (FunLhs (Ident "mult2" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "n" 494))]))]) (SimpleRhs (594,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 494)))))) []))])+,(TypeSig (596,1) [(Ident "-^" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (597,1) (Ident "-^" 0) [(Equation (597,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) []) (Ident "-^" 0) (VariablePattern (Ident "y" 496))) (SimpleRhs (597,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "inc" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Variable (QualIdent Nothing (Ident "y" 496)))))) [])),(Equation (598,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 498))]) (Ident "-^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])) (SimpleRhs (598,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "pred" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "x" 498)))))))) [])),(Equation (599,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 500))]) (Ident "-^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 500))])) (SimpleRhs (599,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "mult2" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 500))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "y" 500)))))) [])),(Equation (600,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 502))]) (Ident "-^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 502))])) (SimpleRhs (600,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "dec" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "mult2" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 502))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "y" 502)))))))) [])),(Equation (601,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 504))]) (Ident "-^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])) (SimpleRhs (601,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "x" 504)))))) [])),(Equation (602,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 506))]) (Ident "-^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "y" 506))])) (SimpleRhs (602,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "inc" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "mult2" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 506))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "y" 506)))))))) [])),(Equation (603,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 508))]) (Ident "-^" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "y" 508))])) (SimpleRhs (603,14) (Apply (Variable (QualIdent (Just "Prelude") (Ident "mult2" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 508))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "y" 508)))))) []))])+,(TypeSig (605,1) [(Ident "div2" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) [])))+,(FunctionDecl (606,1) (Ident "div2" 0) [(Equation (606,1) (FunLhs (Ident "div2" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "x" 510))]))]) (SimpleRhs (606,14) (Variable (QualIdent Nothing (Ident "x" 510))) [])),(Equation (607,1) (FunLhs (Ident "div2" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "x" 512))]))]) (SimpleRhs (607,14) (Variable (QualIdent Nothing (Ident "x" 512))) []))])+,(TypeSig (609,1) [(Ident "mod2" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (610,1) (Ident "mod2" 0) [(Equation (610,1) (FunLhs (Ident "mod2" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "IHi" 0)) [])]) (SimpleRhs (610,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))) [])),(Equation (611,1) (FunLhs (Ident "mod2" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 517))]))]) (SimpleRhs (611,14) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (612,1) (FunLhs (Ident "mod2" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "_" 520))]))]) (SimpleRhs (612,14) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))) []))])+,(TypeSig (614,1) [(Ident "divmodNat" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Nat" 0)) []) (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))))+,(FunctionDecl (615,1) (Ident "divmodNat" 0) [(Equation (615,1) (FunLhs (Ident "divmodNat" 0) [(VariablePattern (Ident "x" 522)),(VariablePattern (Ident "y" 522))]) (GuardedRhs [(CondExpr (616,3) (InfixApply (Variable (QualIdent Nothing (Ident "y" 522))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))) (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Variable (QualIdent Nothing (Ident "x" 522)))),(Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0)))])),(CondExpr (617,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "cmpNat" 0))) (Variable (QualIdent Nothing (Ident "x" 522)))) (Variable (QualIdent Nothing (Ident "y" 522)))) [(Alt (618,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "EQ" 0)) []) (SimpleRhs (618,11) (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))),(Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0)))]) [])),(Alt (619,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "LT" 0)) []) (SimpleRhs (619,11) (Tuple [(Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))),(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Variable (QualIdent Nothing (Ident "x" 522))))]) [])),(Alt (620,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "GT" 0)) []) (SimpleRhs (620,11) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmodNat" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "div2" 0))) (Variable (QualIdent Nothing (Ident "x" 522)))))) (Variable (QualIdent Nothing (Ident "y" 522)))) [(Alt (621,7) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(VariablePattern (Ident "_" 537))]) (SimpleRhs (621,24) (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "IHi" 0)))),(InfixApply (Variable (QualIdent Nothing (Ident "x" 522))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "y" 522))))]) [])),(Alt (622,7) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "d" 539))]),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (622,24) (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "d" 539)))))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "mod2" 0))) (Variable (QualIdent Nothing (Ident "x" 522))))]) [])),(Alt (623,7) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "d" 541))]),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "m" 541))])]) (SimpleRhs (623,24) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmodNat" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "shift" 523))) (Variable (QualIdent Nothing (Ident "x" 522)))) (Variable (QualIdent Nothing (Ident "m" 541)))))) (Variable (QualIdent Nothing (Ident "y" 522)))) [(Alt (624,9) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(VariablePattern (Ident "m'" 543))]) (SimpleRhs (624,24) (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "d" 541)))))),(Variable (QualIdent Nothing (Ident "m'" 543)))]) [])),(Alt (625,9) (TuplePattern [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "d'" 545))]),(VariablePattern (Ident "m'" 545))]) (SimpleRhs (625,24) (Tuple [(Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (InfixApply (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "d" 541)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "d'" 545)))))),(Variable (QualIdent Nothing (Ident "m'" 545)))]) []))]) []))]) []))]))] [(FunctionDecl (627,5) (Ident "shift" 523) [(Equation (627,5) (FunLhs (Ident "shift" 523) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "O" 0)) [(VariablePattern (Ident "_" 525))])),(VariablePattern (Ident "n" 524))]) (SimpleRhs (627,21) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "O" 0))) (Variable (QualIdent Nothing (Ident "n" 524)))) [])),(Equation (628,5) (FunLhs (Ident "shift" 523) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "I" 0)) [(VariablePattern (Ident "_" 528))])),(VariablePattern (Ident "n" 527))]) (SimpleRhs (628,21) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "I" 0))) (Variable (QualIdent Nothing (Ident "n" 527)))) []))])]))])+,(TypeSig (632,1) [(Ident "+" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (633,1) (Ident "+" 0) [(Equation (633,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 547))]) (Ident "+" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 547))])) (SimpleRhs (633,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 547))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 547)))))) [])),(Equation (634,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 549))]) (Ident "+" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 549))])) (SimpleRhs (634,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 549))) (InfixOp (QualIdent (Just "Prelude") (Ident "+^" 0))) (Variable (QualIdent Nothing (Ident "y" 549)))))) [])),(Equation (635,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 551))]) (Ident "+" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 551))])) (SimpleRhs (635,17) (InfixApply (Variable (QualIdent Nothing (Ident "x" 551))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "y" 551)))) [])),(Equation (636,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 553))]) (Ident "+" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 553))])) (SimpleRhs (636,17) (InfixApply (Variable (QualIdent Nothing (Ident "y" 553))) (InfixOp (QualIdent (Just "Prelude") (Ident "-^" 0))) (Variable (QualIdent Nothing (Ident "x" 553)))) [])),(Equation (637,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []) (Ident "+" 0) (VariablePattern (Ident "x" 555))) (SimpleRhs (637,17) (Variable (QualIdent Nothing (Ident "x" 555))) [])),(Equation (638,1) (OpLhs (AsPattern (Ident "x" 557) (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 558))]))) (Ident "+" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])) (SimpleRhs (638,20) (Variable (QualIdent Nothing (Ident "x" 557))) [])),(Equation (639,1) (OpLhs (AsPattern (Ident "x" 560) (ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 561))]))) (Ident "+" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])) (SimpleRhs (639,20) (Variable (QualIdent Nothing (Ident "x" 560))) []))])+,(TypeSig (642,1) [(Ident "-" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (643,1) (Ident "-" 0) [(Equation (643,1) (OpLhs (VariablePattern (Ident "x" 563)) (Ident "-" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 563))])) (SimpleRhs (643,13) (InfixApply (Variable (QualIdent Nothing (Ident "x" 563))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Variable (QualIdent Nothing (Ident "y" 563))))) [])),(Equation (644,1) (OpLhs (VariablePattern (Ident "x" 565)) (Ident "-" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 565))])) (SimpleRhs (644,13) (InfixApply (Variable (QualIdent Nothing (Ident "x" 565))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Variable (QualIdent Nothing (Ident "y" 565))))) [])),(Equation (645,1) (OpLhs (VariablePattern (Ident "x" 567)) (Ident "-" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])) (SimpleRhs (645,13) (Variable (QualIdent Nothing (Ident "x" 567))) []))])+,(TypeSig (648,1) [(Ident "*" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (649,1) (Ident "*" 0) [(Equation (649,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 569))]) (Ident "*" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 569))])) (SimpleRhs (649,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 569))) (InfixOp (QualIdent (Just "Prelude") (Ident "*^" 0))) (Variable (QualIdent Nothing (Ident "y" 569)))))) [])),(Equation (650,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 571))]) (Ident "*" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 571))])) (SimpleRhs (650,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 571))) (InfixOp (QualIdent (Just "Prelude") (Ident "*^" 0))) (Variable (QualIdent Nothing (Ident "y" 571)))))) [])),(Equation (651,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 573))]) (Ident "*" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 573))])) (SimpleRhs (651,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 573))) (InfixOp (QualIdent (Just "Prelude") (Ident "*^" 0))) (Variable (QualIdent Nothing (Ident "y" 573)))))) [])),(Equation (652,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 575))]) (Ident "*" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 575))])) (SimpleRhs (652,17) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 575))) (InfixOp (QualIdent (Just "Prelude") (Ident "*^" 0))) (Variable (QualIdent Nothing (Ident "y" 575)))))) [])),(Equation (653,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []) (Ident "*" 0) (VariablePattern (Ident "_" 578))) (SimpleRhs (653,17) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (654,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 581))]) (Ident "*" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])) (SimpleRhs (654,17) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (655,1) (OpLhs (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 584))]) (Ident "*" 0) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])) (SimpleRhs (655,17) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) []))])+,(TypeSig (666,1) [(Ident "divmod" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))))+,(FunctionDecl (667,1) (Ident "divmod" 0) [(Equation (667,1) (FunLhs (Ident "divmod" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) []),(VariablePattern (Ident "_" 587))]) (SimpleRhs (667,26) (Tuple [(Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))),(Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0)))]) [])),(Equation (668,1) (FunLhs (Ident "divmod" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "_" 590))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (668,26) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "division by 0"))) [])),(Equation (669,1) (FunLhs (Ident "divmod" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 592))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 592))]))]) (SimpleRhs (669,26) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmodNat" 0))) (Variable (QualIdent Nothing (Ident "x" 592)))) (Variable (QualIdent Nothing (Ident "y" 592)))) [])),(Equation (670,1) (FunLhs (Ident "divmod" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 594))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 594))]))]) (SimpleRhs (670,26) (Let [(PatternDecl (670,30) (TuplePattern [(VariablePattern (Ident "d" 596)),(VariablePattern (Ident "m" 596))]) (SimpleRhs (670,38) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmodNat" 0))) (Variable (QualIdent Nothing (Ident "x" 594)))) (Variable (QualIdent Nothing (Ident "y" 594)))) []))] (Tuple [(Apply (Variable (QualIdent (Just "Prelude") (Ident "negate" 0))) (Variable (QualIdent Nothing (Ident "d" 596)))),(Variable (QualIdent Nothing (Ident "m" 596)))])) [])),(Equation (671,1) (FunLhs (Ident "divmod" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "_" 599))])),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (671,26) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "division by 0"))) [])),(Equation (672,1) (FunLhs (Ident "divmod" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 601))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "y" 601))]))]) (SimpleRhs (672,26) (Let [(PatternDecl (672,30) (TuplePattern [(VariablePattern (Ident "d" 603)),(VariablePattern (Ident "m" 603))]) (SimpleRhs (672,38) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmodNat" 0))) (Variable (QualIdent Nothing (Ident "x" 601)))) (Variable (QualIdent Nothing (Ident "y" 601)))) []))] (Tuple [(Apply (Variable (QualIdent (Just "Prelude") (Ident "negate" 0))) (Variable (QualIdent Nothing (Ident "d" 603)))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "negate" 0))) (Variable (QualIdent Nothing (Ident "m" 603))))])) [])),(Equation (673,1) (FunLhs (Ident "divmod" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 605))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "y" 605))]))]) (SimpleRhs (673,26) (Let [(PatternDecl (673,30) (TuplePattern [(VariablePattern (Ident "d" 607)),(VariablePattern (Ident "m" 607))]) (SimpleRhs (673,38) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmodNat" 0))) (Variable (QualIdent Nothing (Ident "x" 605)))) (Variable (QualIdent Nothing (Ident "y" 605)))) []))] (Tuple [(Variable (QualIdent Nothing (Ident "d" 607))),(Apply (Variable (QualIdent (Just "Prelude") (Ident "negate" 0))) (Variable (QualIdent Nothing (Ident "m" 607))))])) []))])+,(TypeSig (675,1) [(Ident "div" 0),(Ident "mod" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (676,1) (Ident "div" 0) [(Equation (676,1) (OpLhs (VariablePattern (Ident "x" 609)) (Ident "div" 0) (VariablePattern (Ident "y" 609))) (SimpleRhs (676,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmod" 0))) (Variable (QualIdent Nothing (Ident "x" 609)))) (Variable (QualIdent Nothing (Ident "y" 609)))))) []))])+,(FunctionDecl (678,1) (Ident "mod" 0) [(Equation (678,1) (OpLhs (VariablePattern (Ident "x" 611)) (Ident "mod" 0) (VariablePattern (Ident "y" 611))) (SimpleRhs (678,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "divmod" 0))) (Variable (QualIdent Nothing (Ident "x" 611)))) (Variable (QualIdent Nothing (Ident "y" 611)))))) []))])+,(TypeSig (681,1) [(Ident "negate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (682,1) (Ident "negate" 0) [(Equation (682,1) (FunLhs (Ident "negate" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Zero" 0)) [])]) (SimpleRhs (682,18) (Constructor (QualIdent (Just "Prelude") (Ident "Zero" 0))) [])),(Equation (683,1) (FunLhs (Ident "negate" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Pos" 0)) [(VariablePattern (Ident "x" 615))]))]) (SimpleRhs (683,18) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Neg" 0))) (Variable (QualIdent Nothing (Ident "x" 615)))) [])),(Equation (684,1) (FunLhs (Ident "negate" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Neg" 0)) [(VariablePattern (Ident "x" 617))]))]) (SimpleRhs (684,18) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Pos" 0))) (Variable (QualIdent Nothing (Ident "x" 617)))) []))])+,(TypeSig (692,1) [(Ident "success" 0)] (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []))+,(FunctionDecl (693,1) (Ident "success" 0) [(Equation (693,1) (FunLhs (Ident "success" 0) []) (SimpleRhs (693,11) (Constructor (QualIdent (Just "Prelude") (Ident "Success" 0))) []))])+,(TypeSig (699,1) [(Ident "=:=" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []))))+,(FunctionDecl (700,1) (Ident "=:=" 0) [(Equation (700,1) (OpLhs (VariablePattern (Ident "x" 621)) (Ident "=:=" 0) (VariablePattern (Ident "y" 621))) (GuardedRhs [(CondExpr (700,9) (InfixApply (Variable (QualIdent Nothing (Ident "x" 621))) (InfixOp (QualIdent (Just "Prelude") (Ident "===" 0))) (Variable (QualIdent Nothing (Ident "y" 621)))) (Variable (QualIdent (Just "Prelude") (Ident "success" 0))))] []))])+,(TypeSig (702,1) [(Ident "===" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (703,1) [(Ident "===" 0)])+,(TypeSig (709,1) [(Ident "&" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []))))+,(FlatExternalDecl (710,1) [(Ident "&" 0)])+,(TypeSig (715,1) [(Ident "&>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))+,(FunctionDecl (716,1) (Ident "&>" 0) [(Equation (716,1) (OpLhs (VariablePattern (Ident "c" 623)) (Ident "&>" 0) (VariablePattern (Ident "x" 623))) (GuardedRhs [(CondExpr (716,8) (Variable (QualIdent Nothing (Ident "c" 623))) (Variable (QualIdent Nothing (Ident "x" 623))))] []))])+,(TypeSig (725,1) [(Ident "maybe" 0)] (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "b" 0))))))+,(FunctionDecl (726,1) (Ident "maybe" 0) [(Equation (726,1) (FunLhs (Ident "maybe" 0) [(VariablePattern (Ident "n" 625)),(VariablePattern (Ident "_" 626)),(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) [])]) (SimpleRhs (726,22) (Variable (QualIdent Nothing (Ident "n" 625))) [])),(Equation (727,1) (FunLhs (Ident "maybe" 0) [(VariablePattern (Ident "_" 629)),(VariablePattern (Ident "f" 628)),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(VariablePattern (Ident "x" 628))]))]) (SimpleRhs (727,22) (Apply (Variable (QualIdent Nothing (Ident "f" 628))) (Variable (QualIdent Nothing (Ident "x" 628)))) []))])+,(TypeSig (734,1) [(Ident "either" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "c" 0))) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "c" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Either" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (VariableType (Ident "c" 0))))))+,(FunctionDecl (735,1) (Ident "either" 0) [(Equation (735,1) (FunLhs (Ident "either" 0) [(VariablePattern (Ident "f" 631)),(VariablePattern (Ident "_" 632)),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Left" 0)) [(VariablePattern (Ident "x" 631))]))]) (SimpleRhs (735,24) (Apply (Variable (QualIdent Nothing (Ident "f" 631))) (Variable (QualIdent Nothing (Ident "x" 631)))) [])),(Equation (736,1) (FunLhs (Ident "either" 0) [(VariablePattern (Ident "_" 635)),(VariablePattern (Ident "g" 634)),(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Right" 0)) [(VariablePattern (Ident "x" 634))]))]) (SimpleRhs (736,24) (Apply (Variable (QualIdent Nothing (Ident "g" 634))) (Variable (QualIdent Nothing (Ident "x" 634)))) []))])+,(TypeSig (748,1) [(Ident ">>=" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))]))))+,(FlatExternalDecl (749,1) [(Ident ">>=" 0)])+,(TypeSig (752,1) [(Ident "return" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))+,(FlatExternalDecl (753,1) [(Ident "return" 0)])+,(TypeSig (759,1) [(Ident ">>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "_" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (760,1) (Ident ">>" 0) [(Equation (760,1) (OpLhs (VariablePattern (Ident "a" 637)) (Ident ">>" 0) (VariablePattern (Ident "b" 637))) (SimpleRhs (760,21) (InfixApply (Variable (QualIdent Nothing (Ident "a" 637))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Variable (QualIdent Nothing (Ident "b" 637))))) []))])+,(TypeSig (763,1) [(Ident "done" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))+,(FunctionDecl (764,1) (Ident "done" 0) [(Equation (764,1) (FunLhs (Ident "done" 0) []) (SimpleRhs (764,21) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Tuple [])) []))])+,(TypeSig (767,1) [(Ident "putChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (768,1) (Ident "putChar" 0) [(Equation (768,1) (FunLhs (Ident "putChar" 0) [(VariablePattern (Ident "c" 641))]) (SimpleRhs (768,13) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_putChar" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "c" 641)))) []))])+,(TypeSig (770,1) [(Ident "prim_putChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (771,1) [(Ident "prim_putChar" 0)])+,(TypeSig (774,1) [(Ident "getChar" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Char" 0)) [])]))+,(FlatExternalDecl (775,1) [(Ident "getChar" 0)])+,(TypeSig (778,1) [(Ident "readFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (779,1) (Ident "readFile" 0) [(Equation (779,1) (FunLhs (Ident "readFile" 0) [(VariablePattern (Ident "s" 643))]) (SimpleRhs (779,14) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_readFile" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 643)))) []))])+,(TypeSig (781,1) [(Ident "prim_readFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FlatExternalDecl (782,1) [(Ident "prim_readFile" 0)])+,(TypeSig (787,1) [(Ident "writeFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (788,1) (Ident "writeFile" 0) [(Equation (788,1) (FunLhs (Ident "writeFile" 0) [(VariablePattern (Ident "fn" 645)),(VariablePattern (Ident "s" 645))]) (SimpleRhs (788,18) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_writeFile" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "fn" 645))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 645)))) []))])+,(TypeSig (790,1) [(Ident "prim_writeFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (791,1) [(Ident "prim_writeFile" 0)])+,(TypeSig (797,1) [(Ident "appendFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (798,1) (Ident "appendFile" 0) [(Equation (798,1) (FunLhs (Ident "appendFile" 0) [(VariablePattern (Ident "fn" 647)),(VariablePattern (Ident "s" 647))]) (SimpleRhs (798,19) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_appendFile" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "fn" 647))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 647)))) []))])+,(TypeSig (800,1) [(Ident "prim_appendFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (801,1) [(Ident "prim_appendFile" 0)])+,(TypeSig (807,1) [(Ident "catchFail" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]))))+,(FlatExternalDecl (808,1) [(Ident "catchFail" 0)])+,(TypeSig (811,1) [(Ident "putStr" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (812,1) (Ident "putStr" 0) [(Equation (812,1) (FunLhs (Ident "putStr" 0) [(ListPattern [])]) (SimpleRhs (812,21) (Variable (QualIdent (Just "Prelude") (Ident "done" 0))) [])),(Equation (813,1) (FunLhs (Ident "putStr" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 651)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 651))))]) (SimpleRhs (813,21) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "putChar" 0))) (Variable (QualIdent Nothing (Ident "c" 651)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (Variable (QualIdent Nothing (Ident "cs" 651))))) []))])+,(TypeSig (816,1) [(Ident "putStrLn" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (817,1) (Ident "putStrLn" 0) [(Equation (817,1) (FunLhs (Ident "putStrLn" 0) [(VariablePattern (Ident "cs" 653))]) (SimpleRhs (817,21) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (Variable (QualIdent Nothing (Ident "cs" 653)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "putChar" 0))) (Literal (Char '\n')))) []))])+,(TypeSig (820,1) [(Ident "getLine" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))+,(FunctionDecl (821,1) (Ident "getLine" 0) [(Equation (821,1) (FunLhs (Ident "getLine" 0) []) (SimpleRhs (821,21) (Do [(StmtBind (VariablePattern (Ident "c" 657)) (Variable (QualIdent (Just "Prelude") (Ident "getChar" 0))))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 657))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '\n'))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (List [])) (Do [(StmtBind (VariablePattern (Ident "cs" 658)) (Variable (QualIdent (Just "Prelude") (Ident "getLine" 0))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "c" 657))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "cs" 658))))))))) []))])+,(TypeSig (827,1) [(Ident "show" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (828,1) (Ident "show" 0) [(Equation (828,1) (FunLhs (Ident "show" 0) [(VariablePattern (Ident "s" 659))]) (SimpleRhs (828,10) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "prim_show" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 659)))) []))])+,(TypeSig (830,1) [(Ident "prim_show" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (831,1) [(Ident "prim_show" 0)])+,(TypeSig (834,1) [(Ident "print" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (835,1) (Ident "print" 0) [(Equation (835,1) (FunLhs (Ident "print" 0) [(VariablePattern (Ident "t" 661))]) (SimpleRhs (835,11) (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "t" 661)))))) []))])+,(TypeSig (839,1) [(Ident "doSolve" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (840,1) (Ident "doSolve" 0) [(Equation (840,1) (FunLhs (Ident "doSolve" 0) [(VariablePattern (Ident "constraint" 663))]) (GuardedRhs [(CondExpr (840,20) (Variable (QualIdent Nothing (Ident "constraint" 663))) (Variable (QualIdent (Just "Prelude") (Ident "done" 0))))] []))])+,(TypeSig (846,1) [(Ident "sequenceIO" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (VariableType (Ident "a" 0)))])))+,(FunctionDecl (847,1) (Ident "sequenceIO" 0) [(Equation (847,1) (FunLhs (Ident "sequenceIO" 0) [(ListPattern [])]) (SimpleRhs (847,21) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (List [])) [])),(Equation (848,1) (FunLhs (Ident "sequenceIO" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 667)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 667))))]) (SimpleRhs (848,21) (Do [(StmtBind (VariablePattern (Ident "x" 669)) (Variable (QualIdent Nothing (Ident "c" 667)))),(StmtBind (VariablePattern (Ident "xs" 670)) (Apply (Variable (QualIdent (Just "Prelude") (Ident "sequenceIO" 0))) (Variable (QualIdent Nothing (Ident "cs" 667)))))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 669))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 670))))))) []))])+,(TypeSig (853,1) [(Ident "sequenceIO_" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "_" 0))])) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (854,1) (Ident "sequenceIO_" 0) [(Equation (854,1) (FunLhs (Ident "sequenceIO_" 0) []) (SimpleRhs (854,23) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "Prelude") (Ident ">>" 0)))) (Variable (QualIdent (Just "Prelude") (Ident "done" 0)))) []))])+,(TypeSig (858,1) [(Ident "mapIO" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (VariableType (Ident "b" 0)))]))))+,(FunctionDecl (859,1) (Ident "mapIO" 0) [(Equation (859,1) (FunLhs (Ident "mapIO" 0) [(VariablePattern (Ident "f" 673))]) (SimpleRhs (859,22) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "sequenceIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 673))))) []))])+,(TypeSig (863,1) [(Ident "mapIO_" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "_" 0))])) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (864,1) (Ident "mapIO_" 0) [(Equation (864,1) (FunLhs (Ident "mapIO_" 0) [(VariablePattern (Ident "f" 675))]) (SimpleRhs (864,22) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "sequenceIO_" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 675))))) []))])+,(TypeSig (875,1) [(Ident "?" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))+,(FunctionDecl (876,1) (Ident "?" 0) [(Equation (876,1) (OpLhs (VariablePattern (Ident "x" 677)) (Ident "?" 0) (VariablePattern (Ident "_" 678))) (SimpleRhs (876,9) (Variable (QualIdent Nothing (Ident "x" 677))) [])),(Equation (877,1) (OpLhs (VariablePattern (Ident "_" 681)) (Ident "?" 0) (VariablePattern (Ident "y" 680))) (SimpleRhs (877,9) (Variable (QualIdent Nothing (Ident "y" 680))) []))])+,(TypeSig (902,1) [(Ident "getSearchTree" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))])])))+,(FlatExternalDecl (903,1) [(Ident "getSearchTree" 0)])+,(TypeSig (938,1) [(Ident "allValuesD" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (939,1) (Ident "allValuesD" 0) [(Equation (939,1) (FunLhs (Ident "allValuesD" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Value" 0)) [(VariablePattern (Ident "x" 683))]))]) (SimpleRhs (939,24) (List [(Variable (QualIdent Nothing (Ident "x" 683)))]) [])),(Equation (940,1) (FunLhs (Ident "allValuesD" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Fail" 0)) [])]) (SimpleRhs (940,24) (List []) [])),(Equation (941,1) (FunLhs (Ident "allValuesD" 0) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Suspend" 0)) [])]) (SimpleRhs (941,24) (List []) [])),(Equation (942,1) (FunLhs (Ident "allValuesD" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Choice" 0)) [(VariablePattern (Ident "xs" 689))]))]) (SimpleRhs (942,28) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Variable (QualIdent (Just "Prelude") (Ident "allValuesD" 0)))) (Variable (QualIdent Nothing (Ident "xs" 689)))) []))])+,(TypeSig (945,1) [(Ident "allValuesB" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SearchTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (946,1) (Ident "allValuesB" 0) [(Equation (946,1) (FunLhs (Ident "allValuesB" 0) [(VariablePattern (Ident "st" 691))]) (SimpleRhs (946,17) (Apply (Variable (QualIdent Nothing (Ident "unfoldOrs" 692))) (List [(Variable (QualIdent Nothing (Ident "st" 691)))])) [(FunctionDecl (948,5) (Ident "partition" 692) [(Equation (948,5) (FunLhs (Ident "partition" 692) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Value" 0)) [(VariablePattern (Ident "x" 693))])),(VariablePattern (Ident "y" 693))]) (SimpleRhs (948,29) (Let [(PatternDecl (948,33) (TuplePattern [(VariablePattern (Ident "vs" 695)),(VariablePattern (Ident "ors" 695))]) (SimpleRhs (948,44) (Variable (QualIdent Nothing (Ident "y" 693))) []))] (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "x" 693))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "vs" 695)))),(Variable (QualIdent Nothing (Ident "ors" 695)))])) [])),(Equation (949,5) (FunLhs (Ident "partition" 692) [(ParenPattern (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Choice" 0)) [(VariablePattern (Ident "xs" 697))])),(VariablePattern (Ident "y" 697))]) (SimpleRhs (949,33) (Let [(PatternDecl (949,37) (TuplePattern [(VariablePattern (Ident "vs" 699)),(VariablePattern (Ident "ors" 699))]) (SimpleRhs (949,48) (Variable (QualIdent Nothing (Ident "y" 697))) []))] (Tuple [(Variable (QualIdent Nothing (Ident "vs" 699))),(InfixApply (Variable (QualIdent Nothing (Ident "xs" 697))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "ors" 699))))])) [])),(Equation (950,5) (FunLhs (Ident "partition" 692) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Fail" 0)) []),(VariablePattern (Ident "y" 701))]) (SimpleRhs (950,29) (Variable (QualIdent Nothing (Ident "y" 701))) [])),(Equation (951,5) (FunLhs (Ident "partition" 692) [(ConstructorPattern (QualIdent (Just "Prelude") (Ident "Suspend" 0)) []),(VariablePattern (Ident "y" 703))]) (SimpleRhs (951,29) (Variable (QualIdent Nothing (Ident "y" 703))) []))]),(FunctionDecl (953,5) (Ident "unfoldOrs" 692) [(Equation (953,5) (FunLhs (Ident "unfoldOrs" 692) [(ListPattern [])]) (SimpleRhs (953,20) (List []) [])),(Equation (954,5) (FunLhs (Ident "unfoldOrs" 692) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 707)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 707))))]) (SimpleRhs (954,24) (Let [(PatternDecl (954,28) (TuplePattern [(VariablePattern (Ident "vals" 709)),(VariablePattern (Ident "ors" 709))]) (SimpleRhs (954,41) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent Nothing (Ident "partition" 692)))) (Tuple [(List []),(List [])])) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 707))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 707)))))) []))] (InfixApply (Variable (QualIdent Nothing (Ident "vals" 709))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent Nothing (Ident "unfoldOrs" 692))) (Variable (QualIdent Nothing (Ident "ors" 709)))))) []))])]))])+,(TypeSig (961,1) [(Ident "inject" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) [])) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) [])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) [])))))+,(FunctionDecl (962,1) (Ident "inject" 0) [(Equation (962,1) (FunLhs (Ident "inject" 0) [(VariablePattern (Ident "g" 711)),(VariablePattern (Ident "p" 711))]) (SimpleRhs (962,14) (Lambda [(VariablePattern (Ident "x" 713))] (InfixApply (Apply (Variable (QualIdent Nothing (Ident "p" 711))) (Variable (QualIdent Nothing (Ident "x" 713)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&" 0))) (Apply (Variable (QualIdent Nothing (Ident "g" 711))) (Variable (QualIdent Nothing (Ident "x" 713)))))) []))])+,(TypeSig (966,1) [(Ident "PEVAL" 0)] (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))+,(FunctionDecl (967,1) (Ident "PEVAL" 0) [(Equation (967,1) (FunLhs (Ident "PEVAL" 0) [(VariablePattern (Ident "x" 714))]) (SimpleRhs (967,11) (Variable (QualIdent Nothing (Ident "x" 714))) []))])+,(TypeSig (971,1) [(Ident "apply" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0)))))+,(FlatExternalDecl (972,1) [(Ident "apply" 0)])+,(TypeSig (977,1) [(Ident "cond" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))+,(FlatExternalDecl (978,1) [(Ident "cond" 0)])+,(TypeSig (980,1) [(Ident "unknown" 0)] (VariableType (Ident "a" 0)))+,(FunctionDecl (981,1) (Ident "unknown" 0) [(Equation (981,1) (FunLhs (Ident "unknown" 0) []) (SimpleRhs (981,11) (Let [(ExtraVariables (981,15) [(Ident "x" 718)])] (Variable (QualIdent Nothing (Ident "x" 718)))) []))])+,(TypeSig (987,1) [(Ident "=:<=" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []))))+,(FlatExternalDecl (988,1) [(Ident "=:<=" 0)])+]
+ src/lib/Curry/Module/.curry/Prelude.efc view
@@ -0,0 +1,1 @@+Prog "Prelude" [] [Type ((Nothing,Nothing,"Prelude","()")) Public [] [Cons ((Nothing,Nothing,"Prelude","()")) 0 Public []],Type ((Nothing,Nothing,"Prelude","[]")) Public [0] [Cons ((Nothing,Nothing,"Prelude","[]")) 0 Public [],Cons ((Nothing,Nothing,"Prelude",":")) 2 Public [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]],Type ((Nothing,Nothing,"Prelude","(,)")) Public [0,1] [Cons ((Nothing,Nothing,"Prelude","(,)")) 2 Public [TVar 0,TVar 1]],Type ((Nothing,Nothing,"Prelude","(,,)")) Public [0,1,2] [Cons ((Nothing,Nothing,"Prelude","(,,)")) 3 Public [TVar 0,TVar 1,TVar 2]],Type ((Nothing,Nothing,"Prelude","(,,,)")) Public [0,1,2,3] [Cons ((Nothing,Nothing,"Prelude","(,,,)")) 4 Public [TVar 0,TVar 1,TVar 2,TVar 3]],Type ((Nothing,Nothing,"Prelude","(,,,,)")) Public [0,1,2,3,4] [Cons ((Nothing,Nothing,"Prelude","(,,,,)")) 5 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4]],Type ((Nothing,Nothing,"Prelude","(,,,,,)")) Public [0,1,2,3,4,5] [Cons ((Nothing,Nothing,"Prelude","(,,,,,)")) 6 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5]],Type ((Nothing,Nothing,"Prelude","(,,,,,,)")) Public [0,1,2,3,4,5,6] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,)")) 7 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,)")) Public [0,1,2,3,4,5,6,7] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,)")) 8 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,)")) 9 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8,9] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,,)")) 10 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8,9,10] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,,,)")) 11 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8,9,10,11] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,)")) 12 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8,9,10,11,12] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,,)")) 13 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8,9,10,11,12,13] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,,,)")) 14 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12,TVar 13]],Type ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,,,,)")) Public [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14] [Cons ((Nothing,Nothing,"Prelude","(,,,,,,,,,,,,,,)")) 15 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12,TVar 13,TVar 14]],TypeSyn ((Nothing,Nothing,"Prelude","String")) Public [] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]),Type ((Nothing,Nothing,"Prelude","Float")) Public [] [],Type ((Nothing,Nothing,"Prelude","Char")) Public [] [],Type ((Nothing,Nothing,"Prelude","Bool")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) 0 Public []],Type ((Nothing,Nothing,"Prelude","Ordering")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) 0 Public [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) 0 Public []],Type ((Nothing,Nothing,"Prelude","Nat")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) 0 Public [],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) 1 Public [TCons ((Nothing,Nothing,"Prelude","Nat")) []],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) 1 Public [TCons ((Nothing,Nothing,"Prelude","Nat")) []]],Type ((Nothing,Nothing,"Prelude","Int")) Public [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) 1 Public [TCons ((Nothing,Nothing,"Prelude","Nat")) []],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) 0 Public [],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) 1 Public [TCons ((Nothing,Nothing,"Prelude","Nat")) []]],Type ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Success") []),"Prelude","Success")) Public [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Success") []),"Prelude","Success")) 0 Public []],Type ((Nothing,Nothing,"Prelude","Maybe")) Public [0] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) 0 Public [],Cons ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) 1 Public [TVar 0]],Type ((Nothing,Nothing,"Prelude","Either")) Public [0,1] [Cons ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 1])),"Prelude","Left")) 1 Public [TVar 0],Cons ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 1])),"Prelude","Right")) 1 Public [TVar 1]],Type ((Nothing,Nothing,"Prelude","IO")) Public [0] [],Type ((Nothing,Nothing,"Prelude","SearchTree")) Public [0] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Fail")) 0 Public [],Cons ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Value")) 1 Public [TVar 0],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Choice")) 1 Public [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Suspend")) 0 Public []]] [Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 0)) (FuncType (TVar 2) (TVar 1)))),"Prelude",".")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 0)) (FuncType (TVar 2) (TVar 1)))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1),(Just (FuncType (TVar 2) (TVar 0)),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 0)) (FuncType (TVar 2) (TVar 1)))),"Prelude",".._#lambda2")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1)),Var ((Just (FuncType (TVar 2) (TVar 0)),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 9) (TVar 11)) (FuncType (FuncType (TVar 7) (TVar 9)) (FuncType (TVar 7) (TVar 11)))),"Prelude",".._#lambda2")) 3 Private (FuncType (FuncType (TVar 9) (TVar 11)) (FuncType (FuncType (TVar 7) (TVar 9)) (FuncType (TVar 7) (TVar 11)))) (Rule [(Just (FuncType (TVar 9) (TVar 11)),1),(Just (FuncType (TVar 7) (TVar 9)),2),(Just (TVar 7),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 9) (TVar 11)) (FuncType (TVar 9) (TVar 11))),"Prelude","apply")) [Var ((Just (FuncType (TVar 9) (TVar 11)),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 7) (TVar 9)) (FuncType (TVar 7) (TVar 9))),"Prelude","apply")) [Var ((Just (FuncType (TVar 7) (TVar 9)),2)),Var ((Just (TVar 7),3))]])),Func ((Nothing,Just (FuncType (TVar 0) (TVar 0)),"Prelude","id")) 1 Public (FuncType (TVar 0) (TVar 0)) (Rule [(Just (TVar 0),1)] (Var ((Just (TVar 0),1)))),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))),"Prelude","const")) 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2)] (Var ((Just (TVar 0),1)))),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 2)) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","curry")) 3 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (TVar 2)) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 2)),1),(Just (TVar 0),2),(Just (TVar 1),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 2)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 2))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 2)),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),2)),Var ((Just (TVar 1),3))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 2))),"Prelude","uncurry")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (TVar 2))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 0),3),(Just (TVar 1),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 1),4))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 2)))),"Prelude","flip")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 2)))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (TVar 1),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 1),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))),"Prelude","until")) 3 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (FuncType (TVar 0) (TVar 0)),2),(Just (TVar 0),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))),"Prelude","until")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (FuncType (TVar 0) (TVar 0)),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 0)),2)),Var ((Just (TVar 0),3))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1)),Var ((Just (TVar 0),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$!")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$!"),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$!!")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$!!"),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$#")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$#"),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$##")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$##"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","ensureSpine")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","ensureSpine.ensureList.21")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","ensureSpine.ensureList.21")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","ensureSpine")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))),"Prelude","seq")) 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$!")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 0) (TVar 1))),"Prelude","const")) [Var ((Just (TVar 1),2))],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","prim_error")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","prim_error")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0)) (External "Prelude.prim_error"),Func ((Nothing,Just (TVar 0),"Prelude","failed")) 0 Public (TVar 0) (External "Prelude.failed"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) [])])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) 0 Public (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (Rule [] (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),"Prelude","if_then_else")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (TVar 0),2),(Just (TVar 0),3)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TVar 0),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isLT")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Ordering")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isGT")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Ordering")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isEQ")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Ordering")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","max")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","min")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","compare")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Prelude.=="),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 0),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 0)),"Prelude","fst")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 4) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 0),2),(Just (TVar 4),3)]) (Var ((Just (TVar 0),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 1)),"Prelude","snd")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]) (TVar 1)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 3) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 3),2),(Just (TVar 1),3)]) (Var ((Just (TVar 1),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"Prelude","head")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Var ((Just (TVar 0),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","tail")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Lit (Intc  1),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","!!")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","!!")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  1)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TVar 0),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","map")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1)),Var ((Just (TVar 0),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)))),"Prelude","foldl")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))),1),(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []) (Var ((Just (TVar 0),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude",":")) [(Just (TVar 1),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)))),"Prelude","foldl")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TVar 1) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))),1)),Var ((Just (TVar 0),2))],Var ((Just (TVar 1),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),5))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0))),"Prelude","foldl1")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)))),"Prelude","foldl")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 1)))),"Prelude","foldr")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 1)))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))),1),(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TVar 1),2))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))),1)),Var ((Just (TVar 0),4))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 1)))),"Prelude","foldr")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))),1)),Var ((Just (TVar 1),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0))),"Prelude","foldr1")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TVar 0),3))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Var ((Just (TVar 0),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0))),"Prelude","foldr1")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","filter")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","filter")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","filter")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"Prelude","zip")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude",":")) [(Just (TVar 1),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),3)),Var ((Just (TVar 1),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"Prelude","zip")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),6))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]])))),"Prelude","zip3")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 0,TVar 1,TVar 2]])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude",":")) [(Just (TVar 1),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Prelude",":")) [(Just (TVar 2),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2])))),"Prelude","(,,)")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 1),6)),Var ((Just (TVar 2),8))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]])))),"Prelude","zip3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),9))]])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])))),"Prelude","zipWith")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude",":")) [(Just (TVar 1),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TVar 1) (TVar 2))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TVar 0),4))],Var ((Just (TVar 1),6))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2])))),"Prelude","zipWith")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),7))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]))))),"Prelude","zipWith3")) 4 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 3]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude",":")) [(Just (TVar 1),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),8)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 2) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Prelude",":")) [(Just (TVar 2),9),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),10)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (TVar 3)) (FuncType (TVar 2) (TVar 3))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))) (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3))))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))),1)),Var ((Just (TVar 0),5))],Var ((Just (TVar 1),7))],Var ((Just (TVar 2),9))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 3]))))),"Prelude","zipWith3")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]),10))]])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])),"Prelude","unzip")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 489) (FuncType (TVar 490) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 489),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 490),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 476) (FuncType (TVar 477) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 476),4),(Just (TVar 477),5)]) (Let [((Just (TVar 487),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 492,TVar 493]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 492],TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]])),"Prelude","unzip")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494])),"Prelude","unzip._#selFP3#xs")) [Var ((Just (TVar 487),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 496],TCons (Nothing,Nothing,"Prelude","[]") [TVar 497]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 497])),"Prelude","unzip._#selFP4#ys")) [Var ((Just (TVar 487),6))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 476) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]))),"Prelude",":")) [Var ((Just (TVar 476),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]),7))],Comb ConsCall ((Nothing,Just (FuncType (TVar 477) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]))),"Prelude",":")) [Var ((Just (TVar 477),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]),8))]]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476])),"Prelude","unzip._#selFP3#xs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 476],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 477]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 476])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]) (FuncType (TVar 480) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]),2),(Just (TVar 480),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 476]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477])),"Prelude","unzip._#selFP4#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 476],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 477]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 477])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 479) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 476],TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]]))),"Prelude","(,)")) [(Just (TVar 479),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 477]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]])),"Prelude","unzip3")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 0,TVar 1,TVar 2]]) (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 509) (FuncType (TVar 510) (FuncType (TVar 511) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]])))),"Prelude","(,,)")) [Comb ConsCall ((Nothing,Just (TVar 509),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 510),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 511),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 493) (FuncType (TVar 494) (FuncType (TVar 495) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2])))),"Prelude","(,,)")) [(Just (TVar 493),4),(Just (TVar 494),5),(Just (TVar 495),6)]) (Let [((Just (TVar 507),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 513,TVar 514,TVar 515]]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 513],TCons (Nothing,Nothing,"Prelude","[]") [TVar 514],TCons (Nothing,Nothing,"Prelude","[]") [TVar 515]])),"Prelude","unzip3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 516],TCons (Nothing,Nothing,"Prelude","[]") [TVar 517],TCons (Nothing,Nothing,"Prelude","[]") [TVar 518]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 516])),"Prelude","unzip3._#selFP6#xs")) [Var ((Just (TVar 507),7))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 519],TCons (Nothing,Nothing,"Prelude","[]") [TVar 520],TCons (Nothing,Nothing,"Prelude","[]") [TVar 521]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 520])),"Prelude","unzip3._#selFP7#ys")) [Var ((Just (TVar 507),7))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 522],TCons (Nothing,Nothing,"Prelude","[]") [TVar 523],TCons (Nothing,Nothing,"Prelude","[]") [TVar 524]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 524])),"Prelude","unzip3._#selFP8#zs")) [Var ((Just (TVar 507),7))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]])))),"Prelude","(,,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 493) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]))),"Prelude",":")) [Var ((Just (TVar 493),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]),8))],Comb ConsCall ((Nothing,Just (FuncType (TVar 494) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]))),"Prelude",":")) [Var ((Just (TVar 494),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]),9))],Comb ConsCall ((Nothing,Just (FuncType (TVar 495) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]))),"Prelude",":")) [Var ((Just (TVar 495),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]),10))]])))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493])),"Prelude","unzip3._#selFP6#xs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 493],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 494],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 495]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 493])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]) (FuncType (TVar 498) (FuncType (TVar 499) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]])))),"Prelude","(,,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]),2),(Just (TVar 498),3),(Just (TVar 499),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 493]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494])),"Prelude","unzip3._#selFP7#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 493],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 494],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 495]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 494])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 497) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]) (FuncType (TVar 499) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]])))),"Prelude","(,,)")) [(Just (TVar 497),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]),3),(Just (TVar 499),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 494]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495])),"Prelude","unzip3._#selFP8#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 493],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 494],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 495]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 495])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 497) (FuncType (TVar 498) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]) (TCons (Nothing,Nothing,"Prelude","(,,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 493],TCons (Nothing,Nothing,"Prelude","[]") [TVar 494],TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]])))),"Prelude","(,,)")) [(Just (TVar 497),2),(Just (TVar 498),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]),4)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 495]),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","concat")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),1))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","concatMap")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),"Prelude","concat")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","iterate")) 2 Public (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (TVar 0)),1),(Just (TVar 0),2)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","iterate")) [Var ((Just (FuncType (TVar 0) (TVar 0)),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 0)),1)),Var ((Just (TVar 0),2))]]])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","repeat")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TVar 0),1)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","repeat")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","replicate")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","take")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","repeat")) [Var ((Just (TVar 0),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","take")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","take")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))],Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","drop")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","drop.dropp.272")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","drop.dropp.272")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","drop")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","splitAt")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 3) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 3),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","splitAt.splitAtp.282")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","splitAt.splitAtp.282")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 585) (FuncType (TVar 586) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 585),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 586),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Let [((Just (TVar 583),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 588]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 588],TCons (Nothing,Nothing,"Prelude","[]") [TVar 588]]))),"Prelude","splitAt")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 589],TCons (Nothing,Nothing,"Prelude","[]") [TVar 589]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 589])),"Prelude","splitAt.splitAtp.282._#selFP10#ys")) [Var ((Just (TVar 583),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 590],TCons (Nothing,Nothing,"Prelude","[]") [TVar 590]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 590])),"Prelude","splitAt.splitAtp.282._#selFP11#zs")) [Var ((Just (TVar 583),5))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576])),"Prelude","splitAt.splitAtp.282._#selFP10#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 576],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 576]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 576])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]) (FuncType (TVar 579) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]),2),(Just (TVar 579),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576])),"Prelude","splitAt.splitAtp.282._#selFP11#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 576],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 576]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 576])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 578) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 576],TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]]))),"Prelude","(,)")) [(Just (TVar 578),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 576]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","takeWhile")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","takeWhile")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) [])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","dropWhile")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","dropWhile")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","span")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 638) (FuncType (TVar 639) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 638),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 639),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TVar 0),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 634),5),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 643) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 643]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 643],TCons (Nothing,Nothing,"Prelude","[]") [TVar 643]]))),"Prelude","span")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 644],TCons (Nothing,Nothing,"Prelude","[]") [TVar 644]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 644])),"Prelude","span._#selFP13#ys")) [Var ((Just (TVar 634),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 645],TCons (Nothing,Nothing,"Prelude","[]") [TVar 645]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 645])),"Prelude","span._#selFP14#zs")) [Var ((Just (TVar 634),5))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))])))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 648) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 648),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]),"Prelude","failed")) [])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627])),"Prelude","span._#selFP13#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 627],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 627]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 627])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]) (FuncType (TVar 630) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]),2),(Just (TVar 630),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627])),"Prelude","span._#selFP14#zs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 627],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 627]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 627])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 629) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 627],TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]]))),"Prelude","(,)")) [(Just (TVar 629),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 627]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","break")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","span")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [],Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Let [((Just (TVar 5),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines.splitline.314")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 7) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 7]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines._#selFP19#l")) [Var ((Just (TVar 5),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines._#selFP20#xs_l")) [Var ((Just (TVar 5),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines.splitline.314")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 11) (FuncType (TVar 12) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 11),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 12),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Lit (Charc  '\n')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 15) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 15),"Prelude","[]")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 9),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines.splitline.314")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines.splitline.314._#selFP16#ds")) [Var ((Just (TVar 9),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines.splitline.314._#selFP17#es")) [Var ((Just (TVar 9),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines.splitline.314._#selFP16#ds")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines.splitline.314._#selFP17#es")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines._#selFP19#l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","lines._#selFP20#xs_l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","words")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 5]))),"Prelude","dropWhile")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","words.isSpace.326")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 4),3),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 10) (TVar 11)) (FuncType (TVar 10) (TVar 11))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 9]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 9],TCons (Nothing,Nothing,"Prelude","[]") [TVar 9]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","words.isSpace.326")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","words._#selFP22#w")) [Var ((Just (TVar 4),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","words._#selFP23#s2")) [Var ((Just (TVar 4),3))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","words")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))]]))))]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","words.isSpace.326")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  ' ')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\t')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\n')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\r')]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","words._#selFP22#w")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","words._#selFP23#s2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unwords")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","foldr1")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","unwords._#lambda6")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","unwords._#lambda6")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","reverse")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","foldl")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude","flip")) [Comb (ConsPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) []],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","and")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","or")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","any")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","or")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","and")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","any")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","notElem")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"Prelude","lookup")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [(Just (TVar 0),5),(Just (TVar 1),6)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 0),5))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),"Prelude","Just")) [Var ((Just (TVar 1),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"Prelude","lookup")) [Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]),4))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","enumFrom")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","enumFrom")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromThen")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","iterate")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromTo")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromTo")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","enumFromThenTo")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","takeWhile")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))))),"Prelude","enumFromThenTo.p.364")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromThen")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))))),"Prelude","enumFromThenTo.p.364")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","failed")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","prim_ord")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","prim_ord")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (External "Prelude.prim_ord"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Char")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") []))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","prim_chr")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","prim_chr")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Char")) [])) (External "Prelude.prim_chr"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Nat")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Nat")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatLT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7))])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatGT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatLT")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatLT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatLT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatLT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatGT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatGT")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatGT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatGT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatGT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNatLT")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isLT")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isGT")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isGT")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","isLT")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Nat")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","pred")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Nat")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","pred")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","inc")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","pred")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","dec")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","succ")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","pred")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mult2")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","inc")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","pred")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mult2")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","dec")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mult2")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","inc")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mult2")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7))]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mult2")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","div2")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Nat")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mod2")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","cmpNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","div2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Nat") []),"Prelude","IHi")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","mod2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","divmodNat.shift.523")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 13) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TVar 13),8)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 13) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]],Var ((Just (TVar 13),8))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 13) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9))]],Var ((Just (TVar 13),8))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10)]) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","failed")) [])])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),11)]) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","failed")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),12)]) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","failed")) [])])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","failed")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","divmodNat.shift.523")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Nat")) []) (TCons ((Nothing,Nothing,"Prelude","Nat")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","O")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") [])),"Prelude","I")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),7))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) [])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) [])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmod")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '0'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),4))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5)]) (Let [((Just (TVar 6),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP25#d")) [Var ((Just (TVar 6),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP26#m")) [Var ((Just (TVar 6),6))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))]))))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '0'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10)]) (Let [((Just (TVar 11),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),10))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP28#d")) [Var ((Just (TVar 11),11))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),13),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP29#m")) [Var ((Just (TVar 11),11))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),12))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),13))]])))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),14)]) (Let [((Just (TVar 14),15),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmodNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),14))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),16),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP31#d")) [Var ((Just (TVar 14),15))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),17),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP32#m")) [Var ((Just (TVar 14),15))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),16)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),17))]]))))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP25#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP26#m")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP28#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP29#m")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP31#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","divmod._#selFP32#m")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","fst")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","snd")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","divmod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","Zero")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Neg")) [(Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","Pos")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Nat") []),3))])])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Success") []),"Prelude","success")) 0 Public (TCons ((Nothing,Nothing,"Prelude","Success")) []) (Rule [] (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Success") []),"Prelude","Success")) [])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:=")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) []))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","===")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 0),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Success") []),"Prelude","success")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Success") []),"Prelude","failed")) [])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","===")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Prelude.==="),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","&")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Success")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Success")) []) (TCons ((Nothing,Nothing,"Prelude","Success")) []))) (External "Prelude.&"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TVar 0) (TVar 0))),"Prelude","&>")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Success")) []) (FuncType (TVar 0) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Success") []),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TVar 0) (TVar 0))),"Prelude","cond")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Success") []),1)),Var ((Just (TVar 0),2))])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]) (TVar 0)))),"Prelude","maybe")) 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1]) (TVar 0)))) (Rule [(Just (TVar 0),1),(Just (FuncType (TVar 1) (TVar 0)),2),(Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","Nothing")) []) (Var ((Just (TVar 0),1))),Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),"Prelude","Just")) [(Just (TVar 1),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TVar 1) (TVar 0))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (TVar 0)),2)),Var ((Just (TVar 1),4))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 2]) (TVar 1)))),"Prelude","either")) 3 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"Prelude","Either")) [TVar 0,TVar 2]) (TVar 1)))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1),(Just (FuncType (TVar 2) (TVar 1)),2),(Just (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 2]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 2]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 2])),"Prelude","Left")) [(Just (TVar 0),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (TVar 1)),1)),Var ((Just (TVar 0),4))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 2])),"Prelude","Right")) [(Just (TVar 2),5)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 2) (TVar 1)) (FuncType (TVar 2) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TVar 2) (TVar 1)),2)),Var ((Just (TVar 2),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude",">>=")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1])) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1]))) (External "Prelude.>>="),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Prelude","return")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "Prelude.return"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude",">>")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude","const")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]),2))]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]),"Prelude","done")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","()") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","()") []),"Prelude","()")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putChar")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","prim_putChar")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","prim_putChar")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "Prelude.prim_putChar"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","getChar")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (External "Prelude.getChar"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","readFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","prim_readFile")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","prim_readFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (External "Prelude.prim_readFile"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","writeFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","prim_writeFile")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","prim_writeFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "Prelude.prim_writeFile"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","appendFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","prim_appendFile")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","prim_appendFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "Prelude.prim_appendFile"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","catchFail")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]))) (External "Prelude.catchFail"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]),"Prelude","done")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putChar")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putChar")) [Lit (Charc  '\n')]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","getLine")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","getChar")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","getLine._#lambda10")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","getLine._#lambda10")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  '\n')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","getLine")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","getLine._#lambda10._#lambda11")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","getLine._#lambda10._#lambda11")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","prim_show")) [],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","prim_show")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "Prelude.prim_show"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","print")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","doSolve")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Success")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Success") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","cond")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Success") []),1)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]),"Prelude","done")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Prelude","sequenceIO")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude","sequenceIO._#lambda12")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 937]]) (FuncType (TVar 937) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]]))),"Prelude","sequenceIO._#lambda12")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 937]]) (FuncType (TVar 937) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 937]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 937]]),1),(Just (TVar 937),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 937]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]])),"Prelude","sequenceIO")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 937]]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 937) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]]))),"Prelude","sequenceIO._#lambda12._#lambda13")) [Var ((Just (TVar 937),2))]])),Func ((Nothing,Just (FuncType (TVar 937) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]]))),"Prelude","sequenceIO._#lambda12._#lambda13")) 2 Private (FuncType (TVar 937) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 937]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 937]]))) (Rule [(Just (TVar 937),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 937) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]))),"Prelude",":")) [Var ((Just (TVar 937),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 937]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","sequenceIO_")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]),"Prelude","done")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Prelude","mapIO")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])),"Prelude","sequenceIO")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","mapIO_")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","sequenceIO_")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]]))),"Prelude","map")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),"Prelude","?")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Or (Var ((Just (TVar 0),1))) (Var ((Just (TVar 0),2))))),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]])),"Prelude","getSearchTree")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]])) (External "Prelude.getSearchTree"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","allValuesD")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Value")) [(Just (TVar 0),2)]) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Fail")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Suspend")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","allValuesD")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","allValuesB")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","allValuesB.unfoldOrs.692")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"Prelude","allValuesB.partition.692")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Value")) [(Just (TVar 0),3)]) (Let [((Just (TVar 1003),4),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),2)))] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1008],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1008]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1008])),"Prelude","allValuesB.partition.692._#selFP34#vs")) [Var ((Just (TVar 1003),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1009],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1009]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1009]])),"Prelude","allValuesB.partition.692._#selFP35#ors")) [Var ((Just (TVar 1003),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),6))])))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0])),"Prelude","Choice")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),7)]) (Let [((Just (TVar 1006),8),Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),2)))] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1012],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1012]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1012])),"Prelude","allValuesB.partition.692._#selFP37#vs")) [Var ((Just (TVar 1006),8))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1013],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1013]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1013]])),"Prelude","allValuesB.partition.692._#selFP38#ors")) [Var ((Just (TVar 1006),8))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),10))]])))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Fail")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),"Prelude","Suspend")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001])),"Prelude","allValuesB.partition.692._#selFP34#vs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1001],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1001]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1001])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001]) (FuncType (TVar 1004) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001]),2),(Just (TVar 1004),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]])),"Prelude","allValuesB.partition.692._#selFP35#ors")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1001],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1001]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1001]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1003) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]))),"Prelude","(,)")) [(Just (TVar 1003),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001])),"Prelude","allValuesB.partition.692._#selFP37#vs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1001],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1001]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1001])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001]) (FuncType (TVar 1004) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001]),2),(Just (TVar 1004),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]])),"Prelude","allValuesB.partition.692._#selFP38#ors")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1001],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1001]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1001]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1003) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1001],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]]))),"Prelude","(,)")) [(Just (TVar 1003),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1001]]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","allValuesB.unfoldOrs.692")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 0]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3)]) (Let [((Just (TVar 1019),4),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1029) (FuncType (TVar 1030) (TVar 1030))) (FuncType (TVar 1030) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1029]) (TVar 1030)))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1024]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1024],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1024]]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1024],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1024]]]))),"Prelude","allValuesB.partition.692")) [],Comb ConsCall ((Nothing,Just (TVar 1027),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 1025),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 1026),"Prelude","[]")) []],Comb ConsCall ((Nothing,Just (FuncType (TVar 1028) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1028]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1028]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),3))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1031],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1031]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1031])),"Prelude","allValuesB.unfoldOrs.692._#selFP40#vals")) [Var ((Just (TVar 1019),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1032],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1032]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1032]])),"Prelude","allValuesB.unfoldOrs.692._#selFP41#ors")) [Var ((Just (TVar 1019),4))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"Prelude","allValuesB.unfoldOrs.692")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 0]]),6))]]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014])),"Prelude","allValuesB.unfoldOrs.692._#selFP40#vals")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1014],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1014]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1014])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014]) (FuncType (TVar 1017) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014]),2),(Just (TVar 1017),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]])),"Prelude","allValuesB.unfoldOrs.692._#selFP41#ors")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1014],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1014]]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","SearchTree")) [TVar 1014]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1016) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1014],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]]))),"Prelude","(,)")) [(Just (TVar 1016),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","SearchTree") [TVar 1014]]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])))),"Prelude","inject")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) [])) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) [])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) [])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])))),"Prelude","inject._#lambda14")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),1)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") [])),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])))),"Prelude","inject._#lambda14")) 3 Private (FuncType (FuncType (TVar 1025) (TCons ((Nothing,Nothing,"Prelude","Success")) [])) (FuncType (FuncType (TVar 1025) (TCons ((Nothing,Nothing,"Prelude","Success")) [])) (FuncType (TVar 1025) (TCons ((Nothing,Nothing,"Prelude","Success")) [])))) (Rule [(Just (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])),1),(Just (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])),2),(Just (TVar 1025),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","&")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])),2)),Var ((Just (TVar 1025),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])) (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1025) (TCons (Nothing,Nothing,"Prelude","Success") [])),1)),Var ((Just (TVar 1025),3))]])),Func ((Nothing,Just (FuncType (TVar 0) (TVar 0)),"Prelude","PEVAL")) 1 Public (FuncType (TVar 0) (TVar 0)) (Rule [(Just (TVar 0),1)] (Var ((Just (TVar 0),1)))),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","apply")) 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.apply"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TVar 0) (TVar 0))),"Prelude","cond")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Success")) []) (FuncType (TVar 0) (TVar 0))) (External "Prelude.cond"),Func ((Nothing,Just (TVar 0),"Prelude","unknown")) 0 Public (TVar 0) (Rule [] (Free [(Just (TVar 0),1)] (Var ((Just (TVar 0),1))))),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:<=")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Success")) []))) (External "Prelude.=:<=")] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 0))),"Prelude","!!")) InfixlOp 9,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 0)) (FuncType (TVar 2) (TVar 1)))),"Prelude",".")) InfixrOp 9,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) InfixlOp 7,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","*^")) InfixlOp 7,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) InfixlOp 7,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) InfixlOp 7,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) InfixlOp 6,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Nat") []))),"Prelude","+^")) InfixlOp 6,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) InfixlOp 6,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-^")) InfixlOp 6,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) InfixrOp 5,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:=")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","===")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","=:<=")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<^")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=^")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">^")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Nat") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=^")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) InfixOp 4,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","notElem")) InfixOp 4,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) InfixrOp 3,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) InfixrOp 2,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude",">>")) InfixlOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude",">>=")) InfixlOp 1,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$")) InfixrOp 0,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$!")) InfixrOp 0,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$!!")) InfixrOp 0,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$#")) InfixrOp 0,Op ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))),"Prelude","$##")) InfixrOp 0,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))),"Prelude","seq")) InfixrOp 0,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (TCons (Nothing,Nothing,"Prelude","Success") []))),"Prelude","&")) InfixrOp 0,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TVar 0) (TVar 0))),"Prelude","&>")) InfixrOp 0,Op ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),"Prelude","?")) InfixrOp 0]
+ src/lib/Curry/Module/.curry/Prelude.fcy view
@@ -0,0 +1,1 @@+Prog "Prelude" [] [Type ("Prelude","()") Public [] [Cons ("Prelude","()") 0 Public []],Type ("Prelude","[]") Public [0] [Cons ("Prelude","[]") 0 Public [],Cons ("Prelude",":") 2 Public [TVar 0,TCons ("Prelude","[]") [TVar 0]]],Type ("Prelude","(,)") Public [0,1] [Cons ("Prelude","(,)") 2 Public [TVar 0,TVar 1]],Type ("Prelude","(,,)") Public [0,1,2] [Cons ("Prelude","(,,)") 3 Public [TVar 0,TVar 1,TVar 2]],Type ("Prelude","(,,,)") Public [0,1,2,3] [Cons ("Prelude","(,,,)") 4 Public [TVar 0,TVar 1,TVar 2,TVar 3]],Type ("Prelude","(,,,,)") Public [0,1,2,3,4] [Cons ("Prelude","(,,,,)") 5 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4]],Type ("Prelude","(,,,,,)") Public [0,1,2,3,4,5] [Cons ("Prelude","(,,,,,)") 6 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5]],Type ("Prelude","(,,,,,,)") Public [0,1,2,3,4,5,6] [Cons ("Prelude","(,,,,,,)") 7 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6]],Type ("Prelude","(,,,,,,,)") Public [0,1,2,3,4,5,6,7] [Cons ("Prelude","(,,,,,,,)") 8 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7]],Type ("Prelude","(,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8] [Cons ("Prelude","(,,,,,,,,)") 9 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8]],Type ("Prelude","(,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9] [Cons ("Prelude","(,,,,,,,,,)") 10 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9]],Type ("Prelude","(,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10] [Cons ("Prelude","(,,,,,,,,,,)") 11 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10]],Type ("Prelude","(,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11] [Cons ("Prelude","(,,,,,,,,,,,)") 12 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11]],Type ("Prelude","(,,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11,12] [Cons ("Prelude","(,,,,,,,,,,,,)") 13 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12]],Type ("Prelude","(,,,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11,12,13] [Cons ("Prelude","(,,,,,,,,,,,,,)") 14 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12,TVar 13]],Type ("Prelude","(,,,,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14] [Cons ("Prelude","(,,,,,,,,,,,,,,)") 15 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12,TVar 13,TVar 14]],TypeSyn ("Prelude","String") Public [] (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]),Type ("Prelude","Float") Public [] [],Type ("Prelude","Char") Public [] [],Type ("Prelude","Bool") Public [] [Cons ("Prelude","False") 0 Public [],Cons ("Prelude","True") 0 Public []],Type ("Prelude","Ordering") Public [] [Cons ("Prelude","LT") 0 Public [],Cons ("Prelude","EQ") 0 Public [],Cons ("Prelude","GT") 0 Public []],Type ("Prelude","Nat") Public [] [Cons ("Prelude","IHi") 0 Public [],Cons ("Prelude","O") 1 Public [TCons ("Prelude","Nat") []],Cons ("Prelude","I") 1 Public [TCons ("Prelude","Nat") []]],Type ("Prelude","Int") Public [] [Cons ("Prelude","Neg") 1 Public [TCons ("Prelude","Nat") []],Cons ("Prelude","Zero") 0 Public [],Cons ("Prelude","Pos") 1 Public [TCons ("Prelude","Nat") []]],Type ("Prelude","Success") Public [] [Cons ("Prelude","Success") 0 Public []],Type ("Prelude","Maybe") Public [0] [Cons ("Prelude","Nothing") 0 Public [],Cons ("Prelude","Just") 1 Public [TVar 0]],Type ("Prelude","Either") Public [0,1] [Cons ("Prelude","Left") 1 Public [TVar 0],Cons ("Prelude","Right") 1 Public [TVar 1]],Type ("Prelude","IO") Public [0] [],Type ("Prelude","SearchTree") Public [0] [Cons ("Prelude","Fail") 0 Public [],Cons ("Prelude","Value") 1 Public [TVar 0],Cons ("Prelude","Choice") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]],Cons ("Prelude","Suspend") 0 Public []]] [Func ("Prelude",".") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 0)) (FuncType (TVar 2) (TVar 1)))) (Rule [1,2] (Comb (FuncPartCall 1) ("Prelude",".._#lambda2") [Var 1,Var 2])),Func ("Prelude",".._#lambda2") 3 Private (FuncType (FuncType (TVar 9) (TVar 11)) (FuncType (FuncType (TVar 7) (TVar 9)) (FuncType (TVar 7) (TVar 11)))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Var 1,Comb FuncCall ("Prelude","apply") [Var 2,Var 3]])),Func ("Prelude","id") 1 Public (FuncType (TVar 0) (TVar 0)) (Rule [1] (Var 1)),Func ("Prelude","const") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (Rule [1,2] (Var 1)),Func ("Prelude","curry") 3 Public (FuncType (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 2)) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Var 1,Comb ConsCall ("Prelude","(,)") [Var 2,Var 3]])),Func ("Prelude","uncurry") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 2))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [3,4]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 4])])),Func ("Prelude","flip") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 2)))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 2])),Func ("Prelude","until") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 3]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","until") [Var 1,Var 2,Comb FuncCall ("Prelude","apply") [Var 2,Var 3]])])),Func ("Prelude","$") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Var 1,Var 2])),Func ("Prelude","$!") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$!"),Func ("Prelude","$!!") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$!!"),Func ("Prelude","$#") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$#"),Func ("Prelude","$##") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$##"),Func ("Prelude","ensureSpine") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","$#") [Comb (FuncPartCall 1) ("Prelude","ensureSpine.ensureList.21") []])),Func ("Prelude","ensureSpine.ensureList.21") 1 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","ensureSpine") [],Var 3]])])),Func ("Prelude","seq") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (Rule [1,2] (Comb FuncCall ("Prelude","$!") [Comb (FuncPartCall 1) ("Prelude","const") [Var 2],Var 1])),Func ("Prelude","error") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","prim_error") [],Var 1])),Func ("Prelude","prim_error") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (External "Prelude.prim_error"),Func ("Prelude","failed") 0 Public (TVar 0) (External "Prelude.failed"),Func ("Prelude","&&") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","False") [])])),Func ("Prelude","||") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","False") []) (Var 2)])),Func ("Prelude","not") 1 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","True") [])])),Func ("Prelude","otherwise") 0 Public (TCons ("Prelude","Bool") []) (Rule [] (Comb ConsCall ("Prelude","True") [])),Func ("Prelude","if_then_else") 3 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (Rule [1,2,3] (Case  Rigid (Var 1) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Var 3)])),Func ("Prelude","isLT") 1 Public (FuncType (TCons ("Prelude","Ordering") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","LT") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","GT") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude","EQ") []) (Comb ConsCall ("Prelude","False") [])])),Func ("Prelude","isGT") 1 Public (FuncType (TCons ("Prelude","Ordering") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","LT") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude","GT") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude","EQ") []) (Comb ConsCall ("Prelude","False") [])])),Func ("Prelude","isEQ") 1 Public (FuncType (TCons ("Prelude","Ordering") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","LT") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude","GT") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude","EQ") []) (Comb ConsCall ("Prelude","True") [])])),Func ("Prelude","compare") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Zero") []) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","Pos") [3]) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","Neg") [4]) (Comb ConsCall ("Prelude","GT") [])]),Branch (Pattern ("Prelude","Pos") [5]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","Pos") [6]) (Comb FuncCall ("Prelude","cmpNat") [Var 5,Var 6]),Branch (Pattern ("Prelude","Neg") [7]) (Comb ConsCall ("Prelude","GT") [])]),Branch (Pattern ("Prelude","Neg") [8]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","Pos") [9]) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","Neg") [10]) (Comb FuncCall ("Prelude","cmpNat") [Var 10,Var 8])])])),Func ("Prelude","<") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","compare") [Var 1,Var 2],Comb ConsCall ("Prelude","LT") []])),Func ("Prelude",">") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","compare") [Var 1,Var 2],Comb ConsCall ("Prelude","GT") []])),Func ("Prelude","<=") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","/=") [Comb FuncCall ("Prelude","compare") [Var 1,Var 2],Comb ConsCall ("Prelude","GT") []])),Func ("Prelude",">=") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","/=") [Comb FuncCall ("Prelude","compare") [Var 1,Var 2],Comb ConsCall ("Prelude","LT") []])),Func ("Prelude","max") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","compare") [Var 1,Var 2]) [Branch (Pattern ("Prelude","LT") []) (Var 2),Branch (Pattern ("Prelude","EQ") []) (Var 1),Branch (Pattern ("Prelude","GT") []) (Var 1)])),Func ("Prelude","min") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","compare") [Var 1,Var 2]) [Branch (Pattern ("Prelude","GT") []) (Var 2),Branch (Pattern ("Prelude","LT") []) (Var 1),Branch (Pattern ("Prelude","EQ") []) (Var 1)])),Func ("Prelude","==") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (External "Prelude.=="),Func ("Prelude","/=") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","not") [Comb FuncCall ("Prelude","==") [Var 1,Var 2]])),Func ("Prelude","fst") 1 Public (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","snd") 1 Public (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 1)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","head") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 2)])),Func ("Prelude","tail") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [2,3]) (Var 3)])),Func ("Prelude","null") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude",":") [2,3]) (Comb ConsCall ("Prelude","False") [])])),Func ("Prelude","++") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("Prelude","++") [Var 4,Var 2]])])),Func ("Prelude","length") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Lit (Intc  0)),Branch (Pattern ("Prelude",":") [2,3]) (Comb FuncCall ("Prelude","+") [Lit (Intc  1),Comb FuncCall ("Prelude","length") [Var 3]])])),Func ("Prelude","!!") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (TVar 0))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","!!") [Var 4,Comb FuncCall ("Prelude","-") [Var 2,Lit (Intc  1)]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("Prelude","map") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 1]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Comb FuncCall ("Prelude","map") [Var 1,Var 4]])])),Func ("Prelude","foldl") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Prelude","foldl") [Var 1,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Var 4],Var 5])])),Func ("Prelude","foldl1") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Prelude","foldl") [Var 1,Var 3,Var 4])])),Func ("Prelude","foldr") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 1)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [4,5]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Comb FuncCall ("Prelude","foldr") [Var 1,Var 2,Var 5]])])),Func ("Prelude","foldr1") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Var 3),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Comb FuncCall ("Prelude","foldr1") [Var 1,Comb ConsCall ("Prelude",":") [Var 5,Var 6]]])])])),Func ("Prelude","filter") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("Prelude","filter") [Var 1,Var 4]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","filter") [Var 1,Var 4])])])),Func ("Prelude","zip") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 3,Var 5],Comb FuncCall ("Prelude","zip") [Var 4,Var 6]])])])),Func ("Prelude","zip3") 3 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 1,TVar 2]])))) (Rule [1,2,3] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [4,5]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [6,7]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [8,9]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,,)") [Var 4,Var 6,Var 8],Comb FuncCall ("Prelude","zip3") [Var 5,Var 7,Var 9]])])])])),Func ("Prelude","zipWith") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 2])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [6,7]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 6],Comb FuncCall ("Prelude","zipWith") [Var 1,Var 5,Var 7]])])])),Func ("Prelude","zipWith3") 4 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TVar 3]))))) (Rule [1,2,3,4] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [5,6]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [7,8]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [9,10]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 5],Var 7],Var 9],Comb FuncCall ("Prelude","zipWith3") [Var 1,Var 6,Var 8,Var 10]])])])])),Func ("Prelude","unzip") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 1]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,)") [4,5]) (Let [(6,Comb FuncCall ("Prelude","unzip") [Var 3])] (Let [(7,Comb FuncCall ("Prelude","unzip._#selFP3#xs") [Var 6])] (Let [(8,Comb FuncCall ("Prelude","unzip._#selFP4#ys") [Var 6])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 4,Var 7],Comb ConsCall ("Prelude",":") [Var 5,Var 8]]))))])])),Func ("Prelude","unzip._#selFP3#xs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 476],TCons ("Prelude","[]") [TVar 477]]) (TCons ("Prelude","[]") [TVar 476])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","unzip._#selFP4#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 476],TCons ("Prelude","[]") [TVar 477]]) (TCons ("Prelude","[]") [TVar 477])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","unzip3") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]) (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 1],TCons ("Prelude","[]") [TVar 2]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","(,,)") [4,5,6]) (Let [(7,Comb FuncCall ("Prelude","unzip3") [Var 3])] (Let [(8,Comb FuncCall ("Prelude","unzip3._#selFP6#xs") [Var 7])] (Let [(9,Comb FuncCall ("Prelude","unzip3._#selFP7#ys") [Var 7])] (Let [(10,Comb FuncCall ("Prelude","unzip3._#selFP8#zs") [Var 7])] (Comb ConsCall ("Prelude","(,,)") [Comb ConsCall ("Prelude",":") [Var 4,Var 8],Comb ConsCall ("Prelude",":") [Var 5,Var 9],Comb ConsCall ("Prelude",":") [Var 6,Var 10]])))))])])),Func ("Prelude","unzip3._#selFP6#xs") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TVar 493],TCons ("Prelude","[]") [TVar 494],TCons ("Prelude","[]") [TVar 495]]) (TCons ("Prelude","[]") [TVar 493])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 2)])),Func ("Prelude","unzip3._#selFP7#ys") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TVar 493],TCons ("Prelude","[]") [TVar 494],TCons ("Prelude","[]") [TVar 495]]) (TCons ("Prelude","[]") [TVar 494])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 3)])),Func ("Prelude","unzip3._#selFP8#zs") 1 Private (FuncType (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TVar 493],TCons ("Prelude","[]") [TVar 494],TCons ("Prelude","[]") [TVar 495]]) (TCons ("Prelude","[]") [TVar 495])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,,)") [2,3,4]) (Var 4)])),Func ("Prelude","concat") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("Prelude","++") [],Comb ConsCall ("Prelude","[]") [],Var 1])),Func ("Prelude","concatMap") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 1]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","concat") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]])),Func ("Prelude","iterate") 2 Public (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("Prelude","iterate") [Var 1,Comb FuncCall ("Prelude","apply") [Var 1,Var 2]]])),Func ("Prelude","repeat") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb ConsCall ("Prelude",":") [Var 1,Comb FuncCall ("Prelude","repeat") [Var 1]])),Func ("Prelude","replicate") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude","take") [Var 1,Comb FuncCall ("Prelude","repeat") [Var 2]])),Func ("Prelude","take") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Neg") [3]) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","Pos") [4]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Prelude","take") [Comb FuncCall ("Prelude","-") [Comb ConsCall ("Prelude","Pos") [Var 4],Lit (Intc  1)],Var 6]])])])),Func ("Prelude","drop") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","<=") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","drop.dropp.272") [Var 1,Var 2])])),Func ("Prelude","drop.dropp.272") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Prelude","drop") [Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)],Var 4])])),Func ("Prelude","splitAt") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","<=") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Var 2]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","splitAt.splitAtp.282") [Var 1,Var 2])])),Func ("Prelude","splitAt.splitAtp.282") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Prelude","splitAt") [Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)],Var 4])] (Let [(6,Comb FuncCall ("Prelude","splitAt.splitAtp.282._#selFP10#ys") [Var 5])] (Let [(7,Comb FuncCall ("Prelude","splitAt.splitAtp.282._#selFP11#zs") [Var 5])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 3,Var 6],Var 7]))))])),Func ("Prelude","splitAt.splitAtp.282._#selFP10#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 576],TCons ("Prelude","[]") [TVar 576]]) (TCons ("Prelude","[]") [TVar 576])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","splitAt.splitAtp.282._#selFP11#zs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 576],TCons ("Prelude","[]") [TVar 576]]) (TCons ("Prelude","[]") [TVar 576])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","takeWhile") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("Prelude","takeWhile") [Var 1,Var 4]]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","[]") [])])])),Func ("Prelude","dropWhile") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 3]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","dropWhile") [Var 1,Var 4]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 3,Var 4])])])),Func ("Prelude","span") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Var 1,Var 3]) [Branch (Pattern ("Prelude","True") []) (Let [(5,Comb FuncCall ("Prelude","span") [Var 1,Var 4])] (Let [(6,Comb FuncCall ("Prelude","span._#selFP13#ys") [Var 5])] (Let [(7,Comb FuncCall ("Prelude","span._#selFP14#zs") [Var 5])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 3,Var 6],Var 7])))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude",":") [Var 3,Var 4]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])),Func ("Prelude","span._#selFP13#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 627],TCons ("Prelude","[]") [TVar 627]]) (TCons ("Prelude","[]") [TVar 627])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","span._#selFP14#zs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 627],TCons ("Prelude","[]") [TVar 627]]) (TCons ("Prelude","[]") [TVar 627])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","break") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [1] (Comb (FuncPartCall 1) ("Prelude","span") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","not") [],Var 1]])),Func ("Prelude","lines") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Let [(4,Comb FuncCall ("Prelude","lines.splitline.314") [Comb ConsCall ("Prelude",":") [Var 2,Var 3]])] (Let [(5,Comb FuncCall ("Prelude","lines._#selFP19#l") [Var 4])] (Let [(6,Comb FuncCall ("Prelude","lines._#selFP20#xs_l") [Var 4])] (Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Prelude","lines") [Var 6]]))))])),Func ("Prelude","lines.splitline.314") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [2,3]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Charc  '\n')]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Var 3]),Branch (Pattern ("Prelude","False") []) (Let [(4,Comb FuncCall ("Prelude","lines.splitline.314") [Var 3])] (Let [(5,Comb FuncCall ("Prelude","lines.splitline.314._#selFP16#ds") [Var 4])] (Let [(6,Comb FuncCall ("Prelude","lines.splitline.314._#selFP17#es") [Var 4])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 2,Var 5],Var 6]))))])])),Func ("Prelude","lines.splitline.314._#selFP16#ds") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","lines.splitline.314._#selFP17#es") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","lines._#selFP19#l") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","lines._#selFP20#xs_l") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","unlines") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","++") [],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]],Var 1])),Func ("Prelude","words") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Let [(2,Comb FuncCall ("Prelude","dropWhile") [Comb (FuncPartCall 1) ("Prelude","words.isSpace.326") [],Var 1])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("Prelude","[]") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","words.isSpace.326") []],Var 2])] (Let [(4,Comb FuncCall ("Prelude","words._#selFP22#w") [Var 3])] (Let [(5,Comb FuncCall ("Prelude","words._#selFP23#s2") [Var 3])] (Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("Prelude","words") [Var 5]]))))]))),Func ("Prelude","words.isSpace.326") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  ' ')],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\t')],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\n')],Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\r')]]]])),Func ("Prelude","words._#selFP22#w") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","words._#selFP23#s2") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","unwords") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Comb ConsCall ("Prelude","[]") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","foldr1") [Comb (FuncPartCall 2) ("Prelude","unwords._#lambda6") [],Var 1])])),Func ("Prelude","unwords._#lambda6") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","++") [Var 1,Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Var 2]])),Func ("Prelude","reverse") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","foldl") [Comb (FuncPartCall 2) ("Prelude","flip") [Comb (ConsPartCall 2) ("Prelude",":") []],Comb ConsCall ("Prelude","[]") []])),Func ("Prelude","and") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []]) (TCons ("Prelude","Bool") [])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","foldr") [Comb (FuncPartCall 2) ("Prelude","&&") [],Comb ConsCall ("Prelude","True") []])),Func ("Prelude","or") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []]) (TCons ("Prelude","Bool") [])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","foldr") [Comb (FuncPartCall 2) ("Prelude","||") [],Comb ConsCall ("Prelude","False") []])),Func ("Prelude","any") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("Prelude","or") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]])),Func ("Prelude","all") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("Prelude","and") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]])),Func ("Prelude","elem") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1] (Comb FuncCall ("Prelude","any") [Comb (FuncPartCall 1) ("Prelude","==") [Var 1]])),Func ("Prelude","notElem") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1] (Comb FuncCall ("Prelude","all") [Comb (FuncPartCall 1) ("Prelude","/=") [Var 1]])),Func ("Prelude","lookup") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Var 5]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","Just") [Var 6]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","lookup") [Var 1,Var 4]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Prelude","enumFrom") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Comb ConsCall ("Prelude",":") [Var 1,Comb FuncCall ("Prelude","enumFrom") [Comb FuncCall ("Prelude","+") [Var 1,Lit (Intc  1)]]])),Func ("Prelude","enumFromThen") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","iterate") [Comb (FuncPartCall 1) ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 2,Var 1]],Var 1])),Func ("Prelude","enumFromTo") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Var 1,Comb FuncCall ("Prelude","enumFromTo") [Comb FuncCall ("Prelude","+") [Var 1,Lit (Intc  1)],Var 2]])])),Func ("Prelude","enumFromThenTo") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","takeWhile") [Comb (FuncPartCall 1) ("Prelude","enumFromThenTo.p.364") [Var 3,Var 1,Var 2],Comb FuncCall ("Prelude","enumFromThen") [Var 1,Var 2]])),Func ("Prelude","enumFromThenTo.p.364") 4 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))))) (Rule [1,2,3,4] (Case  Rigid (Comb FuncCall ("Prelude",">=") [Var 3,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","<=") [Var 4,Var 1]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude",">=") [Var 4,Var 1]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])),Func ("Prelude","ord") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","prim_ord") [],Var 1])),Func ("Prelude","prim_ord") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (External "Prelude.prim_ord"),Func ("Prelude","chr") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Char") [])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","prim_chr") [],Var 1])),Func ("Prelude","prim_chr") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Char") [])) (External "Prelude.prim_chr"),Func ("Prelude","succ") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","O") [2]) (Comb ConsCall ("Prelude","I") [Var 2]),Branch (Pattern ("Prelude","I") [3]) (Comb ConsCall ("Prelude","O") [Comb FuncCall ("Prelude","succ") [Var 3]]),Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","O") [Comb ConsCall ("Prelude","IHi") []])])),Func ("Prelude","+^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","O") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","O") [4]) (Comb ConsCall ("Prelude","O") [Comb FuncCall ("Prelude","+^") [Var 3,Var 4]]),Branch (Pattern ("Prelude","I") [5]) (Comb ConsCall ("Prelude","I") [Comb FuncCall ("Prelude","+^") [Var 3,Var 5]]),Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","I") [Var 3])]),Branch (Pattern ("Prelude","I") [6]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","O") [7]) (Comb ConsCall ("Prelude","I") [Comb FuncCall ("Prelude","+^") [Var 6,Var 7]]),Branch (Pattern ("Prelude","I") [8]) (Comb ConsCall ("Prelude","O") [Comb FuncCall ("Prelude","+^") [Comb FuncCall ("Prelude","succ") [Var 6],Var 8]]),Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","O") [Comb FuncCall ("Prelude","succ") [Var 6]])]),Branch (Pattern ("Prelude","IHi") []) (Comb FuncCall ("Prelude","succ") [Var 2])])),Func ("Prelude","cmpNat") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","O") [3]) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","I") [4]) (Comb ConsCall ("Prelude","LT") [])]),Branch (Pattern ("Prelude","O") [5]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","O") [6]) (Comb FuncCall ("Prelude","cmpNat") [Var 5,Var 6]),Branch (Pattern ("Prelude","I") [7]) (Comb FuncCall ("Prelude","cmpNatLT") [Var 5,Var 7])]),Branch (Pattern ("Prelude","I") [8]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","I") [9]) (Comb FuncCall ("Prelude","cmpNat") [Var 8,Var 9]),Branch (Pattern ("Prelude","O") [10]) (Comb FuncCall ("Prelude","cmpNatGT") [Var 8,Var 10])])])),Func ("Prelude","cmpNatLT") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","O") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","O") [4]) (Comb FuncCall ("Prelude","cmpNatLT") [Var 3,Var 4]),Branch (Pattern ("Prelude","I") [5]) (Comb FuncCall ("Prelude","cmpNatLT") [Var 3,Var 5])]),Branch (Pattern ("Prelude","I") [6]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","I") [7]) (Comb FuncCall ("Prelude","cmpNatLT") [Var 6,Var 7]),Branch (Pattern ("Prelude","O") [8]) (Comb FuncCall ("Prelude","cmpNatGT") [Var 6,Var 8])])])),Func ("Prelude","cmpNatGT") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","O") [3]) (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","O") [4]) (Comb FuncCall ("Prelude","cmpNatGT") [Var 4,Var 3]),Branch (Pattern ("Prelude","I") [5]) (Comb FuncCall ("Prelude","cmpNatGT") [Var 5,Var 3])]),Branch (Pattern ("Prelude","I") [6]) (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","I") [7]) (Comb FuncCall ("Prelude","cmpNatGT") [Var 7,Var 6]),Branch (Pattern ("Prelude","O") [8]) (Comb FuncCall ("Prelude","cmpNatLT") [Var 8,Var 6])])])),Func ("Prelude","<^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","isLT") [Comb FuncCall ("Prelude","cmpNat") [Var 1,Var 2]])),Func ("Prelude",">^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","isGT") [Comb FuncCall ("Prelude","cmpNat") [Var 1,Var 2]])),Func ("Prelude","<=^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","not") [Comb FuncCall ("Prelude","isGT") [Comb FuncCall ("Prelude","cmpNat") [Var 1,Var 2]]])),Func ("Prelude",">=^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","not") [Comb FuncCall ("Prelude","isLT") [Comb FuncCall ("Prelude","cmpNat") [Var 1,Var 2]]])),Func ("Prelude","*^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Var 2),Branch (Pattern ("Prelude","I") [3]) (Comb FuncCall ("Prelude","+^") [Comb ConsCall ("Prelude","O") [Comb FuncCall ("Prelude","*^") [Var 2,Var 3]],Var 2]),Branch (Pattern ("Prelude","O") [4]) (Comb ConsCall ("Prelude","O") [Comb FuncCall ("Prelude","*^") [Var 4,Var 2]])])),Func ("Prelude","pred") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","O") [2]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","IHi") []),Branch (Pattern ("Prelude","O") [3]) (Comb ConsCall ("Prelude","I") [Comb FuncCall ("Prelude","pred") [Var 2]]),Branch (Pattern ("Prelude","I") [4]) (Comb ConsCall ("Prelude","I") [Comb ConsCall ("Prelude","O") [Var 4]])]),Branch (Pattern ("Prelude","I") [5]) (Comb ConsCall ("Prelude","O") [Var 5])])),Func ("Prelude","inc") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","IHi") []]),Branch (Pattern ("Prelude","Pos") [2]) (Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","succ") [Var 2]]),Branch (Pattern ("Prelude","Neg") [3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","Zero") []),Branch (Pattern ("Prelude","O") [4]) (Comb ConsCall ("Prelude","Neg") [Comb FuncCall ("Prelude","pred") [Comb ConsCall ("Prelude","O") [Var 4]]]),Branch (Pattern ("Prelude","I") [5]) (Comb ConsCall ("Prelude","Neg") [Comb ConsCall ("Prelude","O") [Var 5]])])])),Func ("Prelude","dec") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Neg") [Comb ConsCall ("Prelude","IHi") []]),Branch (Pattern ("Prelude","Neg") [2]) (Comb ConsCall ("Prelude","Neg") [Comb FuncCall ("Prelude","succ") [Var 2]]),Branch (Pattern ("Prelude","Pos") [3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","Zero") []),Branch (Pattern ("Prelude","O") [4]) (Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","pred") [Comb ConsCall ("Prelude","O") [Var 4]]]),Branch (Pattern ("Prelude","I") [5]) (Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","O") [Var 5]])])])),Func ("Prelude","mult2") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Pos") [2]) (Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","O") [Var 2]]),Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Zero") []),Branch (Pattern ("Prelude","Neg") [3]) (Comb ConsCall ("Prelude","Neg") [Comb ConsCall ("Prelude","O") [Var 3]])])),Func ("Prelude","-^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Comb FuncCall ("Prelude","inc") [Comb ConsCall ("Prelude","Neg") [Var 2]]),Branch (Pattern ("Prelude","O") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","pred") [Comb ConsCall ("Prelude","O") [Var 3]]]),Branch (Pattern ("Prelude","O") [4]) (Comb FuncCall ("Prelude","mult2") [Comb FuncCall ("Prelude","-^") [Var 3,Var 4]]),Branch (Pattern ("Prelude","I") [5]) (Comb FuncCall ("Prelude","dec") [Comb FuncCall ("Prelude","mult2") [Comb FuncCall ("Prelude","-^") [Var 3,Var 5]]])]),Branch (Pattern ("Prelude","I") [6]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","O") [Var 6]]),Branch (Pattern ("Prelude","O") [7]) (Comb FuncCall ("Prelude","inc") [Comb FuncCall ("Prelude","mult2") [Comb FuncCall ("Prelude","-^") [Var 6,Var 7]]]),Branch (Pattern ("Prelude","I") [8]) (Comb FuncCall ("Prelude","mult2") [Comb FuncCall ("Prelude","-^") [Var 6,Var 8]])])])),Func ("Prelude","div2") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","O") [2]) (Var 2),Branch (Pattern ("Prelude","I") [3]) (Var 3)])),Func ("Prelude","mod2") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","IHi") []) (Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","IHi") []]),Branch (Pattern ("Prelude","O") [2]) (Comb ConsCall ("Prelude","Zero") []),Branch (Pattern ("Prelude","I") [3]) (Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","IHi") []])])),Func ("Prelude","divmodNat") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("Prelude","IHi") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Pos") [Var 1],Comb ConsCall ("Prelude","Zero") []]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Prelude","cmpNat") [Var 1,Var 2]) [Branch (Pattern ("Prelude","EQ") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","IHi") []],Comb ConsCall ("Prelude","Zero") []]),Branch (Pattern ("Prelude","LT") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Zero") [],Comb ConsCall ("Prelude","Pos") [Var 1]]),Branch (Pattern ("Prelude","GT") []) (Case  Rigid (Comb FuncCall ("Prelude","divmodNat") [Comb FuncCall ("Prelude","div2") [Var 1],Var 2]) [Branch (Pattern ("Prelude","(,)") [3,4]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","IHi") []],Comb FuncCall ("Prelude","-^") [Var 1,Var 2]]),Branch (Pattern ("Prelude","Pos") [5]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","O") [Var 5]],Comb FuncCall ("Prelude","mod2") [Var 1]]),Branch (Pattern ("Prelude","Pos") [6]) (Case  Rigid (Comb FuncCall ("Prelude","divmodNat") [Comb FuncCall ("Prelude","divmodNat.shift.523") [Var 1,Var 6],Var 2]) [Branch (Pattern ("Prelude","(,)") [7,8]) (Case  Rigid (Var 7) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Pos") [Comb ConsCall ("Prelude","O") [Var 5]],Var 8]),Branch (Pattern ("Prelude","Pos") [9]) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","+^") [Comb ConsCall ("Prelude","O") [Var 5],Var 9]],Var 8]),Branch (Pattern ("Prelude","Neg") [10]) (Comb FuncCall ("Prelude","failed") [])])]),Branch (Pattern ("Prelude","Neg") [11]) (Comb FuncCall ("Prelude","failed") [])]),Branch (Pattern ("Prelude","Neg") [12]) (Comb FuncCall ("Prelude","failed") [])])])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])),Func ("Prelude","divmodNat.shift.523") 2 Private (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","O") [3]) (Comb ConsCall ("Prelude","O") [Var 2]),Branch (Pattern ("Prelude","I") [4]) (Comb ConsCall ("Prelude","I") [Var 2])])),Func ("Prelude","+") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Pos") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Pos") [4]) (Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","+^") [Var 3,Var 4]]),Branch (Pattern ("Prelude","Neg") [5]) (Comb FuncCall ("Prelude","-^") [Var 3,Var 5]),Branch (Pattern ("Prelude","Zero") []) (Var 1)]),Branch (Pattern ("Prelude","Neg") [6]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Neg") [7]) (Comb ConsCall ("Prelude","Neg") [Comb FuncCall ("Prelude","+^") [Var 6,Var 7]]),Branch (Pattern ("Prelude","Pos") [8]) (Comb FuncCall ("Prelude","-^") [Var 8,Var 6]),Branch (Pattern ("Prelude","Zero") []) (Var 1)]),Branch (Pattern ("Prelude","Zero") []) (Var 2)])),Func ("Prelude","-") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Neg") [3]) (Comb FuncCall ("Prelude","+") [Var 1,Comb ConsCall ("Prelude","Pos") [Var 3]]),Branch (Pattern ("Prelude","Pos") [4]) (Comb FuncCall ("Prelude","+") [Var 1,Comb ConsCall ("Prelude","Neg") [Var 4]]),Branch (Pattern ("Prelude","Zero") []) (Var 1)])),Func ("Prelude","*") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Pos") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Pos") [4]) (Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","*^") [Var 3,Var 4]]),Branch (Pattern ("Prelude","Neg") [5]) (Comb ConsCall ("Prelude","Neg") [Comb FuncCall ("Prelude","*^") [Var 3,Var 5]]),Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Zero") [])]),Branch (Pattern ("Prelude","Neg") [6]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Neg") [7]) (Comb ConsCall ("Prelude","Pos") [Comb FuncCall ("Prelude","*^") [Var 6,Var 7]]),Branch (Pattern ("Prelude","Pos") [8]) (Comb ConsCall ("Prelude","Neg") [Comb FuncCall ("Prelude","*^") [Var 6,Var 8]]),Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Zero") [])]),Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Zero") [])])),Func ("Prelude","divmod") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","Zero") [],Comb ConsCall ("Prelude","Zero") []]),Branch (Pattern ("Prelude","Pos") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Zero") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '0'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]),Branch (Pattern ("Prelude","Pos") [4]) (Comb FuncCall ("Prelude","divmodNat") [Var 3,Var 4]),Branch (Pattern ("Prelude","Neg") [5]) (Let [(6,Comb FuncCall ("Prelude","divmodNat") [Var 3,Var 5])] (Let [(7,Comb FuncCall ("Prelude","divmod._#selFP25#d") [Var 6])] (Let [(8,Comb FuncCall ("Prelude","divmod._#selFP26#m") [Var 6])] (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","negate") [Var 7],Var 8]))))]),Branch (Pattern ("Prelude","Neg") [9]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","Zero") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  '0'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]),Branch (Pattern ("Prelude","Pos") [10]) (Let [(11,Comb FuncCall ("Prelude","divmodNat") [Var 9,Var 10])] (Let [(12,Comb FuncCall ("Prelude","divmod._#selFP28#d") [Var 11])] (Let [(13,Comb FuncCall ("Prelude","divmod._#selFP29#m") [Var 11])] (Comb ConsCall ("Prelude","(,)") [Comb FuncCall ("Prelude","negate") [Var 12],Comb FuncCall ("Prelude","negate") [Var 13]])))),Branch (Pattern ("Prelude","Neg") [14]) (Let [(15,Comb FuncCall ("Prelude","divmodNat") [Var 9,Var 14])] (Let [(16,Comb FuncCall ("Prelude","divmod._#selFP31#d") [Var 15])] (Let [(17,Comb FuncCall ("Prelude","divmod._#selFP32#m") [Var 15])] (Comb ConsCall ("Prelude","(,)") [Var 16,Comb FuncCall ("Prelude","negate") [Var 17]]))))])])),Func ("Prelude","divmod._#selFP25#d") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","divmod._#selFP26#m") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","divmod._#selFP28#d") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","divmod._#selFP29#m") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","divmod._#selFP31#d") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","divmod._#selFP32#m") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","div") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Comb FuncCall ("Prelude","fst") [Comb FuncCall ("Prelude","divmod") [Var 1,Var 2]])),Func ("Prelude","mod") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Comb FuncCall ("Prelude","snd") [Comb FuncCall ("Prelude","divmod") [Var 1,Var 2]])),Func ("Prelude","negate") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Zero") []) (Comb ConsCall ("Prelude","Zero") []),Branch (Pattern ("Prelude","Pos") [2]) (Comb ConsCall ("Prelude","Neg") [Var 2]),Branch (Pattern ("Prelude","Neg") [3]) (Comb ConsCall ("Prelude","Pos") [Var 3])])),Func ("Prelude","success") 0 Public (TCons ("Prelude","Success") []) (Rule [] (Comb ConsCall ("Prelude","Success") [])),Func ("Prelude","=:=") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Success") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","===") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","success") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])),Func ("Prelude","===") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (External "Prelude.==="),Func ("Prelude","&") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TCons ("Prelude","Success") []) (TCons ("Prelude","Success") []))) (External "Prelude.&"),Func ("Prelude","&>") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TVar 0) (TVar 0))) (Rule [1,2] (Comb FuncCall ("Prelude","cond") [Var 1,Var 2])),Func ("Prelude","maybe") 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TCons ("Prelude","Maybe") [TVar 1]) (TVar 0)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","Nothing") []) (Var 1),Branch (Pattern ("Prelude","Just") [4]) (Comb FuncCall ("Prelude","apply") [Var 2,Var 4])])),Func ("Prelude","either") 3 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 1)) (FuncType (TCons ("Prelude","Either") [TVar 0,TVar 2]) (TVar 1)))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","Left") [4]) (Comb FuncCall ("Prelude","apply") [Var 1,Var 4]),Branch (Pattern ("Prelude","Right") [5]) (Comb FuncCall ("Prelude","apply") [Var 2,Var 5])])),Func ("Prelude",">>=") 2 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (TCons ("Prelude","IO") [TVar 1]))) (External "Prelude.>>="),Func ("Prelude","return") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Prelude.return"),Func ("Prelude",">>") 2 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (TCons ("Prelude","IO") [TVar 1]) (TCons ("Prelude","IO") [TVar 1]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Var 1,Comb (FuncPartCall 1) ("Prelude","const") [Var 2]])),Func ("Prelude","done") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","()") []]) (Rule [] (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","()") []])),Func ("Prelude","putChar") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","prim_putChar") [],Var 1])),Func ("Prelude","prim_putChar") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Prelude.prim_putChar"),Func ("Prelude","getChar") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Char") []]) (External "Prelude.getChar"),Func ("Prelude","readFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","prim_readFile") [],Var 1])),Func ("Prelude","prim_readFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (External "Prelude.prim_readFile"),Func ("Prelude","writeFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Prelude","prim_writeFile") [],Var 1],Var 2])),Func ("Prelude","prim_writeFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Prelude.prim_writeFile"),Func ("Prelude","appendFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Prelude","prim_appendFile") [],Var 1],Var 2])),Func ("Prelude","prim_appendFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Prelude.prim_appendFile"),Func ("Prelude","catchFail") 2 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TVar 0]))) (External "Prelude.catchFail"),Func ("Prelude","putStr") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","done") []),Branch (Pattern ("Prelude",":") [2,3]) (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Prelude","putChar") [Var 2],Comb FuncCall ("Prelude","putStr") [Var 3]])])),Func ("Prelude","putStrLn") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Prelude","putStr") [Var 1],Comb FuncCall ("Prelude","putChar") [Lit (Charc  '\n')]])),Func ("Prelude","getLine") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (Rule [] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","getChar") [],Comb (FuncPartCall 1) ("Prelude","getLine._#lambda10") []])),Func ("Prelude","getLine._#lambda10") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  '\n')]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","getLine") [],Comb (FuncPartCall 1) ("Prelude","getLine._#lambda10._#lambda11") [Var 1]])])),Func ("Prelude","getLine._#lambda10._#lambda11") 2 Private (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude",":") [Var 1,Var 2]])),Func ("Prelude","show") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Prelude","prim_show") [],Var 1])),Func ("Prelude","prim_show") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Prelude.prim_show"),Func ("Prelude","print") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","putStrLn") [Comb FuncCall ("Prelude","show") [Var 1]])),Func ("Prelude","doSolve") 1 Public (FuncType (TCons ("Prelude","Success") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","cond") [Var 1,Comb FuncCall ("Prelude","done") []])),Func ("Prelude","sequenceIO") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","IO") [TVar 0]]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 0]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [2,3]) (Comb FuncCall ("Prelude",">>=") [Var 2,Comb (FuncPartCall 1) ("Prelude","sequenceIO._#lambda12") [Var 3]])])),Func ("Prelude","sequenceIO._#lambda12") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","IO") [TVar 937]]) (FuncType (TVar 937) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 937]]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","sequenceIO") [Var 1],Comb (FuncPartCall 1) ("Prelude","sequenceIO._#lambda12._#lambda13") [Var 2]])),Func ("Prelude","sequenceIO._#lambda12._#lambda13") 2 Private (FuncType (TVar 937) (FuncType (TCons ("Prelude","[]") [TVar 937]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 937]]))) (Rule [1,2] (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude",":") [Var 1,Var 2]])),Func ("Prelude","sequenceIO_") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","IO") [TVar 0]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","foldr") [Comb (FuncPartCall 2) ("Prelude",">>") [],Comb FuncCall ("Prelude","done") []])),Func ("Prelude","mapIO") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 1]]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","sequenceIO") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]])),Func ("Prelude","mapIO_") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("Prelude","sequenceIO_") [],Comb (FuncPartCall 1) ("Prelude","map") [Var 1]])),Func ("Prelude","?") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (Rule [1,2] (Or (Var 1) (Var 2))),Func ("Prelude","getSearchTree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","SearchTree") [TVar 0]])) (External "Prelude.getSearchTree"),Func ("Prelude","allValuesD") 1 Public (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Value") [2]) (Comb ConsCall ("Prelude",":") [Var 2,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude","Fail") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","Suspend") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude","Choice") [3]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("Prelude","allValuesD") []],Var 3])])),Func ("Prelude","allValuesB") 1 Public (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude","allValuesB.unfoldOrs.692") [Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude","[]") []]])),Func ("Prelude","allValuesB.partition.692") 2 Private (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","Value") [3]) (Let [(4,Var 2)] (Let [(5,Comb FuncCall ("Prelude","allValuesB.partition.692._#selFP34#vs") [Var 4])] (Let [(6,Comb FuncCall ("Prelude","allValuesB.partition.692._#selFP35#ors") [Var 4])] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 3,Var 5],Var 6])))),Branch (Pattern ("Prelude","Choice") [7]) (Let [(8,Var 2)] (Let [(9,Comb FuncCall ("Prelude","allValuesB.partition.692._#selFP37#vs") [Var 8])] (Let [(10,Comb FuncCall ("Prelude","allValuesB.partition.692._#selFP38#ors") [Var 8])] (Comb ConsCall ("Prelude","(,)") [Var 9,Comb FuncCall ("Prelude","++") [Var 7,Var 10]])))),Branch (Pattern ("Prelude","Fail") []) (Var 2),Branch (Pattern ("Prelude","Suspend") []) (Var 2)])),Func ("Prelude","allValuesB.partition.692._#selFP34#vs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1001],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1001]]]) (TCons ("Prelude","[]") [TVar 1001])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","allValuesB.partition.692._#selFP35#ors") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1001],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1001]]]) (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1001]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","allValuesB.partition.692._#selFP37#vs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1001],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1001]]]) (TCons ("Prelude","[]") [TVar 1001])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","allValuesB.partition.692._#selFP38#ors") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1001],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1001]]]) (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1001]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","allValuesB.unfoldOrs.692") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Let [(4,Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("Prelude","allValuesB.partition.692") [],Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []],Comb ConsCall ("Prelude",":") [Var 2,Var 3]])] (Let [(5,Comb FuncCall ("Prelude","allValuesB.unfoldOrs.692._#selFP40#vals") [Var 4])] (Let [(6,Comb FuncCall ("Prelude","allValuesB.unfoldOrs.692._#selFP41#ors") [Var 4])] (Comb FuncCall ("Prelude","++") [Var 5,Comb FuncCall ("Prelude","allValuesB.unfoldOrs.692") [Var 6]]))))])),Func ("Prelude","allValuesB.unfoldOrs.692._#selFP40#vals") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1014],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1014]]]) (TCons ("Prelude","[]") [TVar 1014])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Prelude","allValuesB.unfoldOrs.692._#selFP41#ors") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1014],TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1014]]]) (TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 1014]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Prelude","inject") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Success") [])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Success") [])) (FuncType (TVar 0) (TCons ("Prelude","Success") [])))) (Rule [1,2] (Comb (FuncPartCall 1) ("Prelude","inject._#lambda14") [Var 1,Var 2])),Func ("Prelude","inject._#lambda14") 3 Private (FuncType (FuncType (TVar 1025) (TCons ("Prelude","Success") [])) (FuncType (FuncType (TVar 1025) (TCons ("Prelude","Success") [])) (FuncType (TVar 1025) (TCons ("Prelude","Success") [])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","&") [Comb FuncCall ("Prelude","apply") [Var 2,Var 3],Comb FuncCall ("Prelude","apply") [Var 1,Var 3]])),Func ("Prelude","PEVAL") 1 Public (FuncType (TVar 0) (TVar 0)) (Rule [1] (Var 1)),Func ("Prelude","apply") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.apply"),Func ("Prelude","cond") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TVar 0) (TVar 0))) (External "Prelude.cond"),Func ("Prelude","unknown") 0 Public (TVar 0) (Rule [] (Free [1] (Var 1))),Func ("Prelude","=:<=") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Success") []))) (External "Prelude.=:<=")] [Op ("Prelude","!!") InfixlOp 9,Op ("Prelude",".") InfixrOp 9,Op ("Prelude","*") InfixlOp 7,Op ("Prelude","*^") InfixlOp 7,Op ("Prelude","div") InfixlOp 7,Op ("Prelude","mod") InfixlOp 7,Op ("Prelude","+") InfixlOp 6,Op ("Prelude","+^") InfixlOp 6,Op ("Prelude","-") InfixlOp 6,Op ("Prelude","-^") InfixlOp 6,Op ("Prelude","++") InfixrOp 5,Op ("Prelude","=:=") InfixOp 4,Op ("Prelude","==") InfixOp 4,Op ("Prelude","===") InfixOp 4,Op ("Prelude","/=") InfixOp 4,Op ("Prelude","<") InfixOp 4,Op ("Prelude",">") InfixOp 4,Op ("Prelude","<=") InfixOp 4,Op ("Prelude",">=") InfixOp 4,Op ("Prelude","=:<=") InfixOp 4,Op ("Prelude","<^") InfixOp 4,Op ("Prelude","<=^") InfixOp 4,Op ("Prelude",">^") InfixOp 4,Op ("Prelude",">=^") InfixOp 4,Op ("Prelude","elem") InfixOp 4,Op ("Prelude","notElem") InfixOp 4,Op ("Prelude","&&") InfixrOp 3,Op ("Prelude","||") InfixrOp 2,Op ("Prelude",">>") InfixlOp 1,Op ("Prelude",">>=") InfixlOp 1,Op ("Prelude","$") InfixrOp 0,Op ("Prelude","$!") InfixrOp 0,Op ("Prelude","$!!") InfixrOp 0,Op ("Prelude","$#") InfixrOp 0,Op ("Prelude","$##") InfixrOp 0,Op ("Prelude","seq") InfixrOp 0,Op ("Prelude","&") InfixrOp 0,Op ("Prelude","&>") InfixrOp 0,Op ("Prelude","?") InfixrOp 0]
+ src/lib/Curry/Module/.curry/Prelude.fint view
@@ -0,0 +1,1 @@+Prog "Prelude" [] [Type ("Prelude","()") Public [] [Cons ("Prelude","()") 0 Public []],Type ("Prelude","[]") Public [0] [Cons ("Prelude","[]") 0 Public [],Cons ("Prelude",":") 2 Public [TVar 0,TCons ("Prelude","[]") [TVar 0]]],Type ("Prelude","(,)") Public [0,1] [Cons ("Prelude","(,)") 2 Public [TVar 0,TVar 1]],Type ("Prelude","(,,)") Public [0,1,2] [Cons ("Prelude","(,,)") 3 Public [TVar 0,TVar 1,TVar 2]],Type ("Prelude","(,,,)") Public [0,1,2,3] [Cons ("Prelude","(,,,)") 4 Public [TVar 0,TVar 1,TVar 2,TVar 3]],Type ("Prelude","(,,,,)") Public [0,1,2,3,4] [Cons ("Prelude","(,,,,)") 5 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4]],Type ("Prelude","(,,,,,)") Public [0,1,2,3,4,5] [Cons ("Prelude","(,,,,,)") 6 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5]],Type ("Prelude","(,,,,,,)") Public [0,1,2,3,4,5,6] [Cons ("Prelude","(,,,,,,)") 7 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6]],Type ("Prelude","(,,,,,,,)") Public [0,1,2,3,4,5,6,7] [Cons ("Prelude","(,,,,,,,)") 8 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7]],Type ("Prelude","(,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8] [Cons ("Prelude","(,,,,,,,,)") 9 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8]],Type ("Prelude","(,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9] [Cons ("Prelude","(,,,,,,,,,)") 10 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9]],Type ("Prelude","(,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10] [Cons ("Prelude","(,,,,,,,,,,)") 11 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10]],Type ("Prelude","(,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11] [Cons ("Prelude","(,,,,,,,,,,,)") 12 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11]],Type ("Prelude","(,,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11,12] [Cons ("Prelude","(,,,,,,,,,,,,)") 13 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12]],Type ("Prelude","(,,,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11,12,13] [Cons ("Prelude","(,,,,,,,,,,,,,)") 14 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12,TVar 13]],Type ("Prelude","(,,,,,,,,,,,,,,)") Public [0,1,2,3,4,5,6,7,8,9,10,11,12,13,14] [Cons ("Prelude","(,,,,,,,,,,,,,,)") 15 Public [TVar 0,TVar 1,TVar 2,TVar 3,TVar 4,TVar 5,TVar 6,TVar 7,TVar 8,TVar 9,TVar 10,TVar 11,TVar 12,TVar 13,TVar 14]],TypeSyn ("Prelude","String") Public [] (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]),Type ("Prelude","Float") Public [] [],Type ("Prelude","Char") Public [] [],Type ("Prelude","Bool") Public [] [Cons ("Prelude","False") 0 Public [],Cons ("Prelude","True") 0 Public []],Type ("Prelude","Ordering") Public [] [Cons ("Prelude","LT") 0 Public [],Cons ("Prelude","EQ") 0 Public [],Cons ("Prelude","GT") 0 Public []],Type ("Prelude","Nat") Public [] [Cons ("Prelude","IHi") 0 Public [],Cons ("Prelude","O") 1 Public [TCons ("Prelude","Nat") []],Cons ("Prelude","I") 1 Public [TCons ("Prelude","Nat") []]],Type ("Prelude","Int") Public [] [Cons ("Prelude","Neg") 1 Public [TCons ("Prelude","Nat") []],Cons ("Prelude","Zero") 0 Public [],Cons ("Prelude","Pos") 1 Public [TCons ("Prelude","Nat") []]],Type ("Prelude","Success") Public [] [Cons ("Prelude","Success") 0 Public []],Type ("Prelude","Maybe") Public [0] [Cons ("Prelude","Nothing") 0 Public [],Cons ("Prelude","Just") 1 Public [TVar 0]],Type ("Prelude","Either") Public [0,1] [Cons ("Prelude","Left") 1 Public [TVar 0],Cons ("Prelude","Right") 1 Public [TVar 1]],Type ("Prelude","IO") Public [0] [],Type ("Prelude","SearchTree") Public [0] [Cons ("Prelude","Fail") 0 Public [],Cons ("Prelude","Value") 1 Public [TVar 0],Cons ("Prelude","Choice") 1 Public [TCons ("Prelude","[]") [TCons ("Prelude","SearchTree") [TVar 0]]],Cons ("Prelude","Suspend") 0 Public []]] [Func ("Prelude",".") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 0)) (FuncType (TVar 2) (TVar 1)))) (Rule [] (Var 0)),Func ("Prelude","id") 1 Public (FuncType (TVar 0) (TVar 0)) (Rule [] (Var 0)),Func ("Prelude","const") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (Rule [] (Var 0)),Func ("Prelude","curry") 3 Public (FuncType (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 2)) (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2)))) (Rule [] (Var 0)),Func ("Prelude","uncurry") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 2))) (Rule [] (Var 0)),Func ("Prelude","flip") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TVar 1) (FuncType (TVar 0) (TVar 2)))) (Rule [] (Var 0)),Func ("Prelude","until") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))) (Rule [] (Var 0)),Func ("Prelude","$") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (Rule [] (Var 0)),Func ("Prelude","$!") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$!"),Func ("Prelude","$!!") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$!!"),Func ("Prelude","$#") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$#"),Func ("Prelude","$##") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.$##"),Func ("Prelude","ensureSpine") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","seq") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (Rule [] (Var 0)),Func ("Prelude","error") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [] (Var 0)),Func ("Prelude","prim_error") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (External "Prelude.prim_error"),Func ("Prelude","failed") 0 Public (TVar 0) (External "Prelude.failed"),Func ("Prelude","&&") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","||") 2 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","not") 1 Public (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","otherwise") 0 Public (TCons ("Prelude","Bool") []) (Rule [] (Var 0)),Func ("Prelude","if_then_else") 3 Public (FuncType (TCons ("Prelude","Bool") []) (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0)))) (Rule [] (Var 0)),Func ("Prelude","isLT") 1 Public (FuncType (TCons ("Prelude","Ordering") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","isGT") 1 Public (FuncType (TCons ("Prelude","Ordering") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","isEQ") 1 Public (FuncType (TCons ("Prelude","Ordering") []) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","compare") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Prelude","<") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude",">") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","<=") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude",">=") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","max") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","min") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","==") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (External "Prelude.=="),Func ("Prelude","/=") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","fst") 1 Public (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 0)) (Rule [] (Var 0)),Func ("Prelude","snd") 1 Public (FuncType (TCons ("Prelude","(,)") [TVar 0,TVar 1]) (TVar 1)) (Rule [] (Var 0)),Func ("Prelude","head") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (Rule [] (Var 0)),Func ("Prelude","tail") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","null") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","++") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","length") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","!!") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","Int") []) (TVar 0))) (Rule [] (Var 0)),Func ("Prelude","map") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 1]))) (Rule [] (Var 0)),Func ("Prelude","foldl") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)))) (Rule [] (Var 0)),Func ("Prelude","foldl1") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0))) (Rule [] (Var 0)),Func ("Prelude","foldr") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 1)))) (Rule [] (Var 0)),Func ("Prelude","foldr1") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0))) (Rule [] (Var 0)),Func ("Prelude","filter") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","zip") 2 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]))) (Rule [] (Var 0)),Func ("Prelude","zip3") 3 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 1,TVar 2]])))) (Rule [] (Var 0)),Func ("Prelude","zipWith") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (TVar 2))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 2])))) (Rule [] (Var 0)),Func ("Prelude","zipWith3") 4 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TVar 2) (TVar 3)))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 1]) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TCons ("Prelude","[]") [TVar 3]))))) (Rule [] (Var 0)),Func ("Prelude","unzip") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 1]])) (Rule [] (Var 0)),Func ("Prelude","unzip3") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 1,TVar 2]]) (TCons ("Prelude","(,,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 1],TCons ("Prelude","[]") [TVar 2]])) (Rule [] (Var 0)),Func ("Prelude","concat") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 0]]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","concatMap") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 1]))) (Rule [] (Var 0)),Func ("Prelude","iterate") 2 Public (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","repeat") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","replicate") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","take") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","drop") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","splitAt") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [] (Var 0)),Func ("Prelude","takeWhile") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","dropWhile") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Prelude","span") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [] (Var 0)),Func ("Prelude","break") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],TCons ("Prelude","[]") [TVar 0]]))) (Rule [] (Var 0)),Func ("Prelude","lines") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("Prelude","unlines") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Prelude","words") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("Prelude","unwords") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Prelude","reverse") 0 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","and") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","or") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Prelude","any") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","all") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","elem") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","notElem") 1 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","lookup") 2 Public (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [] (Var 0)),Func ("Prelude","enumFrom") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("Prelude","enumFromThen") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("Prelude","enumFromTo") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("Prelude","enumFromThenTo") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (Rule [] (Var 0)),Func ("Prelude","ord") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","prim_ord") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (External "Prelude.prim_ord"),Func ("Prelude","chr") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Char") [])) (Rule [] (Var 0)),Func ("Prelude","prim_chr") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Char") [])) (External "Prelude.prim_chr"),Func ("Prelude","succ") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") [])) (Rule [] (Var 0)),Func ("Prelude","+^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") []))) (Rule [] (Var 0)),Func ("Prelude","cmpNat") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Prelude","cmpNatLT") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Prelude","cmpNatGT") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Prelude","<^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude",">^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","<=^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude",">=^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Prelude","*^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") []))) (Rule [] (Var 0)),Func ("Prelude","pred") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") [])) (Rule [] (Var 0)),Func ("Prelude","inc") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","dec") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","mult2") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","-^") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","div2") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Nat") [])) (Rule [] (Var 0)),Func ("Prelude","mod2") 1 Public (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","divmodNat") 2 Public (FuncType (TCons ("Prelude","Nat") []) (FuncType (TCons ("Prelude","Nat") []) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("Prelude","+") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","-") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","*") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","divmod") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("Prelude","div") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","mod") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Prelude","negate") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Prelude","success") 0 Public (TCons ("Prelude","Success") []) (Rule [] (Var 0)),Func ("Prelude","=:=") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Success") []))) (Rule [] (Var 0)),Func ("Prelude","===") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (External "Prelude.==="),Func ("Prelude","&") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TCons ("Prelude","Success") []) (TCons ("Prelude","Success") []))) (External "Prelude.&"),Func ("Prelude","&>") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TVar 0) (TVar 0))) (Rule [] (Var 0)),Func ("Prelude","maybe") 3 Public (FuncType (TVar 0) (FuncType (FuncType (TVar 1) (TVar 0)) (FuncType (TCons ("Prelude","Maybe") [TVar 1]) (TVar 0)))) (Rule [] (Var 0)),Func ("Prelude","either") 3 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (FuncType (TVar 2) (TVar 1)) (FuncType (TCons ("Prelude","Either") [TVar 0,TVar 2]) (TVar 1)))) (Rule [] (Var 0)),Func ("Prelude",">>=") 2 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (TCons ("Prelude","IO") [TVar 1]))) (External "Prelude.>>="),Func ("Prelude","return") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (External "Prelude.return"),Func ("Prelude",">>") 2 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (TCons ("Prelude","IO") [TVar 1]) (TCons ("Prelude","IO") [TVar 1]))) (Rule [] (Var 0)),Func ("Prelude","done") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","()") []]) (Rule [] (Var 0)),Func ("Prelude","putChar") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Prelude","prim_putChar") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "Prelude.prim_putChar"),Func ("Prelude","getChar") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Char") []]) (External "Prelude.getChar"),Func ("Prelude","readFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("Prelude","prim_readFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (External "Prelude.prim_readFile"),Func ("Prelude","writeFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("Prelude","prim_writeFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Prelude.prim_writeFile"),Func ("Prelude","appendFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("Prelude","prim_appendFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Prelude.prim_appendFile"),Func ("Prelude","catchFail") 2 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TVar 0]))) (External "Prelude.catchFail"),Func ("Prelude","putStr") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Prelude","putStrLn") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Prelude","getLine") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (Rule [] (Var 0)),Func ("Prelude","show") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Prelude","prim_show") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Prelude.prim_show"),Func ("Prelude","print") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Prelude","doSolve") 1 Public (FuncType (TCons ("Prelude","Success") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Prelude","sequenceIO") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","IO") [TVar 0]]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 0]])) (Rule [] (Var 0)),Func ("Prelude","sequenceIO_") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","IO") [TVar 0]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("Prelude","mapIO") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 1]]))) (Rule [] (Var 0)),Func ("Prelude","mapIO_") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("Prelude","?") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (Rule [] (Var 0)),Func ("Prelude","getSearchTree") 1 Public (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","SearchTree") [TVar 0]])) (External "Prelude.getSearchTree"),Func ("Prelude","allValuesD") 1 Public (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","allValuesB") 1 Public (FuncType (TCons ("Prelude","SearchTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("Prelude","inject") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","Success") [])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Success") [])) (FuncType (TVar 0) (TCons ("Prelude","Success") [])))) (Rule [] (Var 0)),Func ("Prelude","PEVAL") 1 Public (FuncType (TVar 0) (TVar 0)) (Rule [] (Var 0)),Func ("Prelude","apply") 2 Public (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TVar 1))) (External "Prelude.apply"),Func ("Prelude","cond") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TVar 0) (TVar 0))) (External "Prelude.cond"),Func ("Prelude","unknown") 0 Public (TVar 0) (Rule [] (Var 0)),Func ("Prelude","=:<=") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Success") []))) (External "Prelude.=:<=")] [Op ("Prelude","!!") InfixlOp 9,Op ("Prelude",".") InfixrOp 9,Op ("Prelude","*") InfixlOp 7,Op ("Prelude","*^") InfixlOp 7,Op ("Prelude","div") InfixlOp 7,Op ("Prelude","mod") InfixlOp 7,Op ("Prelude","+") InfixlOp 6,Op ("Prelude","+^") InfixlOp 6,Op ("Prelude","-") InfixlOp 6,Op ("Prelude","-^") InfixlOp 6,Op ("Prelude","++") InfixrOp 5,Op ("Prelude","=:=") InfixOp 4,Op ("Prelude","==") InfixOp 4,Op ("Prelude","===") InfixOp 4,Op ("Prelude","/=") InfixOp 4,Op ("Prelude","<") InfixOp 4,Op ("Prelude",">") InfixOp 4,Op ("Prelude","<=") InfixOp 4,Op ("Prelude",">=") InfixOp 4,Op ("Prelude","=:<=") InfixOp 4,Op ("Prelude","<^") InfixOp 4,Op ("Prelude","<=^") InfixOp 4,Op ("Prelude",">^") InfixOp 4,Op ("Prelude",">=^") InfixOp 4,Op ("Prelude","elem") InfixOp 4,Op ("Prelude","notElem") InfixOp 4,Op ("Prelude","&&") InfixrOp 3,Op ("Prelude","||") InfixrOp 2,Op ("Prelude",">>") InfixlOp 1,Op ("Prelude",">>=") InfixlOp 1,Op ("Prelude","$") InfixrOp 0,Op ("Prelude","$!") InfixrOp 0,Op ("Prelude","$!!") InfixrOp 0,Op ("Prelude","$#") InfixrOp 0,Op ("Prelude","$##") InfixrOp 0,Op ("Prelude","seq") InfixrOp 0,Op ("Prelude","&") InfixrOp 0,Op ("Prelude","&>") InfixrOp 0,Op ("Prelude","?") InfixrOp 0]
+ src/lib/Curry/Module/.curry/Prelude.uacy view
@@ -0,0 +1,168 @@+CurryProg "Prelude"+ []+ [CType ("Prelude","Float") Public [] [],+  CType ("Prelude","Char") Public [] [],+  CTypeSyn ("Prelude","String") Public [] (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]),+  CType ("Prelude","Bool") Public [] [CCons ("Prelude","False") 0 Public [],CCons ("Prelude","True") 0 Public []],+  CType ("Prelude","Ordering") Public [] [CCons ("Prelude","LT") 0 Public [],CCons ("Prelude","EQ") 0 Public [],CCons ("Prelude","GT") 0 Public []],+  CType ("Prelude","Nat") Public [] [CCons ("Prelude","IHi") 0 Public [],CCons ("Prelude","O") 1 Public [CTCons ("Prelude","Nat") []],CCons ("Prelude","I") 1 Public [CTCons ("Prelude","Nat") []]],+  CType ("Prelude","Int") Public [] [CCons ("Prelude","Neg") 1 Public [CTCons ("Prelude","Nat") []],CCons ("Prelude","Zero") 0 Public [],CCons ("Prelude","Pos") 1 Public [CTCons ("Prelude","Nat") []]],+  CType ("Prelude","Success") Public [] [CCons ("Prelude","Success") 0 Public []],+  CType ("Prelude","Maybe") Public [(0,"a")] [CCons ("Prelude","Nothing") 0 Public [],CCons ("Prelude","Just") 1 Public [CTVar (0,"a")]],+  CType ("Prelude","Either") Public [(0,"a"),(1,"b")] [CCons ("Prelude","Left") 1 Public [CTVar (0,"a")],CCons ("Prelude","Right") 1 Public [CTVar (1,"b")]],+  CType ("Prelude","IO") Public [(0,"_")] [],+  CType ("Prelude","SearchTree") Public [(0,"a")] [CCons ("Prelude","Fail") 0 Public [],CCons ("Prelude","Value") 1 Public [CTVar (0,"a")],CCons ("Prelude","Choice") 1 Public [CTCons ("Prelude","[]") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]]],CCons ("Prelude","Suspend") 0 Public []]]+ [CFunc ("Prelude","!!") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","Int") []) (CTVar (0,"a")))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")],CPVar (2,"n")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"n"))) (CLit (CIntc 0)),CVar (0,"x")),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (2,"n"))) (CLit (CIntc 0)),CApply (CApply (CSymbol ("Prelude","!!")) (CVar (1,"xs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (2,"n"))) (CLit (CIntc 1))))] []]),+  CFunc ("Prelude","$") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CVar (0,"f")) (CVar (1,"x")))] []]),+  CFunc ("Prelude","$!") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$!"),+  CFunc ("Prelude","$!!") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$!!"),+  CFunc ("Prelude","$#") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$#"),+  CFunc ("Prelude","$##") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "$##"),+  CFunc ("Prelude","&") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTCons ("Prelude","Success") []) (CTCons ("Prelude","Success") []))) (CExternal "&"),+  CFunc ("Prelude","&&") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"x")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","&>") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"x")] [(CVar (0,"c"),CVar (1,"x"))] []]),+  CFunc ("Prelude","*") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","Pos") [CPVar (0,"x")],CPComb ("Prelude","Pos") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (0,"x"))) (CVar (1,"y"))))] [],CRule [CPComb ("Prelude","Pos") [CPVar (2,"x")],CPComb ("Prelude","Neg") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (4,"x")],CPComb ("Prelude","Neg") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (4,"x"))) (CVar (5,"y"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (6,"x")],CPComb ("Prelude","Pos") [CPVar (7,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (6,"x"))) (CVar (7,"y"))))] [],CRule [CPComb ("Prelude","Zero") [],CPVar (8,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (9,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (10,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] []]),+  CFunc ("Prelude","*^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPVar (0,"y")] [(CSymbol ("Prelude","success"),CVar (0,"y"))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"x")],CPVar (2,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+^")) (CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (2,"y"))) (CVar (1,"x"))))) (CVar (2,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (3,"x")],CPVar (4,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","*^")) (CVar (3,"x"))) (CVar (4,"y"))))] []]),+  CFunc ("Prelude","+") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","Pos") [CPVar (0,"x")],CPComb ("Prelude","Pos") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (0,"x"))) (CVar (1,"y"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (2,"x")],CPComb ("Prelude","Neg") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","Pos") [CPVar (4,"x")],CPComb ("Prelude","Neg") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","-^")) (CVar (4,"x"))) (CVar (5,"y")))] [],CRule [CPComb ("Prelude","Neg") [CPVar (6,"x")],CPComb ("Prelude","Pos") [CPVar (7,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","-^")) (CVar (7,"y"))) (CVar (6,"x")))] [],CRule [CPComb ("Prelude","Zero") [],CPVar (8,"x")] [(CSymbol ("Prelude","success"),CVar (8,"x"))] [],CRule [CPAs (10,"x") (CPComb ("Prelude","Pos") [CPVar (9,"_")]),CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CVar (10,"x"))] [],CRule [CPAs (12,"x") (CPComb ("Prelude","Neg") [CPVar (11,"_")]),CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CVar (12,"x"))] []]),+  CFunc ("Prelude","++") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []]),+  CFunc ("Prelude","+^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") []))) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (0,"x")],CPComb ("Prelude","O") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (0,"x"))) (CVar (1,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (2,"x")],CPComb ("Prelude","I") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (4,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CVar (4,"x")))] [],CRule [CPComb ("Prelude","I") [CPVar (5,"x")],CPComb ("Prelude","O") [CPVar (6,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CApply (CSymbol ("Prelude","+^")) (CVar (5,"x"))) (CVar (6,"y"))))] [],CRule [CPComb ("Prelude","I") [CPVar (7,"x")],CPComb ("Prelude","I") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CApply (CSymbol ("Prelude","+^")) (CApply (CSymbol ("Prelude","succ")) (CVar (7,"x")))) (CVar (8,"y"))))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CSymbol ("Prelude","succ")) (CVar (9,"x"))))] [],CRule [CPComb ("Prelude","IHi") [],CPVar (10,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","succ")) (CVar (10,"y")))] []]),+  CFunc ("Prelude","-") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPComb ("Prelude","Neg") [CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","Pos")) (CVar (1,"y"))))] [],CRule [CPVar (2,"x"),CPComb ("Prelude","Pos") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"x"))) (CApply (CSymbol ("Prelude","Neg")) (CVar (3,"y"))))] [],CRule [CPVar (4,"x"),CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CVar (4,"x"))] []]),+  CFunc ("Prelude","-^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPVar (0,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","inc")) (CApply (CSymbol ("Prelude","Neg")) (CVar (0,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (1,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","pred")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"x")))))] [],CRule [CPComb ("Prelude","O") [CPVar (2,"x")],CPComb ("Prelude","O") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (2,"x"))) (CVar (3,"y"))))] [],CRule [CPComb ("Prelude","O") [CPVar (4,"x")],CPComb ("Prelude","I") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","dec")) (CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (4,"x"))) (CVar (5,"y")))))] [],CRule [CPComb ("Prelude","I") [CPVar (6,"x")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (6,"x"))))] [],CRule [CPComb ("Prelude","I") [CPVar (7,"x")],CPComb ("Prelude","O") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","inc")) (CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (7,"x"))) (CVar (8,"y")))))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","I") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","mult2")) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (9,"x"))) (CVar (10,"y"))))] []]),+  CFunc ("Prelude",".") 2 Public (CFuncType (CFuncType (CTVar (0,"b")) (CTVar (1,"c"))) (CFuncType (CFuncType (CTVar (2,"a")) (CTVar (0,"b"))) (CFuncType (CTVar (2,"a")) (CTVar (1,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"g")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"x")] (CApply (CVar (0,"f")) (CApply (CVar (1,"g")) (CVar (2,"x")))))] []]),+  CFunc ("Prelude","/=") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","not")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","<") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","LT")))] []]),+  CFunc ("Prelude","<=") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","GT")))] []]),+  CFunc ("Prelude","<=^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","isGT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y")))))] []]),+  CFunc ("Prelude","<^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","isLT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","=:<=") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") []))) (CExternal "=:<="),+  CFunc ("Prelude","=:=") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CApply (CApply (CSymbol ("Prelude","===")) (CVar (0,"x"))) (CVar (1,"y")),CSymbol ("Prelude","success"))] []]),+  CFunc ("Prelude","==") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CExternal "=="),+  CFunc ("Prelude","===") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CExternal "==="),+  CFunc ("Prelude",">") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","GT")))] []]),+  CFunc ("Prelude",">=") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y")))) (CSymbol ("Prelude","LT")))] []]),+  CFunc ("Prelude",">=^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","isLT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y")))))] []]),+  CFunc ("Prelude",">>") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"_")]) (CFuncType (CTCons ("Prelude","IO") [CTVar (1,"b")]) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"a"),CPVar (1,"b")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CVar (0,"a"))) (CApply (CSymbol ("Prelude","const")) (CVar (1,"b"))))] []]),+  CFunc ("Prelude",">>=") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CExternal ">>="),+  CFunc ("Prelude",">^") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","isGT")) (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","?") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPVar (2,"_"),CPVar (3,"y")] [(CSymbol ("Prelude","success"),CVar (3,"y"))] []]),+  CFunc ("Prelude","PEVAL") 1 Public (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","all") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","and"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"p"))))] []]),+  CFunc ("Prelude","allValuesB") 1 Public (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"st")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","unfoldOrs")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"st"))) (CSymbol ("Prelude","[]"))))] [CLocalFunc (CFunc ("Prelude","partition") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","Value") [CPVar (1,"x")],CPVar (2,"y")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"vs"),CPVar (4,"ors")]) (CVar (2,"y")) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (3,"vs")))) (CVar (4,"ors"))))] [],CRule [CPComb ("Prelude","Choice") [CPVar (5,"xs")],CPVar (6,"y")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (7,"vs"),CPVar (8,"ors")]) (CVar (6,"y")) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (7,"vs"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (5,"xs"))) (CVar (8,"ors")))))] [],CRule [CPComb ("Prelude","Fail") [],CPVar (9,"y")] [(CSymbol ("Prelude","success"),CVar (9,"y"))] [],CRule [CPComb ("Prelude","Suspend") [],CPVar (10,"y")] [(CSymbol ("Prelude","success"),CVar (10,"y"))] []])),CLocalFunc (CFunc ("Prelude","unfoldOrs") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"vals"),CPVar (4,"ors")]) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","partition"))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CVar (2,"xs")))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (3,"vals"))) (CApply (CSymbol ("Prelude","unfoldOrs")) (CVar (4,"ors")))))] []]))]]),+  CFunc ("Prelude","allValuesD") 1 Public (CFuncType (CTCons ("Prelude","SearchTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","Value") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude","Fail") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Suspend") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Choice") [CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("Prelude","allValuesD"))) (CVar (1,"xs")))] []]),+  CFunc ("Prelude","and") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","&&"))) (CSymbol ("Prelude","True")))] []]),+  CFunc ("Prelude","any") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","or"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"p"))))] []]),+  CFunc ("Prelude","appendFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"fn"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_appendFile"))) (CVar (0,"fn")))) (CVar (1,"s")))] []]),+  CFunc ("Prelude","apply") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b")))) (CExternal "apply"),+  CFunc ("Prelude","break") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"p")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","span")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CVar (0,"p"))))] []]),+  CFunc ("Prelude","catchFail") 2 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (0,"a")]))) (CExternal "catchFail"),+  CFunc ("Prelude","chr") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Char") [])) (CRules CFlex [CRule [CPVar (0,"i")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_chr"))) (CVar (0,"i")))] []]),+  CFunc ("Prelude","cmpNat") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","EQ"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","O") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","I") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","O") [CPVar (2,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","I") [CPVar (3,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","O") [CPVar (4,"x")],CPComb ("Prelude","O") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (4,"x"))) (CVar (5,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (6,"x")],CPComb ("Prelude","I") [CPVar (7,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (6,"x"))) (CVar (7,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (8,"x")],CPComb ("Prelude","I") [CPVar (9,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (8,"x"))) (CVar (9,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (10,"x")],CPComb ("Prelude","O") [CPVar (11,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (10,"x"))) (CVar (11,"y")))] []]),+  CFunc ("Prelude","cmpNatGT") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","O") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","IHi") [],CPComb ("Prelude","I") [CPVar (2,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","O") [CPVar (3,"x")],CPComb ("Prelude","O") [CPVar (4,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (3,"x"))) (CVar (4,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (5,"x")],CPComb ("Prelude","I") [CPVar (6,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (5,"x"))) (CVar (6,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (7,"x")],CPComb ("Prelude","I") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (7,"x"))) (CVar (8,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","O") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (9,"x"))) (CVar (10,"y")))] []]),+  CFunc ("Prelude","cmpNatLT") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Prelude","IHi") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","O") [CPVar (1,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","I") [CPVar (2,"_")],CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","O") [CPVar (3,"x")],CPComb ("Prelude","O") [CPVar (4,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (3,"x"))) (CVar (4,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (5,"x")],CPComb ("Prelude","I") [CPVar (6,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (5,"x"))) (CVar (6,"y")))] [],CRule [CPComb ("Prelude","O") [CPVar (7,"x")],CPComb ("Prelude","I") [CPVar (8,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatLT")) (CVar (7,"x"))) (CVar (8,"y")))] [],CRule [CPComb ("Prelude","I") [CPVar (9,"x")],CPComb ("Prelude","O") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNatGT")) (CVar (9,"x"))) (CVar (10,"y")))] []]),+  CFunc ("Prelude","compare") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Prelude","Zero") [],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","EQ"))] [],CRule [CPComb ("Prelude","Zero") [],CPComb ("Prelude","Pos") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","Zero") [],CPComb ("Prelude","Neg") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (2,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (3,"x")],CPComb ("Prelude","Pos") [CPVar (4,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (3,"x"))) (CVar (4,"y")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (5,"_")],CPComb ("Prelude","Neg") [CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (7,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (8,"_")],CPComb ("Prelude","Pos") [CPVar (9,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (10,"x")],CPComb ("Prelude","Neg") [CPVar (11,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (11,"y"))) (CVar (10,"x")))] []]),+  CFunc ("Prelude","concat") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (0,"a")]]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","++"))) (CSymbol ("Prelude","[]"))) (CVar (0,"l")))] []]),+  CFunc ("Prelude","concatMap") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","concat"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Prelude","cond") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CExternal "cond"),+  CFunc ("Prelude","const") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"_")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","curry") 3 Public (CFuncType (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (2,"c"))) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"a"),CPVar (2,"b")] [(CSymbol ("Prelude","success"),CApply (CVar (0,"f")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (1,"a"))) (CVar (2,"b"))))] []]),+  CFunc ("Prelude","dec") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CSymbol ("Prelude","IHi")))] [],CRule [CPComb ("Prelude","Neg") [CPVar (0,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","succ")) (CVar (0,"n"))))] [],CRule [CPComb ("Prelude","Pos") [CPComb ("Prelude","IHi") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Pos") [CPComb ("Prelude","O") [CPVar (1,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","pred")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"n")))))] [],CRule [CPComb ("Prelude","Pos") [CPComb ("Prelude","I") [CPVar (2,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (2,"n"))))] []]),+  CFunc ("Prelude","div") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","fst")) (CApply (CApply (CSymbol ("Prelude","divmod")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","div2") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") [])) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"x")]] [(CSymbol ("Prelude","success"),CVar (1,"x"))] []]),+  CFunc ("Prelude","divmod") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPComb ("Prelude","Zero") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","Zero"))) (CSymbol ("Prelude","Zero")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (1,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CSymbol ("Prelude","[]"))))))))))))))))] [],CRule [CPComb ("Prelude","Pos") [CPVar (2,"x")],CPComb ("Prelude","Pos") [CPVar (3,"y")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (2,"x"))) (CVar (3,"y")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (4,"x")],CPComb ("Prelude","Neg") [CPVar (5,"y")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (6,"d"),CPVar (7,"m")]) (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (4,"x"))) (CVar (5,"y"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","negate")) (CVar (6,"d")))) (CVar (7,"m"))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (8,"_")],CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CSymbol ("Prelude","[]"))))))))))))))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (9,"x")],CPComb ("Prelude","Pos") [CPVar (10,"y")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (11,"d"),CPVar (12,"m")]) (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (9,"x"))) (CVar (10,"y"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","negate")) (CVar (11,"d")))) (CApply (CSymbol ("Prelude","negate")) (CVar (12,"m")))))] [],CRule [CPComb ("Prelude","Neg") [CPVar (13,"x")],CPComb ("Prelude","Neg") [CPVar (14,"y")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (15,"d"),CPVar (16,"m")]) (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CVar (13,"x"))) (CVar (14,"y"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (15,"d"))) (CApply (CSymbol ("Prelude","negate")) (CVar (16,"m")))))] []]),+  CFunc ("Prelude","divmodNat") 2 Public (CFuncType (CTCons ("Prelude","Nat") []) (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"y"))) (CSymbol ("Prelude","IHi")),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CVar (0,"x")))) (CSymbol ("Prelude","Zero"))),(CSymbol ("Prelude","otherwise"),CCase (CApply (CApply (CSymbol ("Prelude","cmpNat")) (CVar (0,"x"))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","EQ") []) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))) (CSymbol ("Prelude","Zero"))),CBranch (CPComb ("Prelude","LT") []) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","Zero"))) (CApply (CSymbol ("Prelude","Pos")) (CVar (0,"x")))),CBranch (CPComb ("Prelude","GT") []) (CCase (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CApply (CSymbol ("Prelude","div2")) (CVar (0,"x")))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Zero") [],CPVar (2,"_")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))) (CApply (CApply (CSymbol ("Prelude","-^")) (CVar (0,"x"))) (CVar (1,"y")))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Pos") [CPVar (3,"d")],CPComb ("Prelude","Zero") []]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (3,"d"))))) (CApply (CSymbol ("Prelude","mod2")) (CVar (0,"x")))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Pos") [CPVar (4,"d")],CPComb ("Prelude","Pos") [CPVar (5,"m")]]) (CCase (CApply (CApply (CSymbol ("Prelude","divmodNat")) (CApply (CApply (CSymbol ("Prelude","shift")) (CVar (0,"x"))) (CVar (5,"m")))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Zero") [],CPVar (6,"m'")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (4,"d"))))) (CVar (6,"m'"))),CBranch (CPComb ("Prelude","(,)") [CPComb ("Prelude","Pos") [CPVar (7,"d'")],CPVar (8,"m'")]) (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CSymbol ("Prelude","Pos")) (CApply (CApply (CSymbol ("Prelude","+^")) (CApply (CSymbol ("Prelude","O")) (CVar (4,"d")))) (CVar (7,"d'"))))) (CVar (8,"m'")))])])])] [CLocalFunc (CFunc ("Prelude","shift") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (2,"_")],CPVar (3,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CVar (3,"n")))] [],CRule [CPComb ("Prelude","I") [CPVar (4,"_")],CPVar (5,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CVar (5,"n")))] []]))]]),+  CFunc ("Prelude","doSolve") 1 Public (CFuncType (CTCons ("Prelude","Success") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"constraint")] [(CVar (0,"constraint"),CSymbol ("Prelude","done"))] []]),+  CFunc ("Prelude","done") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","()")))] []]),+  CFunc ("Prelude","drop") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CVar (1,"l"))) (CApply (CApply (CSymbol ("Prelude","dropp")) (CVar (0,"n"))) (CVar (1,"l"))))] [CLocalFunc (CFunc ("Prelude","dropp") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (3,"m"),CPComb ("Prelude",":") [CPVar (4,"_"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","drop")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"m"))) (CLit (CIntc 1)))) (CVar (5,"xs")))] []]))]]),+  CFunc ("Prelude","dropWhile") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CVar (1,"p"))) (CVar (3,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","either") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"c"))) (CFuncType (CFuncType (CTVar (2,"b")) (CTVar (1,"c"))) (CFuncType (CTCons ("Prelude","Either") [CTVar (0,"a"),CTVar (2,"b")]) (CTVar (1,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"_"),CPComb ("Prelude","Left") [CPVar (2,"x")]] [(CSymbol ("Prelude","success"),CApply (CVar (0,"f")) (CVar (2,"x")))] [],CRule [CPVar (3,"_"),CPVar (4,"g"),CPComb ("Prelude","Right") [CPVar (5,"x")]] [(CSymbol ("Prelude","success"),CApply (CVar (4,"g")) (CVar (5,"x")))] []]),+  CFunc ("Prelude","elem") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","any")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("Prelude","ensureSpine") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Prelude","ensureList"))) (CVar (0,"x0"))))] [CLocalFunc (CFunc ("Prelude","ensureList") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","ensureSpine")) (CVar (1,"xs"))))] []]))]]),+  CFunc ("Prelude","enumFrom") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"n"))) (CApply (CSymbol ("Prelude","enumFrom")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"n"))) (CLit (CIntc 1)))))] []]),+  CFunc ("Prelude","enumFromThen") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"n1"),CPVar (1,"n2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","iterate")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"n2"))) (CVar (0,"n1")))) (CVar (2,"x0"))))) (CVar (0,"n1")))] []]),+  CFunc ("Prelude","enumFromThenTo") 3 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])))) (CRules CFlex [CRule [CPVar (0,"n1"),CPVar (1,"n2"),CPVar (2,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","takeWhile")) (CSymbol ("Prelude","p"))) (CApply (CApply (CSymbol ("Prelude","enumFromThen")) (CVar (0,"n1"))) (CVar (1,"n2"))))] [CLocalFunc (CFunc ("Prelude","p") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"x")] [(CApply (CApply (CSymbol ("Prelude",">=")) (CVar (1,"n2"))) (CVar (0,"n1")),CApply (CApply (CSymbol ("Prelude","<=")) (CVar (3,"x"))) (CVar (2,"m"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",">=")) (CVar (3,"x"))) (CVar (2,"m")))] []]))]]),+  CFunc ("Prelude","enumFromTo") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"m")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (0,"n"))) (CVar (1,"m")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"n"))) (CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (0,"n"))) (CLit (CIntc 1)))) (CVar (1,"m")))))] []]),+  CFunc ("Prelude","error") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_error"))) (CVar (0,"s")))] []]),+  CFunc ("Prelude","failed") 0 Public (CTVar (0,"_")) (CExternal "failed"),+  CFunc ("Prelude","filter") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CVar (1,"p"))) (CVar (3,"xs"))))) (CApply (CApply (CSymbol ("Prelude","filter")) (CVar (1,"p"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","flip") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (0,"a")) (CTVar (2,"c"))))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"x"),CPVar (2,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (0,"f")) (CVar (2,"y"))) (CVar (1,"x")))] []]),+  CFunc ("Prelude","foldl") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (0,"a")))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"z"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CVar (1,"z"))] [],CRule [CPVar (2,"f"),CPVar (3,"z"),CPComb ("Prelude",":") [CPVar (4,"x"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CVar (2,"f"))) (CApply (CApply (CVar (2,"f")) (CVar (3,"z"))) (CVar (4,"x")))) (CVar (5,"xs")))] []]),+  CFunc ("Prelude","foldl1") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldl")) (CVar (0,"f"))) (CVar (1,"x"))) (CVar (2,"xs")))] []]),+  CFunc ("Prelude","foldr") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (1,"b"))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"z"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CVar (1,"z"))] [],CRule [CPVar (2,"f"),CPVar (3,"z"),CPComb ("Prelude",":") [CPVar (4,"x"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (2,"f")) (CVar (4,"x"))) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CVar (2,"f"))) (CVar (3,"z"))) (CVar (5,"xs"))))] []]),+  CFunc ("Prelude","foldr1") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude",":") [CPVar (1,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (1,"x"))] [],CRule [CPVar (2,"f"),CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (2,"f")) (CVar (3,"x1"))) (CApply (CApply (CSymbol ("Prelude","foldr1")) (CVar (2,"f"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x2"))) (CVar (5,"xs")))))] []]),+  CFunc ("Prelude","fst") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"_")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"x"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","getChar") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Char") []]) (CExternal "getChar"),+  CFunc ("Prelude","getLine") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (0,"c")) (CSymbol ("Prelude","getChar")),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CLit (CCharc '\n')))) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]")))) (CDoExpr [CSPat (CPVar (1,"cs")) (CSymbol ("Prelude","getLine")),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CVar (1,"cs"))))]))])] []]),+  CFunc ("Prelude","getSearchTree") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","SearchTree") [CTVar (0,"a")]])) (CExternal "getSearchTree"),+  CFunc ("Prelude","head") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","id") 1 Public (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CVar (0,"x"))] []]),+  CFunc ("Prelude","if_then_else") 3 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"b"),CPVar (1,"t"),CPVar (2,"f")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"b")) [CBranch (CPComb ("Prelude","True") []) (CVar (1,"t")),CBranch (CPComb ("Prelude","False") []) (CVar (2,"f"))])] []]),+  CFunc ("Prelude","inc") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))] [],CRule [CPComb ("Prelude","Pos") [CPVar (0,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","succ")) (CVar (0,"n"))))] [],CRule [CPComb ("Prelude","Neg") [CPComb ("Prelude","IHi") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Neg") [CPComb ("Prelude","O") [CPVar (1,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","pred")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"n")))))] [],CRule [CPComb ("Prelude","Neg") [CPComb ("Prelude","I") [CPVar (2,"n")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","O")) (CVar (2,"n"))))] []]),+  CFunc ("Prelude","inject") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Success") [])))) (CRules CFlex [CRule [CPVar (0,"g"),CPVar (1,"p")] [(CSymbol ("Prelude","success"),CLambda [CPVar (2,"x")] (CApply (CApply (CSymbol ("Prelude","&")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CVar (0,"g")) (CVar (2,"x")))))] []]),+  CFunc ("Prelude","isEQ") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","LT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","GT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","EQ") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] []]),+  CFunc ("Prelude","isGT") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","LT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","GT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","EQ") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","isLT") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","LT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","GT") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","EQ") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","iterate") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CSymbol ("Prelude","iterate")) (CVar (0,"f"))) (CApply (CVar (0,"f")) (CVar (1,"x")))))] []]),+  CFunc ("Prelude","length") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"_")]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"_"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","+")) (CLit (CIntc 1))) (CApply (CSymbol ("Prelude","length")) (CVar (1,"xs"))))] []]),+  CFunc ("Prelude","lines") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"x"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"l"),CPVar (3,"xs_l")]) (CApply (CSymbol ("Prelude","splitline")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (1,"xs")))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"l"))) (CApply (CSymbol ("Prelude","lines")) (CVar (3,"xs_l")))))] [CLocalFunc (CFunc ("Prelude","splitline") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (2,"c"))) (CLit (CCharc '\n')))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CVar (3,"cs")))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ds"),CPVar (5,"es")]) (CApply (CSymbol ("Prelude","splitline")) (CVar (3,"cs"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"c"))) (CVar (4,"ds")))) (CVar (5,"es")))))] []]))]]),+  CFunc ("Prelude","lookup") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","Maybe") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPVar (1,"k"),CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"x"),CPVar (3,"y")],CPVar (4,"xys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"k"))) (CVar (2,"x")),CApply (CSymbol ("Prelude","Just")) (CVar (3,"y"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (1,"k"))) (CVar (4,"xys")))] []]),+  CFunc ("Prelude","map") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"f"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CVar (1,"f")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude","map")) (CVar (1,"f"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","mapIO") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","sequenceIO"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Prelude","mapIO_") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (1,"_")])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","sequenceIO_"))) (CApply (CSymbol ("Prelude","map")) (CVar (0,"f"))))] []]),+  CFunc ("Prelude","max") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","LT") []) (CVar (1,"y")),CBranch (CPVar (2,"_")) (CVar (0,"x"))])] []]),+  CFunc ("Prelude","maybe") 3 Public (CFuncType (CTVar (0,"b")) (CFuncType (CFuncType (CTVar (1,"a")) (CTVar (0,"b"))) (CFuncType (CTCons ("Prelude","Maybe") [CTVar (1,"a")]) (CTVar (0,"b"))))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"_"),CPComb ("Prelude","Nothing") []] [(CSymbol ("Prelude","success"),CVar (0,"n"))] [],CRule [CPVar (2,"_"),CPVar (3,"f"),CPComb ("Prelude","Just") [CPVar (4,"x")]] [(CSymbol ("Prelude","success"),CApply (CVar (3,"f")) (CVar (4,"x")))] []]),+  CFunc ("Prelude","min") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","compare")) (CVar (0,"x"))) (CVar (1,"y"))) [CBranch (CPComb ("Prelude","GT") []) (CVar (1,"y")),CBranch (CPVar (2,"_")) (CVar (0,"x"))])] []]),+  CFunc ("Prelude","mod") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","snd")) (CApply (CApply (CSymbol ("Prelude","divmod")) (CVar (0,"x"))) (CVar (1,"y"))))] []]),+  CFunc ("Prelude","mod2") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))] [],CRule [CPComb ("Prelude","O") [CPVar (0,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CSymbol ("Prelude","IHi")))] []]),+  CFunc ("Prelude","mult2") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Pos") [CPVar (0,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CApply (CSymbol ("Prelude","O")) (CVar (0,"n"))))] [],CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Neg") [CPVar (1,"n")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CApply (CSymbol ("Prelude","O")) (CVar (1,"n"))))] []]),+  CFunc ("Prelude","negate") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","Zero") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Zero"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (0,"x")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Neg")) (CVar (0,"x")))] [],CRule [CPComb ("Prelude","Neg") [CPVar (1,"x")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","Pos")) (CVar (1,"x")))] []]),+  CFunc ("Prelude","not") 1 Public (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","True") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude","False") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] []]),+  CFunc ("Prelude","notElem") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","all")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (0,"x"))) (CVar (1,"x0")))))] []]),+  CFunc ("Prelude","null") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"_"),CPVar (1,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("Prelude","or") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude","||"))) (CSymbol ("Prelude","False")))] []]),+  CFunc ("Prelude","ord") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_ord"))) (CVar (0,"c")))] []]),+  CFunc ("Prelude","otherwise") 0 Public (CTCons ("Prelude","Bool") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] []]),+  CFunc ("Prelude","pred") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") [])) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPComb ("Prelude","IHi") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","IHi"))] [],CRule [CPComb ("Prelude","O") [CPAs (1,"x") (CPComb ("Prelude","O") [CPVar (0,"_")])]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CSymbol ("Prelude","pred")) (CVar (1,"x"))))] [],CRule [CPComb ("Prelude","O") [CPComb ("Prelude","I") [CPVar (2,"x")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CApply (CSymbol ("Prelude","O")) (CVar (2,"x"))))] [],CRule [CPComb ("Prelude","I") [CPVar (3,"x")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CVar (3,"x")))] []]),+  CFunc ("Prelude","prim_appendFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_appendFile"),+  CFunc ("Prelude","prim_chr") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Char") [])) (CExternal "prim_chr"),+  CFunc ("Prelude","prim_error") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_"))) (CExternal "prim_error"),+  CFunc ("Prelude","prim_ord") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CExternal "prim_ord"),+  CFunc ("Prelude","prim_putChar") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_putChar"),+  CFunc ("Prelude","prim_readFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CExternal "prim_readFile"),+  CFunc ("Prelude","prim_show") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "prim_show"),+  CFunc ("Prelude","prim_writeFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_writeFile"),+  CFunc ("Prelude","print") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"t")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","putStrLn")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"t"))))] []]),+  CFunc ("Prelude","putChar") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_putChar"))) (CVar (0,"c")))] []]),+  CFunc ("Prelude","putStr") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","done"))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putChar")) (CVar (0,"c")))) (CApply (CSymbol ("Prelude","putStr")) (CVar (1,"cs"))))] []]),+  CFunc ("Prelude","putStrLn") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"cs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putStr")) (CVar (0,"cs")))) (CApply (CSymbol ("Prelude","putChar")) (CLit (CCharc '\n'))))] []]),+  CFunc ("Prelude","readFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_readFile"))) (CVar (0,"s")))] []]),+  CFunc ("Prelude","repeat") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CApply (CSymbol ("Prelude","repeat")) (CVar (0,"x"))))] []]),+  CFunc ("Prelude","replicate") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","take")) (CVar (0,"n"))) (CApply (CSymbol ("Prelude","repeat")) (CVar (1,"x"))))] []]),+  CFunc ("Prelude","return") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "return"),+  CFunc ("Prelude","reverse") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldl")) (CApply (CSymbol ("Prelude","flip")) (CSymbol ("Prelude",":")))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Prelude","seq") 2 Public (CFuncType (CTVar (0,"_")) (CFuncType (CTVar (1,"a")) (CTVar (1,"a")))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!")) (CApply (CSymbol ("Prelude","const")) (CVar (1,"y")))) (CVar (0,"x")))] []]),+  CFunc ("Prelude","sequenceIO") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","IO") [CTVar (0,"a")]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (0,"c"),CPVar (1,"cs")]] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"x")) (CVar (0,"c")),CSPat (CPVar (3,"xs")) (CApply (CSymbol ("Prelude","sequenceIO")) (CVar (1,"cs"))),CSExpr (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))])] []]),+  CFunc ("Prelude","sequenceIO_") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","IO") [CTVar (0,"_")]]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("Prelude",">>"))) (CSymbol ("Prelude","done")))] []]),+  CFunc ("Prelude","show") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_show"))) (CVar (0,"s")))] []]),+  CFunc ("Prelude","snd") 1 Public (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"_"),CTVar (1,"b")]) (CTVar (1,"b"))) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (0,"_"),CPVar (1,"y")]] [(CSymbol ("Prelude","success"),CVar (1,"y"))] []]),+  CFunc ("Prelude","span") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CApply (CVar (1,"p")) (CVar (2,"x")),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"ys"),CPVar (5,"zs")]) (CApply (CApply (CSymbol ("Prelude","span")) (CVar (1,"p"))) (CVar (3,"xs"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (4,"ys")))) (CVar (5,"zs")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CVar (3,"xs"))))] []]),+  CFunc ("Prelude","splitAt") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (0,"a")]]))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CVar (1,"l")))) (CApply (CApply (CSymbol ("Prelude","splitAtp")) (CVar (0,"n"))) (CVar (1,"l"))))] [CLocalFunc (CFunc ("Prelude","splitAtp") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (3,"m"),CPComb ("Prelude",":") [CPVar (4,"x"),CPVar (5,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (6,"ys"),CPVar (7,"zs")]) (CApply (CApply (CSymbol ("Prelude","splitAt")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"m"))) (CLit (CIntc 1)))) (CVar (5,"xs"))) []] (CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x"))) (CVar (6,"ys")))) (CVar (7,"zs"))))] []]))]]),+  CFunc ("Prelude","succ") 1 Public (CFuncType (CTCons ("Prelude","Nat") []) (CTCons ("Prelude","Nat") [])) (CRules CFlex [CRule [CPComb ("Prelude","O") [CPVar (0,"bs")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","I")) (CVar (0,"bs")))] [],CRule [CPComb ("Prelude","I") [CPVar (1,"bs")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CApply (CSymbol ("Prelude","succ")) (CVar (1,"bs"))))] [],CRule [CPComb ("Prelude","IHi") []] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","O")) (CSymbol ("Prelude","IHi")))] []]),+  CFunc ("Prelude","success") 0 Public (CTCons ("Prelude","Success") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Success"))] []]),+  CFunc ("Prelude","tail") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (0,"_"),CPVar (1,"xs")]] [(CSymbol ("Prelude","success"),CVar (1,"xs"))] []]),+  CFunc ("Prelude","take") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","Neg") [CPVar (0,"_")],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Zero") [],CPVar (2,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (3,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude","Pos") [CPVar (4,"n")],CPComb ("Prelude",":") [CPVar (5,"x"),CPVar (6,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x"))) (CApply (CApply (CSymbol ("Prelude","take")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","Pos")) (CVar (4,"n")))) (CLit (CIntc 1)))) (CVar (6,"xs"))))] []]),+  CFunc ("Prelude","takeWhile") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"p"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (1,"p")) (CVar (2,"x")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","takeWhile")) (CVar (1,"p"))) (CVar (3,"xs"))))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Prelude","uncurry") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]) (CTVar (2,"c")))) (CRules CFlex [CRule [CPVar (0,"f"),CPComb ("Prelude","(,)") [CPVar (1,"a"),CPVar (2,"b")]] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (0,"f")) (CVar (1,"a"))) (CVar (2,"b")))] []]),+  CFunc ("Prelude","unknown") 0 Public (CTVar (0,"a")) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLetDecl [CLocalVar (0,"x")] (CVar (0,"x")))] []]),+  CFunc ("Prelude","unlines") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"ls")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","concatMap")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"x0"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))) (CVar (0,"ls")))] []]),+  CFunc ("Prelude","until") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"p"),CPVar (1,"f"),CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CVar (0,"p")) (CVar (2,"x")))) (CVar (2,"x"))) (CApply (CApply (CApply (CSymbol ("Prelude","until")) (CVar (0,"p"))) (CVar (1,"f"))) (CApply (CVar (1,"f")) (CVar (2,"x")))))] []]),+  CFunc ("Prelude","unwords") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"ws")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"ws"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]"))) (CApply (CApply (CSymbol ("Prelude","foldr1")) (CLambda [CPVar (1,"w"),CPVar (2,"s")] (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"w"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CVar (2,"s")))))) (CVar (0,"ws"))))] []]),+  CFunc ("Prelude","unzip") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (1,"b")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (0,"x"),CPVar (1,"y")],CPVar (2,"ps")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (3,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"y"))) (CVar (4,"ys"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (3,"xs"),CPVar (4,"ys")]) (CApply (CSymbol ("Prelude","unzip")) (CVar (2,"ps"))) []]]),+  CFunc ("Prelude","unzip3") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"a"),CTVar (1,"b"),CTVar (2,"c")]]) (CTCons ("Prelude","(,,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CTCons ("Prelude","[]") [CTVar (1,"b")],CTCons ("Prelude","[]") [CTVar (2,"c")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPComb ("Prelude","(,,)") [CPVar (0,"x"),CPVar (1,"y"),CPVar (2,"z")],CPVar (3,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"x"))) (CVar (4,"xs")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"y"))) (CVar (5,"ys")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"z"))) (CVar (6,"zs"))))] [CLocalPat (CPComb ("Prelude","(,,)") [CPVar (4,"xs"),CPVar (5,"ys"),CPVar (6,"zs")]) (CApply (CSymbol ("Prelude","unzip3")) (CVar (3,"ts"))) []]]),+  CFunc ("Prelude","words") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (1,"s1")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CSymbol ("Prelude","isSpace"))) (CVar (0,"s"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"s1"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]"))) (CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (2,"w"),CPVar (3,"s2")]) (CApply (CApply (CSymbol ("Prelude","break")) (CSymbol ("Prelude","isSpace"))) (CVar (1,"s1"))) []] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"w"))) (CApply (CSymbol ("Prelude","words")) (CVar (3,"s2")))))))] [CLocalFunc (CFunc ("Prelude","isSpace") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' ')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\t')))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\n')))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '\r'))))))] []]))]]),+  CFunc ("Prelude","writeFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"fn"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Prelude","prim_writeFile"))) (CVar (0,"fn")))) (CVar (1,"s")))] []]),+  CFunc ("Prelude","zip") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude",":") [CPVar (5,"y"),CPVar (6,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (3,"x"))) (CVar (5,"y")))) (CApply (CApply (CSymbol ("Prelude","zip")) (CVar (4,"xs"))) (CVar (6,"ys"))))] []]),+  CFunc ("Prelude","zip3") 3 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"c")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"a"),CTVar (1,"b"),CTVar (2,"c")]])))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_"),CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")],CPComb ("Prelude","[]") [],CPVar (4,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"_")],CPComb ("Prelude",":") [CPVar (7,"_"),CPVar (8,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (9,"x"),CPVar (10,"xs")],CPComb ("Prelude",":") [CPVar (11,"y"),CPVar (12,"ys")],CPComb ("Prelude",":") [CPVar (13,"z"),CPVar (14,"zs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (9,"x"))) (CVar (11,"y"))) (CVar (13,"z")))) (CApply (CApply (CApply (CSymbol ("Prelude","zip3")) (CVar (10,"xs"))) (CVar (12,"ys"))) (CVar (14,"zs"))))] []]),+  CFunc ("Prelude","zipWith") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CTVar (2,"c")))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (2,"c")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"_"),CPVar (4,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (5,"f"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPComb ("Prelude",":") [CPVar (8,"y"),CPVar (9,"ys")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CVar (5,"f")) (CVar (6,"x"))) (CVar (8,"y")))) (CApply (CApply (CApply (CSymbol ("Prelude","zipWith")) (CVar (5,"f"))) (CVar (7,"xs"))) (CVar (9,"ys"))))] []]),+  CFunc ("Prelude","zipWith3") 4 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (2,"c")) (CTVar (3,"d"))))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"c")]) (CTCons ("Prelude","[]") [CTVar (3,"d")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_"),CPVar (2,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (3,"_"),CPComb ("Prelude",":") [CPVar (4,"_"),CPVar (5,"_")],CPComb ("Prelude","[]") [],CPVar (6,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (7,"_"),CPComb ("Prelude",":") [CPVar (8,"_"),CPVar (9,"_")],CPComb ("Prelude",":") [CPVar (10,"_"),CPVar (11,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (12,"f"),CPComb ("Prelude",":") [CPVar (13,"x"),CPVar (14,"xs")],CPComb ("Prelude",":") [CPVar (15,"y"),CPVar (16,"ys")],CPComb ("Prelude",":") [CPVar (17,"z"),CPVar (18,"zs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CVar (12,"f")) (CVar (13,"x"))) (CVar (15,"y"))) (CVar (17,"z")))) (CApply (CApply (CApply (CApply (CSymbol ("Prelude","zipWith3")) (CVar (12,"f"))) (CVar (14,"xs"))) (CVar (16,"ys"))) (CVar (18,"zs"))))] []]),+  CFunc ("Prelude","||") 2 Public (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CTCons ("Prelude","Bool") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","True") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude","False") [],CPVar (1,"x")] [(CSymbol ("Prelude","success"),CVar (1,"x"))] []])]+ [COp ("Prelude","!!") CInfixlOp 9,COp ("Prelude",".") CInfixrOp 9,COp ("Prelude","mod") CInfixlOp 7,COp ("Prelude","div") CInfixlOp 7,COp ("Prelude","*^") CInfixlOp 7,COp ("Prelude","*") CInfixlOp 7,COp ("Prelude","-^") CInfixlOp 6,COp ("Prelude","-") CInfixlOp 6,COp ("Prelude","+^") CInfixlOp 6,COp ("Prelude","+") CInfixlOp 6,COp ("Prelude","++") CInfixrOp 5,COp ("Prelude",">=^") CInfixOp 4,COp ("Prelude",">^") CInfixOp 4,COp ("Prelude","<=^") CInfixOp 4,COp ("Prelude","<^") CInfixOp 4,COp ("Prelude","=:<=") CInfixOp 4,COp ("Prelude",">=") CInfixOp 4,COp ("Prelude","<=") CInfixOp 4,COp ("Prelude",">") CInfixOp 4,COp ("Prelude","<") CInfixOp 4,COp ("Prelude","/=") CInfixOp 4,COp ("Prelude","===") CInfixOp 4,COp ("Prelude","==") CInfixOp 4,COp ("Prelude","=:=") CInfixOp 4,COp ("Prelude","notElem") CInfixOp 4,COp ("Prelude","elem") CInfixOp 4,COp ("Prelude","&&") CInfixrOp 3,COp ("Prelude","||") CInfixrOp 2,COp ("Prelude",">>=") CInfixlOp 1,COp ("Prelude",">>") CInfixlOp 1,COp ("Prelude","?") CInfixrOp 0,COp ("Prelude","&>") CInfixrOp 0,COp ("Prelude","&") CInfixrOp 0,COp ("Prelude","seq") CInfixrOp 0,COp ("Prelude","$##") CInfixrOp 0,COp ("Prelude","$#") CInfixrOp 0,COp ("Prelude","$!!") CInfixrOp 0,COp ("Prelude","$!") CInfixrOp 0,COp ("Prelude","$") CInfixrOp 0]
+ src/lib/Curry/Module/.curry/Pretty.acy view
@@ -0,0 +1,89 @@+CurryProg "Pretty"+ ["Prelude","Dequeue"]+ [CType ("Pretty","Doc") Public [] [CCons ("Pretty","Doc") 1 Public [CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") [])]],+  CTypeSyn ("Pretty","Layout") Private [] (CTCons ("Prelude","String") []),+  CTypeSyn ("Pretty","Horizontal") Private [] (CTCons ("Prelude","Bool") []),+  CTypeSyn ("Pretty","Remaining") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","Width") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","Position") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","StartPosition") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","EndPosition") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","Out") Private [] (CFuncType (CTCons ("Pretty","Remaining") []) (CFuncType (CTCons ("Pretty","Margins") []) (CTCons ("Prelude","String") []))),+  CTypeSyn ("Pretty","OutGroupPrefix") Private [] (CFuncType (CTCons ("Pretty","Horizontal") []) (CFuncType (CTCons ("Pretty","Out") []) (CTCons ("Pretty","Out") []))),+  CTypeSyn ("Pretty","Margins") Private [] (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]),+  CType ("Pretty","Tokens") Private [] [CCons ("Pretty","Text") 2 Private [CTCons ("Prelude","String") [],CTCons ("Pretty","Tokens") []],CCons ("Pretty","Line") 2 Private [CTCons ("Prelude","String") [],CTCons ("Pretty","Tokens") []],CCons ("Pretty","Open") 1 Private [CTCons ("Pretty","Tokens") []],CCons ("Pretty","Close") 1 Private [CTCons ("Pretty","Tokens") []],CCons ("Pretty","Empty") 0 Private [],CCons ("Pretty","OpenNest") 2 Private [CFuncType (CTCons ("Pretty","Margins") []) (CFuncType (CTCons ("Pretty","Remaining") []) (CFuncType (CTCons ("Pretty","Width") []) (CTCons ("Pretty","Margins") []))),CTCons ("Pretty","Tokens") []],CCons ("Pretty","CloseNest") 1 Private [CTCons ("Pretty","Tokens") []]]]+ [CFunc ("Pretty","<$$>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","linebreak")))] []]),+  CFunc ("Pretty","<$>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","line")))] []]),+  CFunc ("Pretty","<+>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","space")))] []]),+  CFunc ("Pretty","<//>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","softbreak")))] []]),+  CFunc ("Pretty","</>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","softline")))] []]),+  CFunc ("Pretty","<>") 2 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"d1"),CPVar (1,"d2")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (0,"d1")))) (CApply (CSymbol ("Pretty","deDoc")) (CVar (1,"d2")))))] []]),+  CFunc ("Pretty","align") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","hang")) (CLit (CIntc 0)))] []]),+  CFunc ("Pretty","angles") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","langle"))) (CSymbol ("Pretty","rangle")))] []]),+  CFunc ("Pretty","backslash") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '\\')))] []]),+  CFunc ("Pretty","bquote") 0 Private (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '`')))] []]),+  CFunc ("Pretty","bquotes") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","bquote"))) (CSymbol ("Pretty","bquote")))] []]),+  CFunc ("Pretty","braces") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","lbrace"))) (CSymbol ("Pretty","rbrace")))] []]),+  CFunc ("Pretty","brackets") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","lbracket"))) (CSymbol ("Pretty","rbracket")))] []]),+  CFunc ("Pretty","cat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","group"))) (CSymbol ("Pretty","vcat")))] []]),+  CFunc ("Pretty","char") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("Pretty","colon") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ':')))] []]),+  CFunc ("Pretty","combine") 3 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"d1"),CPVar (2,"d2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (1,"d1"))) (CVar (2,"d2"))) (CVar (0,"s")))] []]),+  CFunc ("Pretty","comma") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ',')))] []]),+  CFunc ("Pretty","compose") 2 Public (CFuncType (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Pretty","empty"))] [],CRule [CPVar (1,"op"),CPAs (4,"ds") (CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr1")) (CVar (1,"op"))) (CVar (4,"ds")))] []]),+  CFunc ("Pretty","deDoc") 1 Private (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") []))) (CRules CFlex [CRule [CPComb ("Pretty","Doc") [CPVar (0,"d")]] [(CSymbol ("Prelude","success"),CVar (0,"d"))] []]),+  CFunc ("Pretty","doc2Tokens") 1 Private (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Tokens") [])) (CRules CFlex [CRule [CPComb ("Pretty","Doc") [CPVar (0,"d")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","normalise")) (CApply (CVar (0,"d")) (CSymbol ("Pretty","Empty"))))] []]),+  CFunc ("Pretty","dot") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '.')))] []]),+  CFunc ("Pretty","dquote") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '"')))] []]),+  CFunc ("Pretty","dquotes") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","dquote"))) (CSymbol ("Pretty","dquote")))] []]),+  CFunc ("Pretty","empty") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Pretty","enclose") 3 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (2,"d")))) (CVar (1,"r")))] []]),+  CFunc ("Pretty","encloseSep") 4 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (1,"r")))] [],CRule [CPVar (3,"l"),CPVar (4,"r"),CPVar (5,"s"),CPComb ("Prelude",":") [CPVar (6,"d"),CPVar (7,"ds")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","align")) (CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (3,"l"))) (CVar (4,"r"))) (CApply (CSymbol ("Pretty","cat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"d"))) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (8,"x0")] (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (5,"s"))) (CVar (8,"x0"))))) (CVar (7,"ds")))))))] []]),+  CFunc ("Pretty","equals") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '=')))] []]),+  CFunc ("Pretty","fillCat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<//>")))] []]),+  CFunc ("Pretty","fillEncloseSep") 4 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (1,"r")))] [],CRule [CPVar (3,"l"),CPVar (4,"r"),CPVar (5,"s"),CPComb ("Prelude",":") [CPVar (6,"d"),CPVar (7,"ds")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","align")) (CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (3,"l"))) (CVar (4,"r"))) (CApply (CSymbol ("Pretty","hcat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"d"))) (CApply (CSymbol ("Pretty","withSoftBreaks")) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (8,"x0")] (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (5,"s"))) (CVar (8,"x0"))))) (CVar (7,"ds"))))))))] [CLocalFunc (CFunc ("Pretty","withSoftBreaks") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (8,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Pretty","group")) (CApply (CApply (CSymbol ("Pretty","<>")) (CSymbol ("Pretty","linebreak"))) (CVar (8,"x"))))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (9,"x"),CPAs (12,"xs") (CPComb ("Prelude",":") [CPVar (10,"_"),CPVar (11,"_")])]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Pretty","group")) (CApply (CApply (CSymbol ("Pretty","<>")) (CSymbol ("Pretty","linebreak"))) (CApply (CSymbol ("Pretty","group")) (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (9,"x"))) (CSymbol ("Pretty","linebreak"))))))) (CApply (CSymbol ("Pretty","withSoftBreaks")) (CVar (12,"xs"))))] []]))]]),+  CFunc ("Pretty","fillSep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","</>")))] []]),+  CFunc ("Pretty","float") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"x"))))] []]),+  CFunc ("Pretty","group") 1 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"d")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","Open"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (0,"d")))) (CSymbol ("Pretty","Close")))))] []]),+  CFunc ("Pretty","hEncloseSep") 4 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (1,"r")))] [],CRule [CPVar (3,"l"),CPVar (4,"r"),CPVar (5,"s"),CPComb ("Prelude",":") [CPVar (6,"d"),CPVar (7,"ds")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","align")) (CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (3,"l"))) (CVar (4,"r"))) (CApply (CSymbol ("Pretty","hcat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"d"))) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (8,"x0")] (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (5,"s"))) (CVar (8,"x0"))))) (CVar (7,"ds")))))))] []]),+  CFunc ("Pretty","hang") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"i"),CPVar (1,"d")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","OpenNest")) (CLambda [CPVar (2,"ms"),CPVar (3,"r"),CPVar (4,"w")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"w"))) (CVar (3,"r")))) (CVar (0,"i")))) (CVar (2,"ms")))))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (1,"d")))) (CSymbol ("Pretty","CloseNest")))))] []]),+  CFunc ("Pretty","hcat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<>")))] []]),+  CFunc ("Pretty","hsep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<+>")))] []]),+  CFunc ("Pretty","int") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n"))))] []]),+  CFunc ("Pretty","langle") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '<')))] []]),+  CFunc ("Pretty","lbrace") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '{')))] []]),+  CFunc ("Pretty","lbracket") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '[')))] []]),+  CFunc ("Pretty","length") 0 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","length"))) (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (0,"x0"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 5))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 6))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 7))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CLit (CIntc 16))) (CLit (CIntc 31))))))) (CSymbol ("Prelude","ord"))))))] []]),+  CFunc ("Pretty","line") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","linesep")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("Pretty","linebreak") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","linesep")) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Pretty","linesep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","Doc"))) (CSymbol ("Pretty","Line")))] []]),+  CFunc ("Pretty","list") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","fillEncloseSep")) (CSymbol ("Pretty","lbracket"))) (CSymbol ("Pretty","rbracket"))) (CSymbol ("Pretty","comma")))] []]),+  CFunc ("Pretty","lparen") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '(')))] []]),+  CFunc ("Pretty","multiGroup") 8 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CFuncType (CTCons ("Dequeue","Queue") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))]]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))))))))) (CRules CFlex [CRule [CPComb ("Pretty","Text") [CPVar (0,"t"),CPVar (1,"ts")],CPVar (2,"w"),CPVar (3,"p"),CPVar (4,"e"),CPVar (5,"outGrpPreOuter"),CPVar (6,"qs"),CPVar (7,"s"),CPVar (8,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneMulti")) (CVar (1,"ts"))) (CVar (2,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"p"))) (CVar (9,"l")))) (CVar (4,"e"))) (CVar (5,"outGrpPreOuter"))) (CVar (6,"qs"))) (CVar (7,"s"))) (CLambda [CPVar (10,"h"),CPVar (11,"c")] (CApply (CApply (CVar (8,"outGrpPreInner")) (CVar (10,"h"))) (CApply (CSymbol ("Pretty","outText")) (CVar (11,"c"))))))] [CLocalPat (CPVar (9,"l")) (CApply (CSymbol ("Pretty","length")) (CVar (0,"t"))) [],CLocalFunc (CFunc ("Pretty","outText") 3 Private (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))) (CRules CFlex [CRule [CPVar (10,"c"),CPVar (11,"r"),CPVar (12,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"t"))) (CApply (CApply (CVar (10,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (11,"r"))) (CVar (9,"l")))) (CVar (12,"ms"))))] []]))],CRule [CPComb ("Pretty","Line") [CPVar (12,"s"),CPVar (13,"ts")],CPVar (14,"w"),CPVar (15,"p"),CPVar (16,"e"),CPVar (17,"outGrpPreOuter"),CPVar (18,"qs"),CPVar (19,"si"),CPVar (20,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneMulti")) (CVar (13,"ts"))) (CVar (14,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (15,"p"))) (CVar (21,"lens")))) (CVar (16,"e"))) (CVar (17,"outGrpPreOuter"))) (CVar (18,"qs"))) (CVar (19,"si"))) (CLambda [CPVar (22,"h"),CPVar (23,"c")] (CApply (CApply (CVar (20,"outGrpPreInner")) (CVar (22,"h"))) (CApply (CApply (CSymbol ("Pretty","outLine")) (CVar (22,"h"))) (CVar (23,"c"))))))] [CLocalPat (CPVar (21,"lens")) (CApply (CSymbol ("Pretty","length")) (CVar (12,"s"))) [],CLocalFunc (CFunc ("Pretty","outLine") 4 Private (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CRules CFlex [CRule [CPVar (22,"h"),CPVar (23,"c"),CPVar (24,"r"),CPAs (27,"ms") (CPComb ("Prelude",":") [CPVar (25,"m"),CPVar (26,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (22,"h"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (12,"s"))) (CApply (CApply (CVar (23,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (24,"r"))) (CVar (21,"lens")))) (CVar (27,"ms"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CVar (25,"m"))) (CLit (CCharc ' ')))) (CApply (CApply (CVar (23,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (14,"w"))) (CVar (25,"m")))) (CVar (27,"ms"))))))] []]))],CRule [CPComb ("Pretty","Open") [CPVar (24,"ts")],CPVar (25,"w"),CPVar (26,"p"),CPVar (27,"e"),CPVar (28,"outGrpPreOuter"),CPVar (29,"qs"),CPVar (30,"si"),CPVar (31,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (24,"ts"))) (CVar (25,"w"))) (CVar (26,"p"))) (CVar (27,"e"))) (CVar (28,"outGrpPreOuter"))) (CApply (CApply (CSymbol ("Dequeue","cons")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (30,"si"))) (CVar (31,"outGrpPreInner")))) (CVar (29,"qs")))) (CVar (26,"p"))) (CLambda [CPVar (32,"_"),CPVar (33,"c")] (CVar (33,"c"))))] [],CRule [CPComb ("Pretty","Close") [CPVar (34,"ts")],CPVar (35,"w"),CPVar (36,"p"),CPVar (37,"e"),CPVar (38,"outGrpPreOuter"),CPVar (39,"qs"),CPVar (40,"si"),CPVar (41,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CCase (CApply (CSymbol ("Dequeue","matchHead")) (CVar (39,"qs"))) [CBranch (CPComb ("Prelude","Nothing") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (34,"ts"))) (CVar (35,"w"))) (CVar (36,"p"))) (CVar (37,"e"))) (CLambda [CPVar (42,"h"),CPVar (43,"c")] (CApply (CApply (CVar (38,"outGrpPreOuter")) (CVar (42,"h"))) (CLambda [CPVar (44,"ri")] (CApply (CApply (CApply (CVar (41,"outGrpPreInner")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (36,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (40,"si"))) (CVar (44,"ri"))))) (CVar (43,"c"))) (CVar (44,"ri"))))))),CBranch (CPComb ("Prelude","Just") [CPComb ("Prelude","(,)") [CPComb ("Prelude","(,)") [CPVar (45,"s"),CPVar (46,"outGrpPre")],CPVar (47,"qs'")]]) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (34,"ts"))) (CVar (35,"w"))) (CVar (36,"p"))) (CVar (37,"e"))) (CVar (38,"outGrpPreOuter"))) (CVar (47,"qs'"))) (CVar (45,"s"))) (CLambda [CPVar (48,"h"),CPVar (49,"c")] (CApply (CApply (CVar (46,"outGrpPre")) (CVar (48,"h"))) (CLambda [CPVar (50,"ri")] (CApply (CApply (CApply (CVar (41,"outGrpPreInner")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (36,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (40,"si"))) (CVar (50,"ri"))))) (CVar (49,"c"))) (CVar (50,"ri")))))))])] [],CRule [CPComb ("Pretty","OpenNest") [CPVar (51,"f"),CPVar (52,"ts")],CPVar (53,"w"),CPVar (54,"p"),CPVar (55,"e"),CPVar (56,"outGrpPreOuter"),CPVar (57,"qs"),CPVar (58,"si"),CPVar (59,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (52,"ts"))) (CVar (53,"w"))) (CVar (54,"p"))) (CVar (55,"e"))) (CVar (56,"outGrpPreOuter"))) (CVar (57,"qs"))) (CVar (58,"si"))) (CLambda [CPVar (60,"h"),CPVar (61,"c")] (CApply (CApply (CVar (59,"outGrpPreInner")) (CVar (60,"h"))) (CLambda [CPVar (62,"r"),CPVar (63,"ms")] (CApply (CApply (CVar (61,"c")) (CVar (62,"r"))) (CApply (CApply (CApply (CVar (51,"f")) (CVar (63,"ms"))) (CVar (62,"r"))) (CVar (53,"w"))))))))] [],CRule [CPComb ("Pretty","CloseNest") [CPVar (64,"ts")],CPVar (65,"w"),CPVar (66,"p"),CPVar (67,"e"),CPVar (68,"outGrpPreOuter"),CPVar (69,"qs"),CPVar (70,"si"),CPVar (71,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (64,"ts"))) (CVar (65,"w"))) (CVar (66,"p"))) (CVar (67,"e"))) (CVar (68,"outGrpPreOuter"))) (CVar (69,"qs"))) (CVar (70,"si"))) (CLambda [CPVar (72,"h"),CPVar (73,"c")] (CApply (CApply (CVar (71,"outGrpPreInner")) (CVar (72,"h"))) (CLambda [CPVar (74,"r"),CPVar (75,"ms")] (CApply (CApply (CVar (73,"c")) (CVar (74,"r"))) (CApply (CSymbol ("Prelude","tail")) (CVar (75,"ms"))))))))] []]),+  CFunc ("Pretty","nest") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"i"),CPVar (1,"d")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","OpenNest")) (CLambda [CPAs (4,"ms") (CPComb ("Prelude",":") [CPVar (2,"m"),CPVar (3,"_")]),CPVar (5,"_"),CPVar (6,"_")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"m"))) (CVar (0,"i")))) (CVar (4,"ms")))))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (1,"d")))) (CSymbol ("Pretty","CloseNest")))))] []]),+  CFunc ("Pretty","noGroup") 5 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))))) (CRules CFlex [CRule [CPComb ("Pretty","Empty") [],CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Pretty","Text") [CPVar (4,"t"),CPVar (5,"ts")],CPVar (6,"w"),CPVar (7,"p"),CPVar (8,"r"),CPVar (9,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"t"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (5,"ts"))) (CVar (6,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"p"))) (CVar (10,"l")))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (8,"r"))) (CVar (10,"l")))) (CVar (9,"ms"))))] [CLocalPat (CPVar (10,"l")) (CApply (CSymbol ("Pretty","length")) (CVar (4,"t"))) []],CRule [CPComb ("Pretty","Line") [CPVar (11,"_"),CPVar (12,"ts")],CPVar (13,"w"),CPVar (14,"p"),CPVar (15,"_"),CPAs (18,"ms") (CPComb ("Prelude",":") [CPVar (16,"m"),CPVar (17,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CVar (16,"m"))) (CLit (CCharc ' ')))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (12,"ts"))) (CVar (13,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (14,"p"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (13,"w"))) (CVar (16,"m")))) (CVar (18,"ms")))))] [],CRule [CPComb ("Pretty","Open") [CPVar (19,"ts")],CPVar (20,"w"),CPVar (21,"p"),CPVar (22,"r"),CPVar (23,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (19,"ts"))) (CVar (20,"w"))) (CVar (21,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (21,"p"))) (CVar (22,"r")))) (CLambda [CPVar (24,"_"),CPVar (25,"c")] (CVar (25,"c")))) (CVar (22,"r"))) (CVar (23,"ms")))] [],CRule [CPComb ("Pretty","Close") [CPVar (26,"ts")],CPVar (27,"w"),CPVar (28,"p"),CPVar (29,"r"),CPVar (30,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (26,"ts"))) (CVar (27,"w"))) (CVar (28,"p"))) (CVar (29,"r"))) (CVar (30,"ms")))] [],CRule [CPComb ("Pretty","OpenNest") [CPVar (31,"f"),CPVar (32,"ts")],CPVar (33,"w"),CPVar (34,"p"),CPVar (35,"r"),CPVar (36,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (32,"ts"))) (CVar (33,"w"))) (CVar (34,"p"))) (CVar (35,"r"))) (CApply (CApply (CApply (CVar (31,"f")) (CVar (36,"ms"))) (CVar (35,"r"))) (CVar (33,"w"))))] [],CRule [CPComb ("Pretty","CloseNest") [CPVar (37,"ts")],CPVar (38,"w"),CPVar (39,"p"),CPVar (40,"r"),CPVar (41,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (37,"ts"))) (CVar (38,"w"))) (CVar (39,"p"))) (CVar (40,"r"))) (CApply (CSymbol ("Prelude","tail")) (CVar (41,"ms"))))] []]),+  CFunc ("Pretty","normalise") 0 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","go")) (CSymbol ("Prelude","id")))] [CLocalFunc (CFunc ("Pretty","go") 2 Private (CFuncType (CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") [])) (CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") []))) (CRules CFlex [CRule [CPVar (0,"co"),CPComb ("Pretty","Empty") []] [(CSymbol ("Prelude","success"),CApply (CVar (0,"co")) (CSymbol ("Pretty","Empty")))] [],CRule [CPVar (1,"co"),CPComb ("Pretty","Open") [CPVar (2,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","go")) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (1,"co"))) (CSymbol ("Pretty","open")))) (CVar (2,"ts")))] [],CRule [CPVar (3,"co"),CPComb ("Pretty","Close") [CPVar (4,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","go")) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (3,"co"))) (CSymbol ("Pretty","Close")))) (CVar (4,"ts")))] [],CRule [CPVar (5,"co"),CPComb ("Pretty","Line") [CPVar (6,"s"),CPVar (7,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (5,"co"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","Line")) (CVar (6,"s")))) (CApply (CSymbol ("Pretty","go")) (CSymbol ("Prelude","id")))))) (CVar (7,"ts")))] [],CRule [CPVar (8,"co"),CPComb ("Pretty","Text") [CPVar (9,"s"),CPVar (10,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","Text")) (CVar (9,"s"))) (CApply (CApply (CSymbol ("Pretty","go")) (CVar (8,"co"))) (CVar (10,"ts"))))] [],CRule [CPVar (11,"co"),CPComb ("Pretty","OpenNest") [CPVar (12,"f"),CPVar (13,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","OpenNest")) (CVar (12,"f"))) (CApply (CApply (CSymbol ("Pretty","go")) (CVar (11,"co"))) (CVar (13,"ts"))))] [],CRule [CPVar (14,"co"),CPComb ("Pretty","CloseNest") [CPVar (15,"ts")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","CloseNest")) (CApply (CApply (CSymbol ("Pretty","go")) (CVar (14,"co"))) (CVar (15,"ts"))))] []])),CLocalFunc (CFunc ("Pretty","open") 1 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") [])) (CRules CFlex [CRule [CPVar (0,"t")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"t")) [CBranch (CPComb ("Pretty","Close") [CPVar (1,"ts")]) (CVar (1,"ts")),CBranch (CPVar (2,"_")) (CApply (CSymbol ("Pretty","Open")) (CVar (0,"t")))])] []]))]]),+  CFunc ("Pretty","oneGroup") 5 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))))))) (CRules CFlex [CRule [CPComb ("Pretty","Text") [CPVar (0,"t"),CPVar (1,"ts")],CPVar (2,"w"),CPVar (3,"p"),CPVar (4,"e"),CPVar (5,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneOne")) (CVar (1,"ts"))) (CVar (2,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"p"))) (CVar (6,"l")))) (CVar (4,"e"))) (CLambda [CPVar (7,"h"),CPVar (8,"c")] (CApply (CApply (CVar (5,"outGrpPre")) (CVar (7,"h"))) (CApply (CSymbol ("Pretty","outText")) (CVar (8,"c"))))))] [CLocalPat (CPVar (6,"l")) (CApply (CSymbol ("Pretty","length")) (CVar (0,"t"))) [],CLocalFunc (CFunc ("Pretty","outText") 3 Private (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))) (CRules CFlex [CRule [CPVar (7,"c"),CPVar (8,"r"),CPVar (9,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"t"))) (CApply (CApply (CVar (7,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (8,"r"))) (CVar (6,"l")))) (CVar (9,"ms"))))] []]))],CRule [CPComb ("Pretty","Line") [CPVar (9,"s"),CPVar (10,"ts")],CPVar (11,"w"),CPVar (12,"p"),CPVar (13,"e"),CPVar (14,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneOne")) (CVar (10,"ts"))) (CVar (11,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (12,"p"))) (CVar (15,"lens")))) (CVar (13,"e"))) (CLambda [CPVar (16,"h"),CPVar (17,"c")] (CApply (CApply (CVar (14,"outGrpPre")) (CVar (16,"h"))) (CApply (CApply (CSymbol ("Pretty","outLine")) (CVar (16,"h"))) (CVar (17,"c"))))))] [CLocalPat (CPVar (15,"lens")) (CApply (CSymbol ("Pretty","length")) (CVar (9,"s"))) [],CLocalFunc (CFunc ("Pretty","outLine") 4 Private (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CRules CFlex [CRule [CPVar (16,"h"),CPVar (17,"c"),CPVar (18,"r"),CPAs (21,"ms") (CPComb ("Prelude",":") [CPVar (19,"m"),CPVar (20,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (16,"h"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (9,"s"))) (CApply (CApply (CVar (17,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (18,"r"))) (CVar (15,"lens")))) (CVar (21,"ms"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CVar (19,"m"))) (CLit (CCharc ' ')))) (CApply (CApply (CVar (17,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (11,"w"))) (CVar (19,"m")))) (CVar (21,"ms"))))))] []]))],CRule [CPComb ("Pretty","Open") [CPVar (18,"ts")],CPVar (19,"w"),CPVar (20,"p"),CPVar (21,"e"),CPVar (22,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (18,"ts"))) (CVar (19,"w"))) (CVar (20,"p"))) (CVar (21,"e"))) (CVar (22,"outGrpPre"))) (CSymbol ("Dequeue","empty"))) (CVar (20,"p"))) (CLambda [CPVar (23,"_"),CPVar (24,"c")] (CVar (24,"c"))))] [],CRule [CPComb ("Pretty","Close") [CPVar (25,"ts")],CPVar (26,"w"),CPVar (27,"p"),CPVar (28,"e"),CPVar (29,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (29,"outGrpPre")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (27,"p"))) (CVar (28,"e")))) (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (25,"ts"))) (CVar (26,"w"))) (CVar (27,"p"))))] [],CRule [CPComb ("Pretty","OpenNest") [CPVar (30,"f"),CPVar (31,"ts")],CPVar (32,"w"),CPVar (33,"p"),CPVar (34,"e"),CPVar (35,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (31,"ts"))) (CVar (32,"w"))) (CVar (33,"p"))) (CVar (34,"e"))) (CLambda [CPVar (36,"h"),CPVar (37,"c")] (CApply (CApply (CVar (35,"outGrpPre")) (CVar (36,"h"))) (CLambda [CPVar (38,"r"),CPVar (39,"ms")] (CApply (CApply (CVar (37,"c")) (CVar (38,"r"))) (CApply (CApply (CApply (CVar (30,"f")) (CVar (39,"ms"))) (CVar (38,"r"))) (CVar (32,"w"))))))))] [],CRule [CPComb ("Pretty","CloseNest") [CPVar (40,"ts")],CPVar (41,"w"),CPVar (42,"p"),CPVar (43,"e"),CPVar (44,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (40,"ts"))) (CVar (41,"w"))) (CVar (42,"p"))) (CVar (43,"e"))) (CLambda [CPVar (45,"h"),CPVar (46,"c")] (CApply (CApply (CVar (44,"outGrpPre")) (CVar (45,"h"))) (CLambda [CPVar (47,"r"),CPVar (48,"ms")] (CApply (CApply (CVar (46,"c")) (CVar (47,"r"))) (CApply (CSymbol ("Prelude","tail")) (CVar (48,"ms"))))))))] []]),+  CFunc ("Pretty","parens") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","lparen"))) (CSymbol ("Pretty","rparen")))] []]),+  CFunc ("Pretty","pretty") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (0,"w"),CPVar (1,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CApply (CSymbol ("Pretty","doc2Tokens")) (CVar (1,"d")))) (CVar (0,"w"))) (CLit (CIntc 1))) (CVar (0,"w"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 0))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("Pretty","pruneMulti") 8 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CFuncType (CTCons ("Dequeue","Queue") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))]]) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))))))))) (CRules CFlex [CRule [CPVar (0,"ts"),CPVar (1,"w"),CPVar (2,"p"),CPVar (3,"e"),CPVar (4,"outGrpPreOuter"),CPVar (5,"qs"),CPVar (6,"si"),CPVar (7,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (2,"p"))) (CVar (3,"e")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CVar (3,"e"))) (CVar (4,"outGrpPreOuter"))) (CVar (5,"qs"))) (CVar (6,"si"))) (CVar (7,"outGrpPreInner")))) (CApply (CApply (CVar (4,"outGrpPreOuter")) (CSymbol ("Prelude","False"))) (CLambda [CPVar (8,"r")] (CApply (CCase (CApply (CSymbol ("Dequeue","matchLast")) (CVar (5,"qs"))) [CBranch (CPComb ("Prelude","Nothing") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneOne")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (6,"si"))) (CVar (8,"r")))) (CVar (7,"outGrpPreInner"))),CBranch (CPComb ("Prelude","Just") [CPComb ("Prelude","(,)") [CPComb ("Prelude","(,)") [CPVar (9,"s"),CPVar (10,"outGrpPre")],CPVar (11,"qs'")]]) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneMulti")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (9,"s"))) (CVar (8,"r")))) (CVar (10,"outGrpPre"))) (CVar (11,"qs'"))) (CVar (6,"si"))) (CVar (7,"outGrpPreInner")))]) (CVar (8,"r"))))))] []]),+  CFunc ("Pretty","pruneOne") 5 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CFuncType (CTCons ("Prelude","Bool") []) (CFuncType (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))))) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))))))) (CRules CFlex [CRule [CPVar (0,"ts"),CPVar (1,"w"),CPVar (2,"p"),CPVar (3,"e"),CPVar (4,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (2,"p"))) (CVar (3,"e")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CVar (3,"e"))) (CVar (4,"outGrpPre")))) (CApply (CApply (CVar (4,"outGrpPre")) (CSymbol ("Prelude","False"))) (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p")))))] []]),+  CFunc ("Pretty","punctuate") 2 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"d"),CPAs (4,"ds") (CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")])] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","go")) (CVar (4,"ds")))] [CLocalFunc (CFunc ("Pretty","go") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []])) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (5,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (6,"x"),CPAs (9,"xs") (CPComb ("Prelude",":") [CPVar (7,"_"),CPVar (8,"_")])]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (6,"x"))) (CVar (1,"d")))) (CApply (CSymbol ("Pretty","go")) (CVar (9,"xs"))))] []]))]]),+  CFunc ("Pretty","rangle") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '>')))] []]),+  CFunc ("Pretty","rbrace") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '}')))] []]),+  CFunc ("Pretty","rbracket") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ']')))] []]),+  CFunc ("Pretty","rparen") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ')')))] []]),+  CFunc ("Pretty","semi") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ';')))] []]),+  CFunc ("Pretty","semiBraces") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","fillEncloseSep")) (CSymbol ("Pretty","lbrace"))) (CSymbol ("Pretty","rbrace"))) (CSymbol ("Pretty","semi")))] []]),+  CFunc ("Pretty","sep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","group"))) (CSymbol ("Pretty","vsep")))] []]),+  CFunc ("Pretty","softbreak") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","group")) (CSymbol ("Pretty","linebreak")))] []]),+  CFunc ("Pretty","softline") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","group")) (CSymbol ("Pretty","line")))] []]),+  CFunc ("Pretty","space") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ' ')))] []]),+  CFunc ("Pretty","squote") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '\'')))] []]),+  CFunc ("Pretty","squotes") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","squote"))) (CSymbol ("Pretty","squote")))] []]),+  CFunc ("Pretty","string") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","hcat"))) (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (0,"c")] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (0,"c"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\r'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Pretty","line"))) (CApply (CSymbol ("Pretty","char")) (CVar (0,"c")))))))] []]),+  CFunc ("Pretty","text") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CSymbol ("Pretty","Text")) (CVar (0,"s"))))] []]),+  CFunc ("Pretty","tupled") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","fillEncloseSep")) (CSymbol ("Pretty","lparen"))) (CSymbol ("Pretty","rparen"))) (CSymbol ("Pretty","comma")))] []]),+  CFunc ("Pretty","vcat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<$$>")))] []]),+  CFunc ("Pretty","vsep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<$>")))] []])]+ [COp ("Pretty","<//>") CInfixlOp 1,COp ("Pretty","<$$>") CInfixlOp 1,COp ("Pretty","</>") CInfixlOp 1,COp ("Pretty","<$>") CInfixlOp 1,COp ("Pretty","<+>") CInfixlOp 1,COp ("Pretty","<>") CInfixlOp 1]
+ src/lib/Curry/Module/.curry/Pretty.cy view
@@ -0,0 +1,122 @@+Module "Pretty"+(Just (Exporting (11,15) [(Export (QualIdent Nothing (Ident "pretty" 0))),(Export (QualIdent Nothing (Ident "Doc" 0))),(Export (QualIdent Nothing (Ident "empty" 0))),(Export (QualIdent Nothing (Ident "text" 0))),(Export (QualIdent Nothing (Ident "linesep" 0))),(Export (QualIdent Nothing (Ident "line" 0))),(Export (QualIdent Nothing (Ident "linebreak" 0))),(Export (QualIdent Nothing (Ident "group" 0))),(Export (QualIdent Nothing (Ident "softline" 0))),(Export (QualIdent Nothing (Ident "softbreak" 0))),(Export (QualIdent Nothing (Ident "nest" 0))),(Export (QualIdent Nothing (Ident "hang" 0))),(Export (QualIdent Nothing (Ident "align" 0))),(Export (QualIdent Nothing (Ident "combine" 0))),(Export (QualIdent Nothing (Ident "<>" 0))),(Export (QualIdent Nothing (Ident "<+>" 0))),(Export (QualIdent Nothing (Ident "<$>" 0))),(Export (QualIdent Nothing (Ident "</>" 0))),(Export (QualIdent Nothing (Ident "<$$>" 0))),(Export (QualIdent Nothing (Ident "<//>" 0))),(Export (QualIdent Nothing (Ident "compose" 0))),(Export (QualIdent Nothing (Ident "hsep" 0))),(Export (QualIdent Nothing (Ident "vsep" 0))),(Export (QualIdent Nothing (Ident "fillSep" 0))),(Export (QualIdent Nothing (Ident "sep" 0))),(Export (QualIdent Nothing (Ident "hcat" 0))),(Export (QualIdent Nothing (Ident "vcat" 0))),(Export (QualIdent Nothing (Ident "fillCat" 0))),(Export (QualIdent Nothing (Ident "cat" 0))),(Export (QualIdent Nothing (Ident "punctuate" 0))),(Export (QualIdent Nothing (Ident "encloseSep" 0))),(Export (QualIdent Nothing (Ident "hEncloseSep" 0))),(Export (QualIdent Nothing (Ident "fillEncloseSep" 0))),(Export (QualIdent Nothing (Ident "list" 0))),(Export (QualIdent Nothing (Ident "tupled" 0))),(Export (QualIdent Nothing (Ident "semiBraces" 0))),(Export (QualIdent Nothing (Ident "enclose" 0))),(Export (QualIdent Nothing (Ident "squotes" 0))),(Export (QualIdent Nothing (Ident "dquotes" 0))),(Export (QualIdent Nothing (Ident "bquotes" 0))),(Export (QualIdent Nothing (Ident "parens" 0))),(Export (QualIdent Nothing (Ident "angles" 0))),(Export (QualIdent Nothing (Ident "braces" 0))),(Export (QualIdent Nothing (Ident "brackets" 0))),(Export (QualIdent Nothing (Ident "char" 0))),(Export (QualIdent Nothing (Ident "string" 0))),(Export (QualIdent Nothing (Ident "int" 0))),(Export (QualIdent Nothing (Ident "float" 0))),(Export (QualIdent Nothing (Ident "lparen" 0))),(Export (QualIdent Nothing (Ident "rparen" 0))),(Export (QualIdent Nothing (Ident "langle" 0))),(Export (QualIdent Nothing (Ident "rangle" 0))),(Export (QualIdent Nothing (Ident "lbrace" 0))),(Export (QualIdent Nothing (Ident "rbrace" 0))),(Export (QualIdent Nothing (Ident "lbracket" 0))),(Export (QualIdent Nothing (Ident "rbracket" 0))),(Export (QualIdent Nothing (Ident "squote" 0))),(Export (QualIdent Nothing (Ident "dquote" 0))),(Export (QualIdent Nothing (Ident "semi" 0))),(Export (QualIdent Nothing (Ident "colon" 0))),(Export (QualIdent Nothing (Ident "comma" 0))),(Export (QualIdent Nothing (Ident "space" 0))),(Export (QualIdent Nothing (Ident "dot" 0))),(Export (QualIdent Nothing (Ident "backslash" 0))),(Export (QualIdent Nothing (Ident "equals" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (41,1) "Dequeue" False (Just "Q") Nothing)+,(DataDecl (45,1) (Ident "Doc" 0) [] [(ConstrDecl (45,12) [] (Ident "Doc" 0) [(ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []))])])+,(TypeDecl (177,1) (Ident "Layout" 0) [] (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))+,(TypeDecl (178,1) (Ident "Horizontal" 0) [] (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))+,(TypeDecl (179,1) (Ident "Remaining" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(TypeDecl (180,1) (Ident "Width" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(TypeDecl (181,1) (Ident "Position" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(TypeDecl (182,1) (Ident "StartPosition" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(TypeDecl (183,1) (Ident "EndPosition" 0) [] (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))+,(TypeDecl (184,1) (Ident "Out" 0) [] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Remaining" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Margins" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(TypeDecl (185,1) (Ident "OutGroupPrefix" 0) [] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Horizontal" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []))))+,(TypeDecl (186,1) (Ident "Margins" 0) [] (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(DataDecl (188,1) (Ident "Tokens" 0) [] [(ConstrDecl (188,15) [] (Ident "Text" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (189,15) [] (Ident "Line" 0) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (190,15) [] (Ident "Open" 0) [(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (191,15) [] (Ident "Close" 0) [(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (192,15) [] (Ident "Empty" 0) []),(ConstrDecl (193,15) [] (Ident "OpenNest" 0) [(ArrowType (ConstructorType (QualIdent Nothing (Ident "Margins" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Remaining" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Margins" 0)) [])))),(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])]),(ConstrDecl (194,15) [] (Ident "CloseNest" 0) [(ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])])])+,(InfixDecl (43,1) InfixL 1 [(Ident "<>" 0),(Ident "<+>" 0),(Ident "<$>" 0),(Ident "</>" 0),(Ident "<$$>" 0),(Ident "<//>" 0)])+,(FunctionDecl (47,1) (Ident "deDoc" 0) [(Equation (47,1) (FunLhs (Ident "deDoc" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Doc" 0)) [(VariablePattern (Ident "d" 2))]))]) (SimpleRhs (47,17) (Variable (QualIdent Nothing (Ident "d" 2))) []))])+,(TypeSig (49,1) [(Ident "empty" 0)] (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))+,(FunctionDecl (50,1) (Ident "empty" 0) [(Equation (50,1) (FunLhs (Ident "empty" 0) []) (SimpleRhs (50,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Literal (String ""))) []))])+,(TypeSig (52,1) [(Ident "text" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (53,1) (Ident "text" 0) [(Equation (53,1) (FunLhs (Ident "text" 0) [(VariablePattern (Ident "s" 6))]) (SimpleRhs (53,10) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Text" 0))) (Variable (QualIdent Nothing (Ident "s" 6)))))) []))])+,(TypeSig (55,1) [(Ident "linesep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (56,1) (Ident "linesep" 0) [(Equation (56,1) (FunLhs (Ident "linesep" 0) []) (SimpleRhs (56,11) (InfixApply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "Line" 0)))) []))])+,(TypeSig (58,1) [(Ident "line" 0),(Ident "linebreak" 0),(Ident "softline" 0),(Ident "softbreak" 0)] (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))+,(FunctionDecl (59,1) (Ident "line" 0) [(Equation (59,1) (FunLhs (Ident "line" 0) []) (SimpleRhs (59,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "linesep" 0))) (Literal (String " "))) []))])+,(FunctionDecl (60,1) (Ident "linebreak" 0) [(Equation (60,1) (FunLhs (Ident "linebreak" 0) []) (SimpleRhs (60,13) (Apply (Variable (QualIdent (Just "Pretty") (Ident "linesep" 0))) (Literal (String ""))) []))])+,(FunctionDecl (61,1) (Ident "softline" 0) [(Equation (61,1) (FunLhs (Ident "softline" 0) []) (SimpleRhs (61,12) (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Variable (QualIdent (Just "Pretty") (Ident "line" 0)))) []))])+,(FunctionDecl (62,1) (Ident "softbreak" 0) [(Equation (62,1) (FunLhs (Ident "softbreak" 0) []) (SimpleRhs (62,13) (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0)))) []))])+,(TypeSig (64,1) [(Ident "group" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (65,1) (Ident "group" 0) [(Equation (65,1) (FunLhs (Ident "group" 0) [(VariablePattern (Ident "d" 18))]) (SimpleRhs (65,11) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Constructor (QualIdent (Just "Pretty") (Ident "Open" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d" 18)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "Close" 0))))))) []))])+,(TypeSig (67,1) [(Ident "nest" 0),(Ident "hang" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))+,(FunctionDecl (68,1) (Ident "nest" 0) [(Equation (68,1) (FunLhs (Ident "nest" 0) [(VariablePattern (Ident "i" 20)),(VariablePattern (Ident "d" 20))]) (SimpleRhs (68,12) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "OpenNest" 0))) (Paren (Lambda [(AsPattern (Ident "ms" 22) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 22)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 23))))),(VariablePattern (Ident "_" 24)),(VariablePattern (Ident "_" 25))] (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "m" 22))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 20))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ms" 22))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d" 20)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "CloseNest" 0))))))) []))])+,(FunctionDecl (69,1) (Ident "hang" 0) [(Equation (69,1) (FunLhs (Ident "hang" 0) [(VariablePattern (Ident "i" 26)),(VariablePattern (Ident "d" 26))]) (SimpleRhs (69,12) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "OpenNest" 0))) (Paren (Lambda [(VariablePattern (Ident "ms" 28)),(VariablePattern (Ident "r" 28)),(VariablePattern (Ident "w" 28))] (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "w" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "r" 28)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "i" 26))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ms" 28))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d" 26)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "CloseNest" 0))))))) []))])+,(TypeSig (71,1) [(Ident "align" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (72,1) (Ident "align" 0) [(Equation (72,1) (FunLhs (Ident "align" 0) []) (SimpleRhs (72,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "hang" 0))) (Literal (Int (Ident "_" 31) 0))) []))])+,(TypeSig (74,1) [(Ident "combine" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))+,(FunctionDecl (75,1) (Ident "combine" 0) [(Equation (75,1) (FunLhs (Ident "combine" 0) [(VariablePattern (Ident "s" 32)),(VariablePattern (Ident "d1" 32)),(VariablePattern (Ident "d2" 32))]) (SimpleRhs (75,19) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "d1" 32)))) (Variable (QualIdent Nothing (Ident "d2" 32)))) (Variable (QualIdent Nothing (Ident "s" 32)))) []))])+,(TypeSig (77,1) [(Ident "<>" 0),(Ident "<+>" 0),(Ident "<$>" 0),(Ident "</>" 0),(Ident "<$$>" 0),(Ident "<//>" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))+,(FunctionDecl (78,1) (Ident "<>" 0) [(Equation (78,1) (OpLhs (VariablePattern (Ident "d1" 34)) (Ident "<>" 0) (VariablePattern (Ident "d2" 34))) (SimpleRhs (78,12) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Doc" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d1" 34)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "deDoc" 0))) (Variable (QualIdent Nothing (Ident "d2" 34))))))) []))])+,(FunctionDecl (79,1) (Ident "<+>" 0) [(Equation (79,1) (FunLhs (Ident "<+>" 0) []) (SimpleRhs (79,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "space" 0)))) []))])+,(FunctionDecl (80,1) (Ident "<$>" 0) [(Equation (80,1) (FunLhs (Ident "<$>" 0) []) (SimpleRhs (80,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "line" 0)))) []))])+,(FunctionDecl (81,1) (Ident "</>" 0) [(Equation (81,1) (FunLhs (Ident "</>" 0) []) (SimpleRhs (81,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "softline" 0)))) []))])+,(FunctionDecl (82,1) (Ident "<$$>" 0) [(Equation (82,1) (FunLhs (Ident "<$$>" 0) []) (SimpleRhs (82,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0)))) []))])+,(FunctionDecl (83,1) (Ident "<//>" 0) [(Equation (83,1) (FunLhs (Ident "<//>" 0) []) (SimpleRhs (83,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "combine" 0))) (Variable (QualIdent (Just "Pretty") (Ident "softbreak" 0)))) []))])+,(TypeSig (85,1) [(Ident "compose" 0)] (ArrowType (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))+,(FunctionDecl (87,1) (Ident "compose" 0) [(Equation (87,1) (FunLhs (Ident "compose" 0) [(VariablePattern (Ident "_" 47)),(ListPattern [])]) (SimpleRhs (87,16) (Variable (QualIdent (Just "Dequeue") (Ident "empty" 0))) [])),(Equation (88,1) (FunLhs (Ident "compose" 0) [(VariablePattern (Ident "op" 49)),(AsPattern (Ident "ds" 49) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 50)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 51)))))]) (SimpleRhs (88,23) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr1" 0))) (Variable (QualIdent Nothing (Ident "op" 49)))) (Variable (QualIdent Nothing (Ident "ds" 49)))) []))])+,(TypeSig (90,1) [(Ident "hsep" 0),(Ident "vsep" 0),(Ident "fillSep" 0),(Ident "sep" 0),(Ident "hcat" 0),(Ident "vcat" 0),(Ident "fillCat" 0),(Ident "cat" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (91,1) (Ident "hsep" 0) [(Equation (91,1) (FunLhs (Ident "hsep" 0) []) (SimpleRhs (91,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<+>" 0)))) []))])+,(FunctionDecl (92,1) (Ident "vsep" 0) [(Equation (92,1) (FunLhs (Ident "vsep" 0) []) (SimpleRhs (92,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<$>" 0)))) []))])+,(FunctionDecl (93,1) (Ident "fillSep" 0) [(Equation (93,1) (FunLhs (Ident "fillSep" 0) []) (SimpleRhs (93,11) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "</>" 0)))) []))])+,(FunctionDecl (94,1) (Ident "sep" 0) [(Equation (94,1) (FunLhs (Ident "sep" 0) []) (SimpleRhs (94,7) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Pretty") (Ident "vsep" 0)))) []))])+,(FunctionDecl (95,1) (Ident "hcat" 0) [(Equation (95,1) (FunLhs (Ident "hcat" 0) []) (SimpleRhs (95,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<>" 0)))) []))])+,(FunctionDecl (96,1) (Ident "vcat" 0) [(Equation (96,1) (FunLhs (Ident "vcat" 0) []) (SimpleRhs (96,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<$$>" 0)))) []))])+,(FunctionDecl (97,1) (Ident "fillCat" 0) [(Equation (97,1) (FunLhs (Ident "fillCat" 0) []) (SimpleRhs (97,11) (Apply (Variable (QualIdent (Just "Pretty") (Ident "compose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "<//>" 0)))) []))])+,(FunctionDecl (98,1) (Ident "cat" 0) [(Equation (98,1) (FunLhs (Ident "cat" 0) []) (SimpleRhs (98,7) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Pretty") (Ident "vcat" 0)))) []))])+,(TypeSig (100,1) [(Ident "punctuate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))+,(FunctionDecl (101,1) (Ident "punctuate" 0) [(Equation (101,1) (FunLhs (Ident "punctuate" 0) [(VariablePattern (Ident "_" 70)),(ListPattern [])]) (SimpleRhs (101,18) (List []) [])),(Equation (102,1) (FunLhs (Ident "punctuate" 0) [(VariablePattern (Ident "d" 72)),(AsPattern (Ident "ds" 72) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 73)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 74)))))]) (SimpleRhs (102,24) (Apply (Variable (QualIdent Nothing (Ident "go" 75))) (Variable (QualIdent Nothing (Ident "ds" 72)))) [(FunctionDecl (104,3) (Ident "go" 75) [(Equation (104,3) (FunLhs (Ident "go" 75) [(ListPattern [(VariablePattern (Ident "x" 76))])]) (SimpleRhs (104,12) (List [(Variable (QualIdent Nothing (Ident "x" 76)))]) [])),(Equation (105,3) (FunLhs (Ident "go" 75) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 78)) (QualIdent Nothing (Ident ":" 0)) (AsPattern (Ident "xs" 78) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 79)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 80)))))))]) (SimpleRhs (105,21) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 78))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "d" 72))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "go" 75))) (Variable (QualIdent Nothing (Ident "xs" 78))))) []))])]))])+,(TypeSig (107,1) [(Ident "encloseSep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))))+,(FunctionDecl (108,1) (Ident "encloseSep" 0) [(Equation (108,1) (FunLhs (Ident "encloseSep" 0) [(VariablePattern (Ident "l" 82)),(VariablePattern (Ident "r" 82)),(VariablePattern (Ident "_" 83)),(ListPattern [])]) (SimpleRhs (108,23) (InfixApply (Variable (QualIdent Nothing (Ident "l" 82))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 82)))) [])),(Equation (109,1) (FunLhs (Ident "encloseSep" 0) [(VariablePattern (Ident "l" 85)),(VariablePattern (Ident "r" 85)),(VariablePattern (Ident "s" 85)),(ParenPattern (InfixPattern (VariablePattern (Ident "d" 85)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ds" 85))))]) (SimpleRhs (109,27) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "l" 85)))) (Variable (QualIdent Nothing (Ident "r" 85)))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "cat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 85))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "s" 85))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))))) (Variable (QualIdent Nothing (Ident "ds" 85))))))))))) []))])+,(TypeSig (111,1) [(Ident "hEncloseSep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))))+,(FunctionDecl (112,1) (Ident "hEncloseSep" 0) [(Equation (112,1) (FunLhs (Ident "hEncloseSep" 0) [(VariablePattern (Ident "l" 87)),(VariablePattern (Ident "r" 87)),(VariablePattern (Ident "_" 88)),(ListPattern [])]) (SimpleRhs (112,24) (InfixApply (Variable (QualIdent Nothing (Ident "l" 87))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 87)))) [])),(Equation (113,1) (FunLhs (Ident "hEncloseSep" 0) [(VariablePattern (Ident "l" 90)),(VariablePattern (Ident "r" 90)),(VariablePattern (Ident "s" 90)),(ParenPattern (InfixPattern (VariablePattern (Ident "d" 90)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ds" 90))))]) (SimpleRhs (113,28) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "l" 90)))) (Variable (QualIdent Nothing (Ident "r" 90)))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "hcat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 90))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "s" 90))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))))) (Variable (QualIdent Nothing (Ident "ds" 90))))))))))) []))])+,(TypeSig (115,1) [(Ident "fillEncloseSep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))))+,(FunctionDecl (116,1) (Ident "fillEncloseSep" 0) [(Equation (116,1) (FunLhs (Ident "fillEncloseSep" 0) [(VariablePattern (Ident "l" 92)),(VariablePattern (Ident "r" 92)),(VariablePattern (Ident "_" 93)),(ListPattern [])]) (SimpleRhs (116,27) (InfixApply (Variable (QualIdent Nothing (Ident "l" 92))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 92)))) [])),(Equation (117,1) (FunLhs (Ident "fillEncloseSep" 0) [(VariablePattern (Ident "l" 95)),(VariablePattern (Ident "r" 95)),(VariablePattern (Ident "s" 95)),(ParenPattern (InfixPattern (VariablePattern (Ident "d" 95)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ds" 95))))]) (SimpleRhs (118,5) (Apply (Variable (QualIdent (Just "Pretty") (Ident "align" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent Nothing (Ident "l" 95)))) (Variable (QualIdent Nothing (Ident "r" 95)))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "hcat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "d" 95))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "withSoftBreaks" 96))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Variable (QualIdent Nothing (Ident "s" 95))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))))) (Variable (QualIdent Nothing (Ident "ds" 95))))))))))))) [(FunctionDecl (120,3) (Ident "withSoftBreaks" 96) [(Equation (120,3) (FunLhs (Ident "withSoftBreaks" 96) [(ListPattern [])]) (SimpleRhs (120,23) (List []) [])),(Equation (121,3) (FunLhs (Ident "withSoftBreaks" 96) [(ListPattern [(VariablePattern (Ident "x" 99))])]) (SimpleRhs (121,24) (List [(Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "x" 99))))))]) [])),(Equation (122,3) (FunLhs (Ident "withSoftBreaks" 96) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 101)) (QualIdent Nothing (Ident ":" 0)) (AsPattern (Ident "xs" 101) (ParenPattern (InfixPattern (VariablePattern (Ident "_" 102)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 103)))))))]) (SimpleRhs (123,7) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "group" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 101))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent (Just "Pretty") (Ident "linebreak" 0)))))))))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "withSoftBreaks" 96))) (Variable (QualIdent Nothing (Ident "xs" 101)))))) []))])]))])+,(TypeSig (125,1) [(Ident "list" 0),(Ident "tupled" 0),(Ident "semiBraces" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (126,1) (Ident "list" 0) [(Equation (126,1) (FunLhs (Ident "list" 0) []) (SimpleRhs (126,8) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbracket" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbracket" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "comma" 0)))) []))])+,(FunctionDecl (127,1) (Ident "tupled" 0) [(Equation (127,1) (FunLhs (Ident "tupled" 0) []) (SimpleRhs (127,10) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lparen" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rparen" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "comma" 0)))) []))])+,(FunctionDecl (128,1) (Ident "semiBraces" 0) [(Equation (128,1) (FunLhs (Ident "semiBraces" 0) []) (SimpleRhs (128,14) (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "fillEncloseSep" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbrace" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbrace" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "semi" 0)))) []))])+,(TypeSig (130,1) [(Ident "enclose" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))))+,(FunctionDecl (131,1) (Ident "enclose" 0) [(Equation (131,1) (FunLhs (Ident "enclose" 0) [(VariablePattern (Ident "l" 111)),(VariablePattern (Ident "r" 111)),(VariablePattern (Ident "d" 111))]) (SimpleRhs (131,17) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "l" 111))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "d" 111)))) (InfixOp (QualIdent (Just "Pretty") (Ident "<>" 0))) (Variable (QualIdent Nothing (Ident "r" 111)))) []))])+,(TypeSig (133,1) [(Ident "squotes" 0),(Ident "dquotes" 0),(Ident "parens" 0),(Ident "angles" 0),(Ident "braces" 0),(Ident "brackets" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (134,1) (Ident "squotes" 0) [(Equation (134,1) (FunLhs (Ident "squotes" 0) []) (SimpleRhs (134,11) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "squote" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "squote" 0)))) []))])+,(FunctionDecl (135,1) (Ident "dquotes" 0) [(Equation (135,1) (FunLhs (Ident "dquotes" 0) []) (SimpleRhs (135,11) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "dquote" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "dquote" 0)))) []))])+,(FunctionDecl (136,1) (Ident "bquotes" 0) [(Equation (136,1) (FunLhs (Ident "bquotes" 0) []) (SimpleRhs (136,11) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "bquote" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "bquote" 0)))) []))])+,(FunctionDecl (137,1) (Ident "parens" 0) [(Equation (137,1) (FunLhs (Ident "parens" 0) []) (SimpleRhs (137,10) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lparen" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rparen" 0)))) []))])+,(FunctionDecl (138,1) (Ident "angles" 0) [(Equation (138,1) (FunLhs (Ident "angles" 0) []) (SimpleRhs (138,10) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "langle" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rangle" 0)))) []))])+,(FunctionDecl (139,1) (Ident "braces" 0) [(Equation (139,1) (FunLhs (Ident "braces" 0) []) (SimpleRhs (139,10) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbrace" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbrace" 0)))) []))])+,(FunctionDecl (140,1) (Ident "brackets" 0) [(Equation (140,1) (FunLhs (Ident "brackets" 0) []) (SimpleRhs (140,12) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Variable (QualIdent (Just "Pretty") (Ident "lbracket" 0)))) (Variable (QualIdent (Just "Pretty") (Ident "rbracket" 0)))) []))])+,(TypeSig (142,1) [(Ident "char" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (143,1) (Ident "char" 0) [(Equation (143,1) (FunLhs (Ident "char" 0) [(VariablePattern (Ident "c" 127))]) (SimpleRhs (143,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (List [(Variable (QualIdent Nothing (Ident "c" 127)))])) []))])+,(TypeSig (145,1) [(Ident "string" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (146,1) (Ident "string" 0) [(Equation (146,1) (FunLhs (Ident "string" 0) []) (SimpleRhs (146,10) (InfixApply (Variable (QualIdent (Just "Pretty") (Ident "hcat" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 131))] (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "elem" 0))) (Variable (QualIdent Nothing (Ident "c" 131)))) (List [(Literal (Char '\n')),(Literal (Char '\r'))])) (Variable (QualIdent (Just "Pretty") (Ident "line" 0))) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Variable (QualIdent Nothing (Ident "c" 131))))))))) []))])+,(TypeSig (148,1) [(Ident "int" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (149,1) (Ident "int" 0) [(Equation (149,1) (FunLhs (Ident "int" 0) [(VariablePattern (Ident "n" 132))]) (SimpleRhs (149,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 132)))))) []))])+,(TypeSig (151,1) [(Ident "float" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Float" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (152,1) (Ident "float" 0) [(Equation (152,1) (FunLhs (Ident "float" 0) [(VariablePattern (Ident "x" 134))]) (SimpleRhs (152,11) (Apply (Variable (QualIdent (Just "Pretty") (Ident "text" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "x" 134)))))) []))])+,(TypeSig (154,1) [(Ident "lparen" 0),(Ident "rparen" 0),(Ident "langle" 0),(Ident "rangle" 0),(Ident "lbrace" 0),(Ident "rbrace" 0),(Ident "lbracket" 0),(Ident "rbracket" 0),(Ident "squote" 0),(Ident "dquote" 0),(Ident "bquote" 0),(Ident "semi" 0),(Ident "colon" 0),(Ident "comma" 0),(Ident "space" 0),(Ident "dot" 0),(Ident "backslash" 0),(Ident "equals" 0)] (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))+,(FunctionDecl (157,1) (Ident "lparen" 0) [(Equation (157,1) (FunLhs (Ident "lparen" 0) []) (SimpleRhs (157,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '('))) []))])+,(FunctionDecl (158,1) (Ident "rparen" 0) [(Equation (158,1) (FunLhs (Ident "rparen" 0) []) (SimpleRhs (158,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ')'))) []))])+,(FunctionDecl (159,1) (Ident "langle" 0) [(Equation (159,1) (FunLhs (Ident "langle" 0) []) (SimpleRhs (159,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '<'))) []))])+,(FunctionDecl (160,1) (Ident "rangle" 0) [(Equation (160,1) (FunLhs (Ident "rangle" 0) []) (SimpleRhs (160,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '>'))) []))])+,(FunctionDecl (161,1) (Ident "lbrace" 0) [(Equation (161,1) (FunLhs (Ident "lbrace" 0) []) (SimpleRhs (161,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '{'))) []))])+,(FunctionDecl (162,1) (Ident "rbrace" 0) [(Equation (162,1) (FunLhs (Ident "rbrace" 0) []) (SimpleRhs (162,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '}'))) []))])+,(FunctionDecl (163,1) (Ident "lbracket" 0) [(Equation (163,1) (FunLhs (Ident "lbracket" 0) []) (SimpleRhs (163,12) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '['))) []))])+,(FunctionDecl (164,1) (Ident "rbracket" 0) [(Equation (164,1) (FunLhs (Ident "rbracket" 0) []) (SimpleRhs (164,12) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ']'))) []))])+,(FunctionDecl (165,1) (Ident "squote" 0) [(Equation (165,1) (FunLhs (Ident "squote" 0) []) (SimpleRhs (165,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '\''))) []))])+,(FunctionDecl (166,1) (Ident "dquote" 0) [(Equation (166,1) (FunLhs (Ident "dquote" 0) []) (SimpleRhs (166,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '"'))) []))])+,(FunctionDecl (167,1) (Ident "bquote" 0) [(Equation (167,1) (FunLhs (Ident "bquote" 0) []) (SimpleRhs (167,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '`'))) []))])+,(FunctionDecl (168,1) (Ident "semi" 0) [(Equation (168,1) (FunLhs (Ident "semi" 0) []) (SimpleRhs (168,8) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ';'))) []))])+,(FunctionDecl (169,1) (Ident "colon" 0) [(Equation (169,1) (FunLhs (Ident "colon" 0) []) (SimpleRhs (169,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ':'))) []))])+,(FunctionDecl (170,1) (Ident "comma" 0) [(Equation (170,1) (FunLhs (Ident "comma" 0) []) (SimpleRhs (170,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ','))) []))])+,(FunctionDecl (171,1) (Ident "space" 0) [(Equation (171,1) (FunLhs (Ident "space" 0) []) (SimpleRhs (171,9) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char ' '))) []))])+,(FunctionDecl (172,1) (Ident "dot" 0) [(Equation (172,1) (FunLhs (Ident "dot" 0) []) (SimpleRhs (172,7) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '.'))) []))])+,(FunctionDecl (173,1) (Ident "backslash" 0) [(Equation (173,1) (FunLhs (Ident "backslash" 0) []) (SimpleRhs (173,13) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '\\'))) []))])+,(FunctionDecl (174,1) (Ident "equals" 0) [(Equation (174,1) (FunLhs (Ident "equals" 0) []) (SimpleRhs (174,10) (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Literal (Char '='))) []))])+,(TypeSig (196,1) [(Ident "normalise" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) [])))+,(FunctionDecl (197,1) (Ident "normalise" 0) [(Equation (197,1) (FunLhs (Ident "normalise" 0) []) (SimpleRhs (197,13) (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) [(FunctionDecl (199,3) (Ident "go" 173) [(Equation (199,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 174)),(ConstructorPattern (QualIdent (Just "Pretty") (Ident "Empty" 0)) [])]) (SimpleRhs (199,17) (Apply (Variable (QualIdent Nothing (Ident "co" 174))) (Constructor (QualIdent (Just "Pretty") (Ident "Empty" 0)))) [])),(Equation (201,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 176)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 176))]))]) (SimpleRhs (201,21) (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "co" 176))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent Nothing (Ident "open" 173)))))) (Variable (QualIdent Nothing (Ident "ts" 176)))) [])),(Equation (202,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 178)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 178))]))]) (SimpleRhs (202,22) (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "co" 178))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Constructor (QualIdent (Just "Pretty") (Ident "Close" 0)))))) (Variable (QualIdent Nothing (Ident "ts" 178)))) [])),(Equation (203,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 180)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "s" 180)),(VariablePattern (Ident "ts" 180))]))]) (SimpleRhs (203,23) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "co" 180))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Line" 0))) (Variable (QualIdent Nothing (Ident "s" 180)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Variable (QualIdent Nothing (Ident "ts" 180)))) [])),(Equation (204,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 182)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "s" 182)),(VariablePattern (Ident "ts" 182))]))]) (SimpleRhs (204,23) (Apply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Text" 0))) (Variable (QualIdent Nothing (Ident "s" 182)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent Nothing (Ident "co" 182)))) (Variable (QualIdent Nothing (Ident "ts" 182)))))) [])),(Equation (205,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 184)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 184)),(VariablePattern (Ident "ts" 184))]))]) (SimpleRhs (205,27) (Apply (Apply (Constructor (QualIdent (Just "Pretty") (Ident "OpenNest" 0))) (Variable (QualIdent Nothing (Ident "f" 184)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent Nothing (Ident "co" 184)))) (Variable (QualIdent Nothing (Ident "ts" 184)))))) [])),(Equation (206,3) (FunLhs (Ident "go" 173) [(VariablePattern (Ident "co" 186)),(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 186))]))]) (SimpleRhs (206,26) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "CloseNest" 0))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "go" 173))) (Variable (QualIdent Nothing (Ident "co" 186)))) (Variable (QualIdent Nothing (Ident "ts" 186)))))) []))]),(FunctionDecl (208,3) (Ident "open" 173) [(Equation (208,3) (FunLhs (Ident "open" 173) [(VariablePattern (Ident "t" 188))]) (SimpleRhs (208,12) (Case (Variable (QualIdent Nothing (Ident "t" 188))) [(Alt (208,22) (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 190))]) (SimpleRhs (208,34) (Variable (QualIdent Nothing (Ident "ts" 190))) [])),(Alt (208,38) (VariablePattern (Ident "_" 193)) (SimpleRhs (208,43) (Apply (Constructor (QualIdent (Just "Pretty") (Ident "Open" 0))) (Variable (QualIdent Nothing (Ident "t" 188)))) []))]) []))])]))])+,(FunctionDecl (210,1) (Ident "doc2Tokens" 0) [(Equation (210,1) (FunLhs (Ident "doc2Tokens" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Doc" 0)) [(VariablePattern (Ident "d" 195))]))]) (SimpleRhs (210,22) (Apply (Variable (QualIdent (Just "Pretty") (Ident "normalise" 0))) (Paren (Apply (Variable (QualIdent Nothing (Ident "d" 195))) (Constructor (QualIdent (Just "Pretty") (Ident "Empty" 0)))))) []))])+,(TypeSig (213,1) [(Ident "pretty" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (214,1) (Ident "pretty" 0) [(Equation (214,1) (FunLhs (Ident "pretty" 0) [(VariablePattern (Ident "w" 197)),(VariablePattern (Ident "d" 197))]) (SimpleRhs (214,14) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "doc2Tokens" 0))) (Variable (QualIdent Nothing (Ident "d" 197)))))) (Variable (QualIdent Nothing (Ident "w" 197)))) (Literal (Int (Ident "_" 199) 1))) (Variable (QualIdent Nothing (Ident "w" 197)))) (List [(Literal (Int (Ident "_" 200) 0))])) []))])+,(FunctionDecl (217,1) (Ident "length" 0) [(Equation (217,1) (FunLhs (Ident "length" 0) []) (SimpleRhs (217,10) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Paren (InfixApply (List [(Literal (Int (Ident "_" 203) 5)),(Literal (Int (Ident "_" 204) 6)),(Literal (Int (Ident "_" 205) 7))]) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (EnumFromTo (Literal (Int (Ident "_" 206) 16)) (Literal (Int (Ident "_" 207) 31)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "ord" 0)))))))) []))])+,(TypeSig (219,1) [(Ident "noGroup" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) [])))))+,(FunctionDecl (220,1) (Ident "noGroup" 0) [(Equation (220,1) (FunLhs (Ident "noGroup" 0) [(ConstructorPattern (QualIdent (Just "Pretty") (Ident "Empty" 0)) []),(VariablePattern (Ident "_" 209)),(VariablePattern (Ident "_" 210)),(VariablePattern (Ident "_" 211)),(VariablePattern (Ident "_" 212))]) (SimpleRhs (220,25) (Literal (String "")) [])),(Equation (221,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "t" 214)),(VariablePattern (Ident "ts" 214))])),(VariablePattern (Ident "w" 214)),(VariablePattern (Ident "p" 214)),(VariablePattern (Ident "r" 214)),(VariablePattern (Ident "ms" 214))]) (SimpleRhs (221,32) (InfixApply (Variable (QualIdent Nothing (Ident "t" 214))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 214)))) (Variable (QualIdent Nothing (Ident "w" 214)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 214))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "l" 215)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 214))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "l" 215)))))) (Variable (QualIdent Nothing (Ident "ms" 214))))) [(PatternDecl (223,3) (VariablePattern (Ident "l" 215)) (SimpleRhs (223,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "t" 214)))) []))])),(Equation (224,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "_" 218)),(VariablePattern (Ident "ts" 217))])),(VariablePattern (Ident "w" 217)),(VariablePattern (Ident "p" 217)),(VariablePattern (Ident "_" 219)),(AsPattern (Ident "ms" 217) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 217)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 220)))))]) (SimpleRhs (225,3) (InfixApply (Literal (Char '\n')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Variable (QualIdent Nothing (Ident "m" 217)))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 217)))) (Variable (QualIdent Nothing (Ident "w" 217)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 217))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 222) 1))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "w" 217))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "m" 217)))))) (Variable (QualIdent Nothing (Ident "ms" 217)))))) [])),(Equation (226,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 223))])),(VariablePattern (Ident "w" 223)),(VariablePattern (Ident "p" 223)),(VariablePattern (Ident "r" 223)),(VariablePattern (Ident "ms" 223))]) (SimpleRhs (226,30) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 223)))) (Variable (QualIdent Nothing (Ident "w" 223)))) (Variable (QualIdent Nothing (Ident "p" 223)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 223))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "r" 223)))))) (Paren (Lambda [(VariablePattern (Ident "_" 226)),(VariablePattern (Ident "c" 225))] (Variable (QualIdent Nothing (Ident "c" 225)))))) (Variable (QualIdent Nothing (Ident "r" 223)))) (Variable (QualIdent Nothing (Ident "ms" 223)))) [])),(Equation (227,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 227))])),(VariablePattern (Ident "w" 227)),(VariablePattern (Ident "p" 227)),(VariablePattern (Ident "r" 227)),(VariablePattern (Ident "ms" 227))]) (SimpleRhs (227,31) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 227)))) (Variable (QualIdent Nothing (Ident "w" 227)))) (Variable (QualIdent Nothing (Ident "p" 227)))) (Variable (QualIdent Nothing (Ident "r" 227)))) (Variable (QualIdent Nothing (Ident "ms" 227)))) [])),(Equation (228,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 229)),(VariablePattern (Ident "ts" 229))])),(VariablePattern (Ident "w" 229)),(VariablePattern (Ident "p" 229)),(VariablePattern (Ident "r" 229)),(VariablePattern (Ident "ms" 229))]) (SimpleRhs (228,36) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 229)))) (Variable (QualIdent Nothing (Ident "w" 229)))) (Variable (QualIdent Nothing (Ident "p" 229)))) (Variable (QualIdent Nothing (Ident "r" 229)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 229))) (Variable (QualIdent Nothing (Ident "ms" 229)))) (Variable (QualIdent Nothing (Ident "r" 229)))) (Variable (QualIdent Nothing (Ident "w" 229)))))) [])),(Equation (229,1) (FunLhs (Ident "noGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 231))])),(VariablePattern (Ident "w" 231)),(VariablePattern (Ident "p" 231)),(VariablePattern (Ident "r" 231)),(VariablePattern (Ident "ms" 231))]) (SimpleRhs (229,35) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 231)))) (Variable (QualIdent Nothing (Ident "w" 231)))) (Variable (QualIdent Nothing (Ident "p" 231)))) (Variable (QualIdent Nothing (Ident "r" 231)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ms" 231)))))) []))])+,(TypeSig (231,1) [(Ident "oneGroup" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) [])))))))+,(FunctionDecl (232,1) (Ident "oneGroup" 0) [(Equation (232,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "t" 233)),(VariablePattern (Ident "ts" 233))])),(VariablePattern (Ident "w" 233)),(VariablePattern (Ident "p" 233)),(VariablePattern (Ident "e" 233)),(VariablePattern (Ident "outGrpPre" 233))]) (SimpleRhs (233,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneOne" 0))) (Variable (QualIdent Nothing (Ident "ts" 233)))) (Variable (QualIdent Nothing (Ident "w" 233)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 233))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "l" 234)))))) (Variable (QualIdent Nothing (Ident "e" 233)))) (Paren (Lambda [(VariablePattern (Ident "h" 238)),(VariablePattern (Ident "c" 238))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 233))) (Variable (QualIdent Nothing (Ident "h" 238)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "outText" 234))) (Variable (QualIdent Nothing (Ident "c" 238))))))))) [(PatternDecl (235,3) (VariablePattern (Ident "l" 234)) (SimpleRhs (235,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "t" 233)))) [])),(FunctionDecl (236,3) (Ident "outText" 234) [(Equation (236,3) (FunLhs (Ident "outText" 234) [(VariablePattern (Ident "c" 236)),(VariablePattern (Ident "r" 236)),(VariablePattern (Ident "ms" 236))]) (SimpleRhs (236,20) (InfixApply (Variable (QualIdent Nothing (Ident "t" 233))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 236))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 236))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "l" 234)))))) (Variable (QualIdent Nothing (Ident "ms" 236))))) []))])])),(Equation (237,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "s" 239)),(VariablePattern (Ident "ts" 239))])),(VariablePattern (Ident "w" 239)),(VariablePattern (Ident "p" 239)),(VariablePattern (Ident "e" 239)),(VariablePattern (Ident "outGrpPre" 239))]) (SimpleRhs (238,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneOne" 0))) (Variable (QualIdent Nothing (Ident "ts" 239)))) (Variable (QualIdent Nothing (Ident "w" 239)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 239))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lens" 240)))))) (Variable (QualIdent Nothing (Ident "e" 239)))) (Paren (Lambda [(VariablePattern (Ident "h" 245)),(VariablePattern (Ident "c" 245))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 239))) (Variable (QualIdent Nothing (Ident "h" 245)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "outLine" 240))) (Variable (QualIdent Nothing (Ident "h" 245)))) (Variable (QualIdent Nothing (Ident "c" 245))))))))) [(PatternDecl (240,3) (VariablePattern (Ident "lens" 240)) (SimpleRhs (240,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 239)))) [])),(FunctionDecl (241,3) (Ident "outLine" 240) [(Equation (241,3) (FunLhs (Ident "outLine" 240) [(VariablePattern (Ident "h" 242)),(VariablePattern (Ident "c" 242)),(VariablePattern (Ident "r" 242)),(AsPattern (Ident "ms" 242) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 242)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 243)))))]) (SimpleRhs (242,5) (IfThenElse (Variable (QualIdent Nothing (Ident "h" 242))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 239))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 242))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 242))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "lens" 240)))))) (Variable (QualIdent Nothing (Ident "ms" 242))))) (InfixApply (Literal (Char '\n')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Variable (QualIdent Nothing (Ident "m" 242)))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 242))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "w" 239))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "m" 242)))))) (Variable (QualIdent Nothing (Ident "ms" 242))))))) []))])])),(Equation (243,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 246))])),(VariablePattern (Ident "w" 246)),(VariablePattern (Ident "p" 246)),(VariablePattern (Ident "e" 246)),(VariablePattern (Ident "outGrpPre" 246))]) (SimpleRhs (244,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 246)))) (Variable (QualIdent Nothing (Ident "w" 246)))) (Variable (QualIdent Nothing (Ident "p" 246)))) (Variable (QualIdent Nothing (Ident "e" 246)))) (Variable (QualIdent Nothing (Ident "outGrpPre" 246)))) (Variable (QualIdent (Just "Dequeue") (Ident "empty" 0)))) (Variable (QualIdent Nothing (Ident "p" 246)))) (Paren (Lambda [(VariablePattern (Ident "_" 249)),(VariablePattern (Ident "c" 248))] (Variable (QualIdent Nothing (Ident "c" 248)))))) [])),(Equation (245,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 250))])),(VariablePattern (Ident "w" 250)),(VariablePattern (Ident "p" 250)),(VariablePattern (Ident "e" 250)),(VariablePattern (Ident "outGrpPre" 250))]) (SimpleRhs (245,39) (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 250))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 250))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "e" 250)))))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 250)))) (Variable (QualIdent Nothing (Ident "w" 250)))) (Variable (QualIdent Nothing (Ident "p" 250)))))) [])),(Equation (246,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 252)),(VariablePattern (Ident "ts" 252))])),(VariablePattern (Ident "w" 252)),(VariablePattern (Ident "p" 252)),(VariablePattern (Ident "e" 252)),(VariablePattern (Ident "outGrpPre" 252))]) (SimpleRhs (247,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 252)))) (Variable (QualIdent Nothing (Ident "w" 252)))) (Variable (QualIdent Nothing (Ident "p" 252)))) (Variable (QualIdent Nothing (Ident "e" 252)))) (Paren (Lambda [(VariablePattern (Ident "h" 254)),(VariablePattern (Ident "c" 254))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 252))) (Variable (QualIdent Nothing (Ident "h" 254)))) (Paren (Lambda [(VariablePattern (Ident "r" 255)),(VariablePattern (Ident "ms" 255))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 254))) (Variable (QualIdent Nothing (Ident "r" 255)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 252))) (Variable (QualIdent Nothing (Ident "ms" 255)))) (Variable (QualIdent Nothing (Ident "r" 255)))) (Variable (QualIdent Nothing (Ident "w" 252)))))))))))) [])),(Equation (248,1) (FunLhs (Ident "oneGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 256))])),(VariablePattern (Ident "w" 256)),(VariablePattern (Ident "p" 256)),(VariablePattern (Ident "e" 256)),(VariablePattern (Ident "outGrpPre" 256))]) (SimpleRhs (249,3) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 256)))) (Variable (QualIdent Nothing (Ident "w" 256)))) (Variable (QualIdent Nothing (Ident "p" 256)))) (Variable (QualIdent Nothing (Ident "e" 256)))) (Paren (Lambda [(VariablePattern (Ident "h" 258)),(VariablePattern (Ident "c" 258))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 256))) (Variable (QualIdent Nothing (Ident "h" 258)))) (Paren (Lambda [(VariablePattern (Ident "r" 259)),(VariablePattern (Ident "ms" 259))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 258))) (Variable (QualIdent Nothing (Ident "r" 259)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ms" 259)))))))))))) []))])+,(TypeSig (251,1) [(Ident "multiGroup" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []),(ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) [])])]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []))))))))))+,(FunctionDecl (254,1) (Ident "multiGroup" 0) [(Equation (254,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Text" 0)) [(VariablePattern (Ident "t" 260)),(VariablePattern (Ident "ts" 260))])),(VariablePattern (Ident "w" 260)),(VariablePattern (Ident "p" 260)),(VariablePattern (Ident "e" 260)),(VariablePattern (Ident "outGrpPreOuter" 260)),(VariablePattern (Ident "qs" 260)),(VariablePattern (Ident "s" 260)),(VariablePattern (Ident "outGrpPreInner" 260))]) (SimpleRhs (255,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneMulti" 0))) (Variable (QualIdent Nothing (Ident "ts" 260)))) (Variable (QualIdent Nothing (Ident "w" 260)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 260))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "l" 261)))))) (Variable (QualIdent Nothing (Ident "e" 260)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 260)))) (Variable (QualIdent Nothing (Ident "qs" 260)))) (Variable (QualIdent Nothing (Ident "s" 260)))) (Paren (Lambda [(VariablePattern (Ident "h" 265)),(VariablePattern (Ident "c" 265))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 260))) (Variable (QualIdent Nothing (Ident "h" 265)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "outText" 261))) (Variable (QualIdent Nothing (Ident "c" 265))))))))) [(PatternDecl (258,3) (VariablePattern (Ident "l" 261)) (SimpleRhs (258,7) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "t" 260)))) [])),(FunctionDecl (259,3) (Ident "outText" 261) [(Equation (259,3) (FunLhs (Ident "outText" 261) [(VariablePattern (Ident "c" 263)),(VariablePattern (Ident "r" 263)),(VariablePattern (Ident "ms" 263))]) (SimpleRhs (259,20) (InfixApply (Variable (QualIdent Nothing (Ident "t" 260))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 263))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 263))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "l" 261)))))) (Variable (QualIdent Nothing (Ident "ms" 263))))) []))])])),(Equation (260,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Line" 0)) [(VariablePattern (Ident "s" 266)),(VariablePattern (Ident "ts" 266))])),(VariablePattern (Ident "w" 266)),(VariablePattern (Ident "p" 266)),(VariablePattern (Ident "e" 266)),(VariablePattern (Ident "outGrpPreOuter" 266)),(VariablePattern (Ident "qs" 266)),(VariablePattern (Ident "si" 266)),(VariablePattern (Ident "outGrpPreInner" 266))]) (SimpleRhs (261,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneMulti" 0))) (Variable (QualIdent Nothing (Ident "ts" 266)))) (Variable (QualIdent Nothing (Ident "w" 266)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 266))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "lens" 267)))))) (Variable (QualIdent Nothing (Ident "e" 266)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 266)))) (Variable (QualIdent Nothing (Ident "qs" 266)))) (Variable (QualIdent Nothing (Ident "si" 266)))) (Paren (Lambda [(VariablePattern (Ident "h" 272)),(VariablePattern (Ident "c" 272))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 266))) (Variable (QualIdent Nothing (Ident "h" 272)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "outLine" 267))) (Variable (QualIdent Nothing (Ident "h" 272)))) (Variable (QualIdent Nothing (Ident "c" 272))))))))) [(PatternDecl (264,3) (VariablePattern (Ident "lens" 267)) (SimpleRhs (264,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "length" 0))) (Variable (QualIdent Nothing (Ident "s" 266)))) [])),(FunctionDecl (265,3) (Ident "outLine" 267) [(Equation (265,3) (FunLhs (Ident "outLine" 267) [(VariablePattern (Ident "h" 269)),(VariablePattern (Ident "c" 269)),(VariablePattern (Ident "r" 269)),(AsPattern (Ident "ms" 269) (ParenPattern (InfixPattern (VariablePattern (Ident "m" 269)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 270)))))]) (SimpleRhs (266,5) (IfThenElse (Variable (QualIdent Nothing (Ident "h" 269))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 266))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 269))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "r" 269))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "lens" 267)))))) (Variable (QualIdent Nothing (Ident "ms" 269))))) (InfixApply (Literal (Char '\n')) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "replicate" 0))) (Variable (QualIdent Nothing (Ident "m" 269)))) (Literal (Char ' '))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 269))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "w" 266))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "m" 269)))))) (Variable (QualIdent Nothing (Ident "ms" 269))))))) []))])])),(Equation (267,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Open" 0)) [(VariablePattern (Ident "ts" 273))])),(VariablePattern (Ident "w" 273)),(VariablePattern (Ident "p" 273)),(VariablePattern (Ident "e" 273)),(VariablePattern (Ident "outGrpPreOuter" 273)),(VariablePattern (Ident "qs" 273)),(VariablePattern (Ident "si" 273)),(VariablePattern (Ident "outGrpPreInner" 273))]) (SimpleRhs (268,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 273)))) (Variable (QualIdent Nothing (Ident "w" 273)))) (Variable (QualIdent Nothing (Ident "p" 273)))) (Variable (QualIdent Nothing (Ident "e" 273)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 273)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Dequeue") (Ident "cons" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "si" 273))),(Variable (QualIdent Nothing (Ident "outGrpPreInner" 273)))])) (Variable (QualIdent Nothing (Ident "qs" 273)))))) (Variable (QualIdent Nothing (Ident "p" 273)))) (Paren (Lambda [(VariablePattern (Ident "_" 276)),(VariablePattern (Ident "c" 275))] (Variable (QualIdent Nothing (Ident "c" 275)))))) [])),(Equation (269,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "Close" 0)) [(VariablePattern (Ident "ts" 277))])),(VariablePattern (Ident "w" 277)),(VariablePattern (Ident "p" 277)),(VariablePattern (Ident "e" 277)),(VariablePattern (Ident "outGrpPreOuter" 277)),(VariablePattern (Ident "qs" 277)),(VariablePattern (Ident "si" 277)),(VariablePattern (Ident "outGrpPreInner" 277))]) (SimpleRhs (270,3) (Case (Apply (Variable (QualIdent (Just "Dequeue") (Ident "matchHead" 0))) (Variable (QualIdent Nothing (Ident "qs" 277)))) [(Alt (271,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (271,16) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 277)))) (Variable (QualIdent Nothing (Ident "w" 277)))) (Variable (QualIdent Nothing (Ident "p" 277)))) (Variable (QualIdent Nothing (Ident "e" 277)))) (Paren (Lambda [(VariablePattern (Ident "h" 281)),(VariablePattern (Ident "c" 281))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 277))) (Variable (QualIdent Nothing (Ident "h" 281)))) (Paren (Lambda [(VariablePattern (Ident "ri" 282))] (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 277))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "si" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "ri" 282))))))) (Variable (QualIdent Nothing (Ident "c" 281)))) (Variable (QualIdent Nothing (Ident "ri" 282)))))))))) [])),(Alt (274,5) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(TuplePattern [(TuplePattern [(VariablePattern (Ident "s" 283)),(VariablePattern (Ident "outGrpPre" 283))]),(VariablePattern (Ident "qs'" 283))])]) (SimpleRhs (275,7) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 277)))) (Variable (QualIdent Nothing (Ident "w" 277)))) (Variable (QualIdent Nothing (Ident "p" 277)))) (Variable (QualIdent Nothing (Ident "e" 277)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 277)))) (Variable (QualIdent Nothing (Ident "qs'" 283)))) (Variable (QualIdent Nothing (Ident "s" 283)))) (Paren (Lambda [(VariablePattern (Ident "h" 285)),(VariablePattern (Ident "c" 285))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 283))) (Variable (QualIdent Nothing (Ident "h" 285)))) (Paren (Lambda [(VariablePattern (Ident "ri" 286))] (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 277))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "p" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "si" 277))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "ri" 286))))))) (Variable (QualIdent Nothing (Ident "c" 285)))) (Variable (QualIdent Nothing (Ident "ri" 286)))))))))) []))]) [])),(Equation (277,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "OpenNest" 0)) [(VariablePattern (Ident "f" 287)),(VariablePattern (Ident "ts" 287))])),(VariablePattern (Ident "w" 287)),(VariablePattern (Ident "p" 287)),(VariablePattern (Ident "e" 287)),(VariablePattern (Ident "outGrpPreOuter" 287)),(VariablePattern (Ident "qs" 287)),(VariablePattern (Ident "si" 287)),(VariablePattern (Ident "outGrpPreInner" 287))]) (SimpleRhs (278,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 287)))) (Variable (QualIdent Nothing (Ident "w" 287)))) (Variable (QualIdent Nothing (Ident "p" 287)))) (Variable (QualIdent Nothing (Ident "e" 287)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 287)))) (Variable (QualIdent Nothing (Ident "qs" 287)))) (Variable (QualIdent Nothing (Ident "si" 287)))) (Paren (Lambda [(VariablePattern (Ident "h" 289)),(VariablePattern (Ident "c" 289))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 287))) (Variable (QualIdent Nothing (Ident "h" 289)))) (Paren (Lambda [(VariablePattern (Ident "r" 290)),(VariablePattern (Ident "ms" 290))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 289))) (Variable (QualIdent Nothing (Ident "r" 290)))) (Paren (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 287))) (Variable (QualIdent Nothing (Ident "ms" 290)))) (Variable (QualIdent Nothing (Ident "r" 290)))) (Variable (QualIdent Nothing (Ident "w" 287)))))))))))) [])),(Equation (280,1) (FunLhs (Ident "multiGroup" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Pretty") (Ident "CloseNest" 0)) [(VariablePattern (Ident "ts" 291))])),(VariablePattern (Ident "w" 291)),(VariablePattern (Ident "p" 291)),(VariablePattern (Ident "e" 291)),(VariablePattern (Ident "outGrpPreOuter" 291)),(VariablePattern (Ident "qs" 291)),(VariablePattern (Ident "si" 291)),(VariablePattern (Ident "outGrpPreInner" 291))]) (SimpleRhs (281,3) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 291)))) (Variable (QualIdent Nothing (Ident "w" 291)))) (Variable (QualIdent Nothing (Ident "p" 291)))) (Variable (QualIdent Nothing (Ident "e" 291)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 291)))) (Variable (QualIdent Nothing (Ident "qs" 291)))) (Variable (QualIdent Nothing (Ident "si" 291)))) (Paren (Lambda [(VariablePattern (Ident "h" 293)),(VariablePattern (Ident "c" 293))] (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreInner" 291))) (Variable (QualIdent Nothing (Ident "h" 293)))) (Paren (Lambda [(VariablePattern (Ident "r" 294)),(VariablePattern (Ident "ms" 294))] (Apply (Apply (Variable (QualIdent Nothing (Ident "c" 293))) (Variable (QualIdent Nothing (Ident "r" 294)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ms" 294)))))))))))) []))])+,(TypeSig (285,1) [(Ident "pruneOne" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) [])))))))+,(FunctionDecl (286,1) (Ident "pruneOne" 0) [(Equation (286,1) (FunLhs (Ident "pruneOne" 0) [(VariablePattern (Ident "ts" 295)),(VariablePattern (Ident "w" 295)),(VariablePattern (Ident "p" 295)),(VariablePattern (Ident "e" 295)),(VariablePattern (Ident "outGrpPre" 295))]) (SimpleRhs (287,3) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "p" 295))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "e" 295)))) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "oneGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 295)))) (Variable (QualIdent Nothing (Ident "w" 295)))) (Variable (QualIdent Nothing (Ident "p" 295)))) (Variable (QualIdent Nothing (Ident "e" 295)))) (Variable (QualIdent Nothing (Ident "outGrpPre" 295)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPre" 295))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "noGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 295)))) (Variable (QualIdent Nothing (Ident "w" 295)))) (Variable (QualIdent Nothing (Ident "p" 295))))))) []))])+,(TypeSig (290,1) [(Ident "pruneMulti" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tokens" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Width" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Position" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "EndPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Queue" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []),(ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) [])])]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "StartPosition" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "OutGroupPrefix" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Out" 0)) []))))))))))+,(FunctionDecl (293,1) (Ident "pruneMulti" 0) [(Equation (293,1) (FunLhs (Ident "pruneMulti" 0) [(VariablePattern (Ident "ts" 297)),(VariablePattern (Ident "w" 297)),(VariablePattern (Ident "p" 297)),(VariablePattern (Ident "e" 297)),(VariablePattern (Ident "outGrpPreOuter" 297)),(VariablePattern (Ident "qs" 297)),(VariablePattern (Ident "si" 297)),(VariablePattern (Ident "outGrpPreInner" 297))]) (SimpleRhs (294,3) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "p" 297))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Variable (QualIdent Nothing (Ident "e" 297)))) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "multiGroup" 0))) (Variable (QualIdent Nothing (Ident "ts" 297)))) (Variable (QualIdent Nothing (Ident "w" 297)))) (Variable (QualIdent Nothing (Ident "p" 297)))) (Variable (QualIdent Nothing (Ident "e" 297)))) (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 297)))) (Variable (QualIdent Nothing (Ident "qs" 297)))) (Variable (QualIdent Nothing (Ident "si" 297)))) (Variable (QualIdent Nothing (Ident "outGrpPreInner" 297)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "outGrpPreOuter" 297))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))) (Paren (Lambda [(VariablePattern (Ident "r" 299))] (Apply (Paren (Case (Apply (Variable (QualIdent (Just "Dequeue") (Ident "matchLast" 0))) (Variable (QualIdent Nothing (Ident "qs" 297)))) [(Alt (297,23) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Nothing" 0)) []) (SimpleRhs (297,34) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneOne" 0))) (Variable (QualIdent Nothing (Ident "ts" 297)))) (Variable (QualIdent Nothing (Ident "w" 297)))) (Variable (QualIdent Nothing (Ident "p" 297)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "si" 297))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "r" 299)))))) (Variable (QualIdent Nothing (Ident "outGrpPreInner" 297)))) [])),(Alt (298,23) (ConstructorPattern (QualIdent (Just "Prelude") (Ident "Just" 0)) [(TuplePattern [(TuplePattern [(VariablePattern (Ident "s" 302)),(VariablePattern (Ident "outGrpPre" 302))]),(VariablePattern (Ident "qs'" 302))])]) (SimpleRhs (299,25) (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "pruneMulti" 0))) (Variable (QualIdent Nothing (Ident "ts" 297)))) (Variable (QualIdent Nothing (Ident "w" 297)))) (Variable (QualIdent Nothing (Ident "p" 297)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "s" 302))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "r" 299)))))) (Variable (QualIdent Nothing (Ident "outGrpPre" 302)))) (Variable (QualIdent Nothing (Ident "qs'" 302)))) (Variable (QualIdent Nothing (Ident "si" 297)))) (Variable (QualIdent Nothing (Ident "outGrpPreInner" 297)))) []))])) (Variable (QualIdent Nothing (Ident "r" 299)))))))) []))])+]
+ src/lib/Curry/Module/.curry/Pretty.efc view
@@ -0,0 +1,1 @@+Prog "Pretty" ["Dequeue","Prelude"] [TypeSyn ((Nothing,Nothing,"Pretty","Layout")) Private [] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]),TypeSyn ((Nothing,Nothing,"Pretty","Horizontal")) Private [] (TCons ((Nothing,Nothing,"Prelude","Bool")) []),TypeSyn ((Nothing,Nothing,"Pretty","Remaining")) Private [] (TCons ((Nothing,Nothing,"Prelude","Int")) []),TypeSyn ((Nothing,Nothing,"Pretty","Width")) Private [] (TCons ((Nothing,Nothing,"Prelude","Int")) []),TypeSyn ((Nothing,Nothing,"Pretty","Position")) Private [] (TCons ((Nothing,Nothing,"Prelude","Int")) []),TypeSyn ((Nothing,Nothing,"Pretty","StartPosition")) Private [] (TCons ((Nothing,Nothing,"Prelude","Int")) []),TypeSyn ((Nothing,Nothing,"Pretty","EndPosition")) Private [] (TCons ((Nothing,Nothing,"Prelude","Int")) []),TypeSyn ((Nothing,Nothing,"Pretty","Out")) Private [] (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))),TypeSyn ((Nothing,Nothing,"Pretty","OutGroupPrefix")) Private [] (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))),TypeSyn ((Nothing,Nothing,"Pretty","Margins")) Private [] (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]),Type ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) Public [] [Cons ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) 1 Private [FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) [])]],Type ((Nothing,Nothing,"Pretty","Tokens")) Private [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) 2 Private [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Pretty","Tokens")) []],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) 2 Private [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Pretty","Tokens")) []],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) 1 Private [TCons ((Nothing,Nothing,"Pretty","Tokens")) []],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) 1 Private [TCons ((Nothing,Nothing,"Pretty","Tokens")) []],Cons ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),"Pretty","Empty")) 0 Private [],Cons ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) 2 Private [FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))),TCons ((Nothing,Nothing,"Pretty","Tokens")) []],Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) 1 Private [TCons ((Nothing,Nothing,"Pretty","Tokens")) []]]] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","deDoc")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [(Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),2)]) (Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),2)))])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","empty")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","text")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","text")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","linesep")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [],Comb (ConsPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) []])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","line")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","linesep")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","linebreak")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","linesep")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","softline")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","line")) []])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","softbreak")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","linebreak")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","deDoc")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1))],Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","nest")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Pretty","nest._#lambda2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","deDoc")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))],Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Pretty","nest._#lambda2")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","hang")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [Comb (FuncPartCall 3) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Pretty","hang._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","deDoc")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))],Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Pretty","hang._#lambda3")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","align")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","hang")) [Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","combine")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","deDoc")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","deDoc")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<+>")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","combine")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","space")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<$>")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","combine")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","line")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","</>")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","combine")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","softline")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<$$>")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","combine")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","linebreak")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<//>")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","combine")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","softbreak")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) 2 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","foldr1")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","hsep")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<+>")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","vsep")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<$>")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","fillSep")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","</>")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","sep")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","vsep")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","hcat")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","vcat")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<$$>")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","fillCat")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","compose")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<//>")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","cat")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","vcat")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Pretty","punctuate")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Pretty","punctuate.go.75")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Pretty","punctuate.go.75")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Pretty","punctuate.go.75")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))))),"Pretty","encloseSep")) 4 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","align")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","cat")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6))]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))))),"Pretty","hEncloseSep")) 4 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","align")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","hcat")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6))]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))))),"Pretty","fillEncloseSep")) 4 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","align")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","hcat")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []])),"Pretty","fillEncloseSep.withSoftBreaks.96")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),6))]]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []])),"Pretty","fillEncloseSep.withSoftBreaks.96")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","linebreak")) [],Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","linebreak")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","group")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","linebreak")) []]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []])),"Pretty","fillEncloseSep.withSoftBreaks.96")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]),3))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","list")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))))),"Pretty","fillEncloseSep")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lbracket")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rbracket")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","comma")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","tupled")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))))),"Pretty","fillEncloseSep")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lparen")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rparen")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","comma")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","semiBraces")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Pretty","Doc")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") []))))),"Pretty","fillEncloseSep")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lbrace")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rbrace")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","semi")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),3))],Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","squotes")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","squote")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","squote")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","dquotes")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","dquote")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","dquote")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","bquotes")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","bquote")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","bquote")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","parens")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lparen")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rparen")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","angles")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","langle")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rangle")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","braces")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lbrace")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rbrace")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","brackets")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lbracket")) [],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rbracket")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","text")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","string")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Prelude",".")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","hcat")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Pretty","Doc") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","string._#lambda4")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","string._#lambda4")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\r'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","line")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","int")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","text")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","float")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Float")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Float") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","text")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Float") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Float") []),1))]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lparen")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '(')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rparen")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  ')')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","langle")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '<')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rangle")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '>')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lbrace")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '{')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rbrace")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '}')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","lbracket")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '[')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","rbracket")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  ']')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","squote")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '\'')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","dquote")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '"')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","bquote")) 0 Private (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '`')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","semi")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  ';')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","colon")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  ':')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","comma")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  ',')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","space")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  ' ')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","dot")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '.')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","backslash")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '\\')])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Doc") []),"Pretty","equals")) 0 Public (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Lit (Charc  '=')])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","normalise")) 0 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Prelude","id")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","normalise.open.173")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),2)]) (Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),4)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),"Pretty","Empty")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))]),Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),8),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),9)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) 2 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) [])) (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) []))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),"Pretty","Empty")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),"Pretty","Empty")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),3)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","normalise.open.173")) []],Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),3))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) []],Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),4))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Prelude","id")) []]]],Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),6))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),8)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),8))]]),Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),9),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),9)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),11)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","normalise.go.173")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),1)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),11))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","doc2Tokens")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Tokens")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","Doc")) [(Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),2)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","normalise")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),"Pretty","Empty")) []]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Pretty","pretty")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","doc2Tokens")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Doc") []),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  0),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Pretty","length")) 0 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","length")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  5),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  6),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  7),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromTo")) [Lit (Intc  16),Lit (Intc  31)]]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) []]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),"Pretty","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),7)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 15) (TVar 16)) (FuncType (TVar 15) (TVar 16))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Pretty","length")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]])),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),12)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","replicate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Lit (Charc  ' ')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),13)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),13)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Pretty","noGroup._#lambda6")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),14)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),14)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]),Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),15),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),15)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),17)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),17)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Pretty","noGroup._#lambda6")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),2)] (Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),2)))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),7)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 11) (TVar 12)) (FuncType (TVar 11) (TVar 12))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Pretty","length")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","pruneOne")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup._#lambda7")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]])),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 13) (TVar 14)) (FuncType (TVar 13) (TVar 14))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Pretty","length")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","pruneOne")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","oneGroup._#lambda8")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),12)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),12)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),"Dequeue","empty")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Pretty","oneGroup._#lambda9")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),13)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),13)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]]),Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),14),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),15)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),15)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup._#lambda10")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),14)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","oneGroup._#lambda12")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","oneGroup.outText.234")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TVar 0),5)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Var ((Just (TVar 0),5))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup._#lambda7")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","oneGroup.outText.234")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup.outLine.240")) 7 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),9)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","replicate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Lit (Charc  ' ')],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7))]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","oneGroup._#lambda8")) 6 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup.outLine.240")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Pretty","oneGroup._#lambda9")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),2)] (Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),2)))),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup._#lambda10")) 5 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","oneGroup._#lambda10._#lambda11")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","oneGroup._#lambda10._#lambda11")) 5 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","oneGroup._#lambda12")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Pretty","oneGroup._#lambda12._#lambda13")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Pretty","oneGroup._#lambda12._#lambda13")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) 8 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Text")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 19) (TVar 20)) (FuncType (TVar 19) (TVar 20))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Pretty","length")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","pruneMulti")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),10)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","multiGroup._#lambda14")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),9))]])),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","Line")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),12),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),13)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),14),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 21) (TVar 22)) (FuncType (TVar 21) (TVar 22))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Pretty","length")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),12))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","pruneMulti")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),13)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),14))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","multiGroup._#lambda15")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),14)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),12)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Open")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),15)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),15)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]))),"Dequeue","cons")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8))],Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Pretty","multiGroup._#lambda16")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","Close")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]])),"Dequeue","matchHead")) [Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]]),"Prelude","Nothing")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","multiGroup._#lambda18")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]])),"Prelude","Just")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]),17)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]),17))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 11) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]))),"Prelude","(,)")) [(Just (TVar 11),18),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),19)]) (Case  Rigid (Var ((Just (TVar 11),18))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (TVar 11))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),20),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),21)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),19)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","multiGroup._#lambda20")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),21)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))]])])])]),Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") []))),"Pretty","OpenNest")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),22),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),23)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),23)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","multiGroup._#lambda22")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),22)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (TCons (Nothing,Nothing,"Pretty","Tokens") [])),"Pretty","CloseNest")) [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),24)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),24)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","multiGroup._#lambda24")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","multiGroup.outText.261")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TVar 0),5)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Var ((Just (TVar 0),5))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","multiGroup._#lambda14")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","multiGroup.outText.261")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","multiGroup.outLine.267")) 7 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),9)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","replicate")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Lit (Charc  ' ')],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),7))]]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","multiGroup._#lambda15")) 6 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","multiGroup.outLine.267")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Pretty","multiGroup._#lambda16")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),2)] (Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),2)))),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","multiGroup._#lambda18")) 6 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))),"Pretty","multiGroup._#lambda18._#lambda19")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))),"Pretty","multiGroup._#lambda18._#lambda19")) 5 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","multiGroup._#lambda20")) 6 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),5))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))),"Pretty","multiGroup._#lambda20._#lambda21")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),6)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))),"Pretty","multiGroup._#lambda20._#lambda21")) 5 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))]]],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","multiGroup._#lambda22")) 5 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),4))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","multiGroup._#lambda22._#lambda23")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),5)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","multiGroup._#lambda22._#lambda23")) 5 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","multiGroup._#lambda24")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Pretty","multiGroup._#lambda24._#lambda25")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),3))]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Pretty","multiGroup._#lambda24._#lambda25")) 3 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","pruneOne")) 5 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","oneGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Pretty","noGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","pruneMulti")) 8 Private (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))))) (Rule [(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","multiGroup")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","pruneMulti._#lambda26")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))),"Pretty","pruneMulti._#lambda26")) 7 Private (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Dequeue","Queue")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Tokens")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))))))))) (Rule [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]])),"Dequeue","matchLast")) [Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),3))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]]),"Prelude","Nothing")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))))))),"Pretty","pruneOne")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]])),"Prelude","Just")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]),8)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 4) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))],TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]]))),"Prelude","(,)")) [(Just (TVar 4),9),(Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),10)]) (Case  Rigid (Var ((Just (TVar 4),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (TVar 4))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),12)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Tokens") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))))))),"Pretty","pruneMulti")) [Var ((Just (TCons (Nothing,Nothing,"Pretty","Tokens") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),12)),Var ((Just (TCons (Nothing,Nothing,"Dequeue","Queue") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))]]),10)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))])])])]))] [Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<>")) InfixlOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<+>")) InfixlOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<$>")) InfixlOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","</>")) InfixlOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<$$>")) InfixlOp 1,Op ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"Pretty","<//>")) InfixlOp 1]
+ src/lib/Curry/Module/.curry/Pretty.fcy view
@@ -0,0 +1,1 @@+Prog "Pretty" ["Dequeue","Prelude"] [TypeSyn ("Pretty","Layout") Private [] (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]),TypeSyn ("Pretty","Horizontal") Private [] (TCons ("Prelude","Bool") []),TypeSyn ("Pretty","Remaining") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","Width") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","Position") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","StartPosition") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","EndPosition") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","Out") Private [] (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))),TypeSyn ("Pretty","OutGroupPrefix") Private [] (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))),TypeSyn ("Pretty","Margins") Private [] (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]),Type ("Pretty","Doc") Public [] [Cons ("Pretty","Doc") 1 Private [FuncType (TCons ("Pretty","Tokens") []) (TCons ("Pretty","Tokens") [])]],Type ("Pretty","Tokens") Private [] [Cons ("Pretty","Text") 2 Private [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Pretty","Tokens") []],Cons ("Pretty","Line") 2 Private [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Pretty","Tokens") []],Cons ("Pretty","Open") 1 Private [TCons ("Pretty","Tokens") []],Cons ("Pretty","Close") 1 Private [TCons ("Pretty","Tokens") []],Cons ("Pretty","Empty") 0 Private [],Cons ("Pretty","OpenNest") 2 Private [FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))),TCons ("Pretty","Tokens") []],Cons ("Pretty","CloseNest") 1 Private [TCons ("Pretty","Tokens") []]]] [Func ("Pretty","deDoc") 1 Private (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Tokens") []) (TCons ("Pretty","Tokens") []))) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Pretty","Doc") [2]) (Var 2)])),Func ("Pretty","empty") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","text") [Comb ConsCall ("Prelude","[]") []])),Func ("Pretty","text") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Pretty","Doc") [])) (Rule [1] (Comb ConsCall ("Pretty","Doc") [Comb (ConsPartCall 1) ("Pretty","Text") [Var 1]])),Func ("Pretty","linesep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Pretty","Doc") [],Comb (ConsPartCall 2) ("Pretty","Line") []])),Func ("Pretty","line") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","linesep") [],Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]])),Func ("Pretty","linebreak") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","linesep") [],Comb ConsCall ("Prelude","[]") []])),Func ("Pretty","softline") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","group") [Comb FuncCall ("Pretty","line") []])),Func ("Pretty","softbreak") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","group") [Comb FuncCall ("Pretty","linebreak") []])),Func ("Pretty","group") 1 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [1] (Comb ConsCall ("Pretty","Doc") [Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Pretty","Open") [],Comb FuncCall ("Prelude",".") [Comb FuncCall ("Pretty","deDoc") [Var 1],Comb (ConsPartCall 1) ("Pretty","Close") []]]])),Func ("Pretty","nest") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [1,2] (Comb ConsCall ("Pretty","Doc") [Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Pretty","OpenNest") [Comb (FuncPartCall 3) ("Pretty","nest._#lambda2") [Var 1]],Comb FuncCall ("Prelude",".") [Comb FuncCall ("Pretty","deDoc") [Var 2],Comb (ConsPartCall 1) ("Pretty","CloseNest") []]]])),Func ("Pretty","nest._#lambda2") 4 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))))) (Rule [1,2,3,4] (Case  Flex (Var 2) [Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","+") [Var 5,Var 1],Var 2])])),Func ("Pretty","hang") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [1,2] (Comb ConsCall ("Pretty","Doc") [Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Pretty","OpenNest") [Comb (FuncPartCall 3) ("Pretty","hang._#lambda3") [Var 1]],Comb FuncCall ("Prelude",".") [Comb FuncCall ("Pretty","deDoc") [Var 2],Comb (ConsPartCall 1) ("Pretty","CloseNest") []]]])),Func ("Pretty","hang._#lambda3") 4 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))))) (Rule [1,2,3,4] (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 4,Var 3],Var 1],Var 2])),Func ("Pretty","align") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","hang") [Lit (Intc  0)])),Func ("Pretty","combine") 3 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])))) (Rule [1,2,3] (Comb FuncCall ("Pretty","enclose") [Var 2,Var 3,Var 1])),Func ("Pretty","<>") 2 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [1,2] (Comb ConsCall ("Pretty","Doc") [Comb FuncCall ("Prelude",".") [Comb FuncCall ("Pretty","deDoc") [Var 1],Comb FuncCall ("Pretty","deDoc") [Var 2]]])),Func ("Pretty","<+>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Comb (FuncPartCall 2) ("Pretty","combine") [Comb FuncCall ("Pretty","space") []])),Func ("Pretty","<$>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Comb (FuncPartCall 2) ("Pretty","combine") [Comb FuncCall ("Pretty","line") []])),Func ("Pretty","</>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Comb (FuncPartCall 2) ("Pretty","combine") [Comb FuncCall ("Pretty","softline") []])),Func ("Pretty","<$$>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Comb (FuncPartCall 2) ("Pretty","combine") [Comb FuncCall ("Pretty","linebreak") []])),Func ("Pretty","<//>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Comb (FuncPartCall 2) ("Pretty","combine") [Comb FuncCall ("Pretty","softbreak") []])),Func ("Pretty","compose") 2 Public (FuncType (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Pretty","empty") []),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Prelude","foldr1") [Var 1,Var 2])])),Func ("Pretty","hsep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","compose") [Comb FuncCall ("Pretty","<+>") []])),Func ("Pretty","vsep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","compose") [Comb FuncCall ("Pretty","<$>") []])),Func ("Pretty","fillSep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","compose") [Comb FuncCall ("Pretty","</>") []])),Func ("Pretty","sep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Pretty","group") [],Comb FuncCall ("Pretty","vsep") []])),Func ("Pretty","hcat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","compose") [Comb (FuncPartCall 2) ("Pretty","<>") []])),Func ("Pretty","vcat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","compose") [Comb FuncCall ("Pretty","<$$>") []])),Func ("Pretty","fillCat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","compose") [Comb FuncCall ("Pretty","<//>") []])),Func ("Pretty","cat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Pretty","group") [],Comb FuncCall ("Pretty","vcat") []])),Func ("Pretty","punctuate") 2 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Pretty","punctuate.go.75") [Var 1,Var 2])])),Func ("Pretty","punctuate.go.75") 2 Private (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Pretty","<>") [Var 3,Var 1],Comb FuncCall ("Pretty","punctuate.go.75") [Var 1,Var 4]])])])),Func ("Pretty","encloseSep") 4 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Pretty","<>") [Var 1,Var 2]),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","align") [],Comb FuncCall ("Pretty","enclose") [Var 1,Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","cat") [],Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Pretty","<>") [Var 3],Var 6]]]]])])),Func ("Pretty","hEncloseSep") 4 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Pretty","<>") [Var 1,Var 2]),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","align") [],Comb FuncCall ("Pretty","enclose") [Var 1,Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","hcat") [],Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Pretty","<>") [Var 3],Var 6]]]]])])),Func ("Pretty","fillEncloseSep") 4 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Pretty","<>") [Var 1,Var 2]),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","align") [],Comb FuncCall ("Pretty","enclose") [Var 1,Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","hcat") [],Comb ConsCall ("Prelude",":") [Var 5,Comb FuncCall ("Pretty","fillEncloseSep.withSoftBreaks.96") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Pretty","<>") [Var 3],Var 6]]]]]])])),Func ("Pretty","fillEncloseSep.withSoftBreaks.96") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Pretty","group") [Comb FuncCall ("Pretty","<>") [Comb FuncCall ("Pretty","linebreak") [],Var 2]],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Pretty","group") [Comb FuncCall ("Pretty","<>") [Comb FuncCall ("Pretty","linebreak") [],Comb FuncCall ("Pretty","group") [Comb FuncCall ("Pretty","<>") [Var 2,Comb FuncCall ("Pretty","linebreak") []]]]],Comb FuncCall ("Pretty","fillEncloseSep.withSoftBreaks.96") [Var 3]])])])),Func ("Pretty","list") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","fillEncloseSep") [Comb FuncCall ("Pretty","lbracket") [],Comb FuncCall ("Pretty","rbracket") [],Comb FuncCall ("Pretty","comma") []])),Func ("Pretty","tupled") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","fillEncloseSep") [Comb FuncCall ("Pretty","lparen") [],Comb FuncCall ("Pretty","rparen") [],Comb FuncCall ("Pretty","comma") []])),Func ("Pretty","semiBraces") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","fillEncloseSep") [Comb FuncCall ("Pretty","lbrace") [],Comb FuncCall ("Pretty","rbrace") [],Comb FuncCall ("Pretty","semi") []])),Func ("Pretty","enclose") 3 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])))) (Rule [1,2,3] (Comb FuncCall ("Pretty","<>") [Comb FuncCall ("Pretty","<>") [Var 1,Var 3],Var 2])),Func ("Pretty","squotes") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","squote") [],Comb FuncCall ("Pretty","squote") []])),Func ("Pretty","dquotes") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","dquote") [],Comb FuncCall ("Pretty","dquote") []])),Func ("Pretty","bquotes") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","bquote") [],Comb FuncCall ("Pretty","bquote") []])),Func ("Pretty","parens") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","lparen") [],Comb FuncCall ("Pretty","rparen") []])),Func ("Pretty","angles") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","langle") [],Comb FuncCall ("Pretty","rangle") []])),Func ("Pretty","braces") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","lbrace") [],Comb FuncCall ("Pretty","rbrace") []])),Func ("Pretty","brackets") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","lbracket") [],Comb FuncCall ("Pretty","rbracket") []])),Func ("Pretty","char") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Pretty","Doc") [])) (Rule [1] (Comb FuncCall ("Pretty","text") [Comb ConsCall ("Prelude",":") [Var 1,Comb ConsCall ("Prelude","[]") []]])),Func ("Pretty","string") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb FuncCall ("Pretty","hcat") [],Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("Pretty","string._#lambda4") []]])),Func ("Pretty","string._#lambda4") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Pretty","Doc") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Var 1],Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude",":") [Lit (Charc  '\r'),Comb ConsCall ("Prelude","[]") []]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Pretty","line") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Pretty","char") [Var 1])])),Func ("Pretty","int") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Pretty","Doc") [])) (Rule [1] (Comb FuncCall ("Pretty","text") [Comb FuncCall ("Prelude","show") [Var 1]])),Func ("Pretty","float") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Pretty","Doc") [])) (Rule [1] (Comb FuncCall ("Pretty","text") [Comb FuncCall ("Prelude","show") [Var 1]])),Func ("Pretty","lparen") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '(')])),Func ("Pretty","rparen") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  ')')])),Func ("Pretty","langle") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '<')])),Func ("Pretty","rangle") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '>')])),Func ("Pretty","lbrace") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '{')])),Func ("Pretty","rbrace") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '}')])),Func ("Pretty","lbracket") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '[')])),Func ("Pretty","rbracket") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  ']')])),Func ("Pretty","squote") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '\'')])),Func ("Pretty","dquote") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '"')])),Func ("Pretty","bquote") 0 Private (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '`')])),Func ("Pretty","semi") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  ';')])),Func ("Pretty","colon") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  ':')])),Func ("Pretty","comma") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  ',')])),Func ("Pretty","space") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  ' ')])),Func ("Pretty","dot") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '.')])),Func ("Pretty","backslash") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '\\')])),Func ("Pretty","equals") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Comb FuncCall ("Pretty","char") [Lit (Charc  '=')])),Func ("Pretty","normalise") 0 Private (FuncType (TCons ("Pretty","Tokens") []) (TCons ("Pretty","Tokens") [])) (Rule [] (Comb (FuncPartCall 1) ("Pretty","normalise.go.173") [Comb (FuncPartCall 1) ("Prelude","id") []])),Func ("Pretty","normalise.open.173") 1 Private (FuncType (TCons ("Pretty","Tokens") []) (TCons ("Pretty","Tokens") [])) (Rule [1] (Case  Rigid (Var 1) [Branch (Pattern ("Pretty","Close") [2]) (Var 2),Branch (Pattern ("Pretty","Text") [3,4]) (Comb ConsCall ("Pretty","Open") [Var 1]),Branch (Pattern ("Pretty","Line") [5,6]) (Comb ConsCall ("Pretty","Open") [Var 1]),Branch (Pattern ("Pretty","Open") [7]) (Comb ConsCall ("Pretty","Open") [Var 1]),Branch (Pattern ("Pretty","Empty") []) (Comb ConsCall ("Pretty","Open") [Var 1]),Branch (Pattern ("Pretty","OpenNest") [8,9]) (Comb ConsCall ("Pretty","Open") [Var 1]),Branch (Pattern ("Pretty","CloseNest") [10]) (Comb ConsCall ("Pretty","Open") [Var 1])])),Func ("Pretty","normalise.go.173") 2 Private (FuncType (FuncType (TCons ("Pretty","Tokens") []) (TCons ("Pretty","Tokens") [])) (FuncType (TCons ("Pretty","Tokens") []) (TCons ("Pretty","Tokens") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Pretty","Empty") []) (Comb FuncCall ("Prelude","apply") [Var 1,Comb ConsCall ("Pretty","Empty") []]),Branch (Pattern ("Pretty","Open") [3]) (Comb FuncCall ("Pretty","normalise.go.173") [Comb FuncCall ("Prelude",".") [Var 1,Comb (FuncPartCall 1) ("Pretty","normalise.open.173") []],Var 3]),Branch (Pattern ("Pretty","Close") [4]) (Comb FuncCall ("Pretty","normalise.go.173") [Comb FuncCall ("Prelude",".") [Var 1,Comb (ConsPartCall 1) ("Pretty","Close") []],Var 4]),Branch (Pattern ("Pretty","Line") [5,6]) (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude",".") [Var 1,Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Pretty","Line") [Var 5],Comb (FuncPartCall 1) ("Pretty","normalise.go.173") [Comb (FuncPartCall 1) ("Prelude","id") []]]],Var 6]),Branch (Pattern ("Pretty","Text") [7,8]) (Comb ConsCall ("Pretty","Text") [Var 7,Comb FuncCall ("Pretty","normalise.go.173") [Var 1,Var 8]]),Branch (Pattern ("Pretty","OpenNest") [9,10]) (Comb ConsCall ("Pretty","OpenNest") [Var 9,Comb FuncCall ("Pretty","normalise.go.173") [Var 1,Var 10]]),Branch (Pattern ("Pretty","CloseNest") [11]) (Comb ConsCall ("Pretty","CloseNest") [Comb FuncCall ("Pretty","normalise.go.173") [Var 1,Var 11]])])),Func ("Pretty","doc2Tokens") 1 Private (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Tokens") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Pretty","Doc") [2]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","normalise") [],Comb FuncCall ("Prelude","apply") [Var 2,Comb ConsCall ("Pretty","Empty") []]])])),Func ("Pretty","pretty") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Comb FuncCall ("Pretty","noGroup") [Comb FuncCall ("Pretty","doc2Tokens") [Var 2],Var 1,Lit (Intc  1),Var 1,Comb ConsCall ("Prelude",":") [Lit (Intc  0),Comb ConsCall ("Prelude","[]") []]])),Func ("Pretty","length") 0 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","length") [],Comb (FuncPartCall 1) ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","not") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 1) ("Prelude","elem") [],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Intc  5),Comb ConsCall ("Prelude",":") [Lit (Intc  6),Comb ConsCall ("Prelude",":") [Lit (Intc  7),Comb ConsCall ("Prelude","[]") []]]],Comb FuncCall ("Prelude","enumFromTo") [Lit (Intc  16),Lit (Intc  31)]]],Comb (FuncPartCall 1) ("Prelude","ord") []]]]])),Func ("Pretty","noGroup") 5 Private (FuncType (TCons ("Pretty","Tokens") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3,4,5] (Case  Flex (Var 1) [Branch (Pattern ("Pretty","Empty") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Pretty","Text") [6,7]) (Let [(8,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","length") [],Var 6])] (Comb FuncCall ("Prelude","++") [Var 6,Comb FuncCall ("Pretty","noGroup") [Var 7,Var 2,Comb FuncCall ("Prelude","+") [Var 3,Var 8],Comb FuncCall ("Prelude","-") [Var 4,Var 8],Var 5]])),Branch (Pattern ("Pretty","Line") [9,10]) (Case  Flex (Var 5) [Branch (Pattern ("Prelude",":") [11,12]) (Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","replicate") [Var 11,Lit (Charc  ' ')],Comb FuncCall ("Pretty","noGroup") [Var 10,Var 2,Comb FuncCall ("Prelude","+") [Var 3,Lit (Intc  1)],Comb FuncCall ("Prelude","-") [Var 2,Var 11],Var 5]]])]),Branch (Pattern ("Pretty","Open") [13]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","oneGroup") [Var 13,Var 2,Var 3,Comb FuncCall ("Prelude","+") [Var 3,Var 4],Comb (FuncPartCall 2) ("Pretty","noGroup._#lambda6") []],Var 4],Var 5]),Branch (Pattern ("Pretty","Close") [14]) (Comb FuncCall ("Pretty","noGroup") [Var 14,Var 2,Var 3,Var 4,Var 5]),Branch (Pattern ("Pretty","OpenNest") [15,16]) (Comb FuncCall ("Pretty","noGroup") [Var 16,Var 2,Var 3,Var 4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 15,Var 5],Var 4],Var 2]]),Branch (Pattern ("Pretty","CloseNest") [17]) (Comb FuncCall ("Pretty","noGroup") [Var 17,Var 2,Var 3,Var 4,Comb FuncCall ("Prelude","tail") [Var 5]])])),Func ("Pretty","noGroup._#lambda6") 2 Private (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (Rule [1,2] (Var 2)),Func ("Pretty","oneGroup") 5 Private (FuncType (TCons ("Pretty","Tokens") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5] (Case  Flex (Var 1) [Branch (Pattern ("Pretty","Text") [6,7]) (Let [(8,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","length") [],Var 6])] (Comb FuncCall ("Pretty","pruneOne") [Var 7,Var 2,Comb FuncCall ("Prelude","+") [Var 3,Var 8],Var 4,Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda7") [Var 8,Var 5,Var 6]])),Branch (Pattern ("Pretty","Line") [9,10]) (Let [(11,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","length") [],Var 9])] (Comb FuncCall ("Pretty","pruneOne") [Var 10,Var 2,Comb FuncCall ("Prelude","+") [Var 3,Var 11],Var 4,Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda8") [Var 11,Var 5,Var 9,Var 2]])),Branch (Pattern ("Pretty","Open") [12]) (Comb FuncCall ("Pretty","multiGroup") [Var 12,Var 2,Var 3,Var 4,Var 5,Comb FuncCall ("Dequeue","empty") [],Var 3,Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda9") []]),Branch (Pattern ("Pretty","Close") [13]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb FuncCall ("Prelude","<=") [Var 3,Var 4]],Comb (FuncPartCall 2) ("Pretty","noGroup") [Var 13,Var 2,Var 3]]),Branch (Pattern ("Pretty","OpenNest") [14,15]) (Comb FuncCall ("Pretty","oneGroup") [Var 15,Var 2,Var 3,Var 4,Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda10") [Var 14,Var 5,Var 2]]),Branch (Pattern ("Pretty","CloseNest") [16]) (Comb FuncCall ("Pretty","oneGroup") [Var 16,Var 2,Var 3,Var 4,Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda12") [Var 5]])])),Func ("Pretty","oneGroup.outText.234") 5 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","++") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Prelude","-") [Var 4,Var 1]],Var 5]])),Func ("Pretty","oneGroup._#lambda7") 5 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Comb (FuncPartCall 2) ("Pretty","oneGroup.outText.234") [Var 1,Var 3,Var 5]])),Func ("Pretty","oneGroup.outLine.240") 7 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5,6,7] (Case  Flex (Var 7) [Branch (Pattern ("Prelude",":") [8,9]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","++") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb FuncCall ("Prelude","-") [Var 6,Var 1]],Var 7]]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","replicate") [Var 8,Lit (Charc  ' ')],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb FuncCall ("Prelude","-") [Var 3,Var 8]],Var 7]]])])])),Func ("Pretty","oneGroup._#lambda8") 6 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))) (Rule [1,2,3,4,5,6] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 5],Comb (FuncPartCall 2) ("Pretty","oneGroup.outLine.240") [Var 1,Var 3,Var 4,Var 5,Var 6]])),Func ("Pretty","oneGroup._#lambda9") 2 Private (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (Rule [1,2] (Var 2)),Func ("Pretty","oneGroup._#lambda10") 5 Private (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda10._#lambda11") [Var 5,Var 1,Var 3]])),Func ("Pretty","oneGroup._#lambda10._#lambda11") 5 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 5],Var 4],Var 3]])),Func ("Pretty","oneGroup._#lambda12") 3 Private (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Comb (FuncPartCall 2) ("Pretty","oneGroup._#lambda12._#lambda13") [Var 3]])),Func ("Pretty","oneGroup._#lambda12._#lambda13") 3 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Comb FuncCall ("Prelude","tail") [Var 3]])),Func ("Pretty","multiGroup") 8 Private (FuncType (TCons ("Pretty","Tokens") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Dequeue","Queue") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))]]) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))))) (Rule [1,2,3,4,5,6,7,8] (Case  Flex (Var 1) [Branch (Pattern ("Pretty","Text") [9,10]) (Let [(11,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","length") [],Var 9])] (Comb FuncCall ("Pretty","pruneMulti") [Var 10,Var 2,Comb FuncCall ("Prelude","+") [Var 3,Var 11],Var 4,Var 5,Var 6,Var 7,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda14") [Var 11,Var 8,Var 9]])),Branch (Pattern ("Pretty","Line") [12,13]) (Let [(14,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","length") [],Var 12])] (Comb FuncCall ("Pretty","pruneMulti") [Var 13,Var 2,Comb FuncCall ("Prelude","+") [Var 3,Var 14],Var 4,Var 5,Var 6,Var 7,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda15") [Var 14,Var 8,Var 12,Var 2]])),Branch (Pattern ("Pretty","Open") [15]) (Comb FuncCall ("Pretty","multiGroup") [Var 15,Var 2,Var 3,Var 4,Var 5,Comb FuncCall ("Dequeue","cons") [Comb ConsCall ("Prelude","(,)") [Var 7,Var 8],Var 6],Var 3,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda16") []]),Branch (Pattern ("Pretty","Close") [16]) (Case  Rigid (Comb FuncCall ("Dequeue","matchHead") [Var 6]) [Branch (Pattern ("Prelude","Nothing") []) (Comb FuncCall ("Pretty","oneGroup") [Var 16,Var 2,Var 3,Var 4,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda18") [Var 8,Var 5,Var 3,Var 7]]),Branch (Pattern ("Prelude","Just") [17]) (Case  Rigid (Var 17) [Branch (Pattern ("Prelude","(,)") [18,19]) (Case  Rigid (Var 18) [Branch (Pattern ("Prelude","(,)") [20,21]) (Comb FuncCall ("Pretty","multiGroup") [Var 16,Var 2,Var 3,Var 4,Var 5,Var 19,Var 20,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda20") [Var 21,Var 8,Var 3,Var 7]])])])]),Branch (Pattern ("Pretty","OpenNest") [22,23]) (Comb FuncCall ("Pretty","multiGroup") [Var 23,Var 2,Var 3,Var 4,Var 5,Var 6,Var 7,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda22") [Var 22,Var 8,Var 2]]),Branch (Pattern ("Pretty","CloseNest") [24]) (Comb FuncCall ("Pretty","multiGroup") [Var 24,Var 2,Var 3,Var 4,Var 5,Var 6,Var 7,Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda24") [Var 8]])])),Func ("Pretty","multiGroup.outText.261") 5 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","++") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Prelude","-") [Var 4,Var 1]],Var 5]])),Func ("Pretty","multiGroup._#lambda14") 5 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Comb (FuncPartCall 2) ("Pretty","multiGroup.outText.261") [Var 1,Var 3,Var 5]])),Func ("Pretty","multiGroup.outLine.267") 7 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5,6,7] (Case  Flex (Var 7) [Branch (Pattern ("Prelude",":") [8,9]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","++") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb FuncCall ("Prelude","-") [Var 6,Var 1]],Var 7]]),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","replicate") [Var 8,Lit (Charc  ' ')],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb FuncCall ("Prelude","-") [Var 3,Var 8]],Var 7]]])])])),Func ("Pretty","multiGroup._#lambda15") 6 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))) (Rule [1,2,3,4,5,6] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 5],Comb (FuncPartCall 2) ("Pretty","multiGroup.outLine.267") [Var 1,Var 3,Var 4,Var 5,Var 6]])),Func ("Pretty","multiGroup._#lambda16") 2 Private (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (Rule [1,2] (Var 2)),Func ("Pretty","multiGroup._#lambda18") 6 Private (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))) (Rule [1,2,3,4,5,6] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 5],Comb (FuncPartCall 1) ("Pretty","multiGroup._#lambda18._#lambda19") [Var 6,Var 1,Var 3,Var 4]])),Func ("Pretty","multiGroup._#lambda18._#lambda19") 5 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","<=") [Var 3,Comb FuncCall ("Prelude","+") [Var 4,Var 5]]],Var 1],Var 5])),Func ("Pretty","multiGroup._#lambda20") 6 Private (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))) (Rule [1,2,3,4,5,6] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 5],Comb (FuncPartCall 1) ("Pretty","multiGroup._#lambda20._#lambda21") [Var 6,Var 2,Var 3,Var 4]])),Func ("Pretty","multiGroup._#lambda20._#lambda21") 5 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","<=") [Var 3,Comb FuncCall ("Prelude","+") [Var 4,Var 5]]],Var 1],Var 5])),Func ("Pretty","multiGroup._#lambda22") 5 Private (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 4],Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda22._#lambda23") [Var 5,Var 1,Var 3]])),Func ("Pretty","multiGroup._#lambda22._#lambda23") 5 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 5],Var 4],Var 3]])),Func ("Pretty","multiGroup._#lambda24") 3 Private (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Comb (FuncPartCall 2) ("Pretty","multiGroup._#lambda24._#lambda25") [Var 3]])),Func ("Pretty","multiGroup._#lambda24._#lambda25") 3 Private (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 2],Comb FuncCall ("Prelude","tail") [Var 3]])),Func ("Pretty","pruneOne") 5 Private (FuncType (TCons ("Pretty","Tokens") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))))))) (Rule [1,2,3,4,5] (Case  Rigid (Comb FuncCall ("Prelude","<=") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Pretty","oneGroup") [Var 1,Var 2,Var 3,Var 4,Var 5]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb ConsCall ("Prelude","False") []],Comb (FuncPartCall 2) ("Pretty","noGroup") [Var 1,Var 2,Var 3]])])),Func ("Pretty","pruneMulti") 8 Private (FuncType (TCons ("Pretty","Tokens") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Dequeue","Queue") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))]]) (FuncType (TCons ("Prelude","Int") []) (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))))) (Rule [1,2,3,4,5,6,7,8] (Case  Rigid (Comb FuncCall ("Prelude","<=") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Pretty","multiGroup") [Var 1,Var 2,Var 3,Var 4,Var 5,Var 6,Var 7,Var 8]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 5,Comb ConsCall ("Prelude","False") []],Comb (FuncPartCall 1) ("Pretty","pruneMulti._#lambda26") [Var 8,Var 3,Var 6,Var 7,Var 1,Var 2]])])),Func ("Pretty","pruneMulti._#lambda26") 7 Private (FuncType (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Dequeue","Queue") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))]]) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Tokens") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))))))) (Rule [1,2,3,4,5,6,7] (Case  Rigid (Comb FuncCall ("Dequeue","matchLast") [Var 3]) [Branch (Pattern ("Prelude","Nothing") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","pruneOne") [Var 5,Var 6,Var 2,Comb FuncCall ("Prelude","+") [Var 4,Var 7],Var 1],Var 7]),Branch (Pattern ("Prelude","Just") [8]) (Case  Rigid (Var 8) [Branch (Pattern ("Prelude","(,)") [9,10]) (Case  Rigid (Var 9) [Branch (Pattern ("Prelude","(,)") [11,12]) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Pretty","pruneMulti") [Var 5,Var 6,Var 2,Comb FuncCall ("Prelude","+") [Var 11,Var 7],Var 12,Var 10,Var 4,Var 1],Var 7])])])]))] [Op ("Pretty","<>") InfixlOp 1,Op ("Pretty","<+>") InfixlOp 1,Op ("Pretty","<$>") InfixlOp 1,Op ("Pretty","</>") InfixlOp 1,Op ("Pretty","<$$>") InfixlOp 1,Op ("Pretty","<//>") InfixlOp 1]
+ src/lib/Curry/Module/.curry/Pretty.fint view
@@ -0,0 +1,1 @@+Prog "Pretty" ["Dequeue","Prelude"] [TypeSyn ("Pretty","Layout") Private [] (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]),TypeSyn ("Pretty","Horizontal") Private [] (TCons ("Prelude","Bool") []),TypeSyn ("Pretty","Remaining") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","Width") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","Position") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","StartPosition") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","EndPosition") Private [] (TCons ("Prelude","Int") []),TypeSyn ("Pretty","Out") Private [] (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))),TypeSyn ("Pretty","OutGroupPrefix") Private [] (FuncType (TCons ("Prelude","Bool") []) (FuncType (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))))),TypeSyn ("Pretty","Margins") Private [] (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]),Type ("Pretty","Doc") Public [] []] [Func ("Pretty","empty") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","text") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","linesep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","line") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","linebreak") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","softline") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","softbreak") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","group") 1 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","nest") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","hang") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","align") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","combine") 3 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])))) (Rule [] (Var 0)),Func ("Pretty","<>") 2 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","<+>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","<$>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","</>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","<$$>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","<//>") 0 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","compose") 2 Public (FuncType (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))) (Rule [] (Var 0)),Func ("Pretty","hsep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","vsep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","fillSep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","sep") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","hcat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","vcat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","fillCat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","cat") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","punctuate") 2 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]))) (Rule [] (Var 0)),Func ("Pretty","encloseSep") 4 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))))) (Rule [] (Var 0)),Func ("Pretty","hEncloseSep") 4 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))))) (Rule [] (Var 0)),Func ("Pretty","fillEncloseSep") 4 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") []))))) (Rule [] (Var 0)),Func ("Pretty","list") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","tupled") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","semiBraces") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Pretty","Doc") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","enclose") 3 Public (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])))) (Rule [] (Var 0)),Func ("Pretty","squotes") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","dquotes") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","bquotes") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","parens") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","angles") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","braces") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","brackets") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","char") 1 Public (FuncType (TCons ("Prelude","Char") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","string") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","int") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","float") 1 Public (FuncType (TCons ("Prelude","Float") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("Pretty","lparen") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","rparen") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","langle") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","rangle") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","lbrace") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","rbrace") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","lbracket") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","rbracket") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","squote") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","dquote") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","semi") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","colon") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","comma") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","space") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","dot") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","backslash") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","equals") 0 Public (TCons ("Pretty","Doc") []) (Rule [] (Var 0)),Func ("Pretty","pretty") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0))] [Op ("Pretty","<>") InfixlOp 1,Op ("Pretty","<+>") InfixlOp 1,Op ("Pretty","<$>") InfixlOp 1,Op ("Pretty","</>") InfixlOp 1,Op ("Pretty","<$$>") InfixlOp 1,Op ("Pretty","<//>") InfixlOp 1]
+ src/lib/Curry/Module/.curry/Pretty.uacy view
@@ -0,0 +1,89 @@+CurryProg "Pretty"+ ["Prelude","Dequeue"]+ [CType ("Pretty","Doc") Public [] [CCons ("Pretty","Doc") 1 Public [CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") [])]],+  CTypeSyn ("Pretty","Layout") Private [] (CTCons ("Prelude","String") []),+  CTypeSyn ("Pretty","Horizontal") Private [] (CTCons ("Prelude","Bool") []),+  CTypeSyn ("Pretty","Remaining") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","Width") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","Position") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","StartPosition") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","EndPosition") Private [] (CTCons ("Prelude","Int") []),+  CTypeSyn ("Pretty","Out") Private [] (CFuncType (CTCons ("Pretty","Remaining") []) (CFuncType (CTCons ("Pretty","Margins") []) (CTCons ("Prelude","String") []))),+  CTypeSyn ("Pretty","OutGroupPrefix") Private [] (CFuncType (CTCons ("Pretty","Horizontal") []) (CFuncType (CTCons ("Pretty","Out") []) (CTCons ("Pretty","Out") []))),+  CTypeSyn ("Pretty","Margins") Private [] (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]),+  CType ("Pretty","Tokens") Private [] [CCons ("Pretty","Text") 2 Private [CTCons ("Prelude","String") [],CTCons ("Pretty","Tokens") []],CCons ("Pretty","Line") 2 Private [CTCons ("Prelude","String") [],CTCons ("Pretty","Tokens") []],CCons ("Pretty","Open") 1 Private [CTCons ("Pretty","Tokens") []],CCons ("Pretty","Close") 1 Private [CTCons ("Pretty","Tokens") []],CCons ("Pretty","Empty") 0 Private [],CCons ("Pretty","OpenNest") 2 Private [CFuncType (CTCons ("Pretty","Margins") []) (CFuncType (CTCons ("Pretty","Remaining") []) (CFuncType (CTCons ("Pretty","Width") []) (CTCons ("Pretty","Margins") []))),CTCons ("Pretty","Tokens") []],CCons ("Pretty","CloseNest") 1 Private [CTCons ("Pretty","Tokens") []]]]+ [CFunc ("Pretty","<$$>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","linebreak")))] []]),+  CFunc ("Pretty","<$>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","line")))] []]),+  CFunc ("Pretty","<+>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","space")))] []]),+  CFunc ("Pretty","<//>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","softbreak")))] []]),+  CFunc ("Pretty","</>") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","combine")) (CSymbol ("Pretty","softline")))] []]),+  CFunc ("Pretty","<>") 2 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"d1"),CPVar (1,"d2")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (0,"d1")))) (CApply (CSymbol ("Pretty","deDoc")) (CVar (1,"d2")))))] []]),+  CFunc ("Pretty","align") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","hang")) (CLit (CIntc 0)))] []]),+  CFunc ("Pretty","angles") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","langle"))) (CSymbol ("Pretty","rangle")))] []]),+  CFunc ("Pretty","backslash") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '\\')))] []]),+  CFunc ("Pretty","bquote") 0 Private (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '`')))] []]),+  CFunc ("Pretty","bquotes") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","bquote"))) (CSymbol ("Pretty","bquote")))] []]),+  CFunc ("Pretty","braces") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","lbrace"))) (CSymbol ("Pretty","rbrace")))] []]),+  CFunc ("Pretty","brackets") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","lbracket"))) (CSymbol ("Pretty","rbracket")))] []]),+  CFunc ("Pretty","cat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","group"))) (CSymbol ("Pretty","vcat")))] []]),+  CFunc ("Pretty","char") 1 Public (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("Pretty","colon") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ':')))] []]),+  CFunc ("Pretty","combine") 3 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"d1"),CPVar (2,"d2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (1,"d1"))) (CVar (2,"d2"))) (CVar (0,"s")))] []]),+  CFunc ("Pretty","comma") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ',')))] []]),+  CFunc ("Pretty","compose") 2 Public (CFuncType (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Dequeue","empty"))] [],CRule [CPVar (1,"op"),CPAs (4,"ds") (CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","foldr1")) (CVar (1,"op"))) (CVar (4,"ds")))] []]),+  CFunc ("Pretty","deDoc") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Pretty","Doc") [CPVar (0,"d")]] [(CSymbol ("Prelude","success"),CVar (0,"d"))] []]),+  CFunc ("Pretty","doc2Tokens") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Pretty","Doc") [CPVar (0,"d")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","normalise")) (CApply (CVar (0,"d")) (CSymbol ("Pretty","Empty"))))] []]),+  CFunc ("Pretty","dot") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '.')))] []]),+  CFunc ("Pretty","dquote") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '"')))] []]),+  CFunc ("Pretty","dquotes") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","dquote"))) (CSymbol ("Pretty","dquote")))] []]),+  CFunc ("Pretty","empty") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Pretty","enclose") 3 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (2,"d")))) (CVar (1,"r")))] []]),+  CFunc ("Pretty","encloseSep") 4 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (1,"r")))] [],CRule [CPVar (3,"l"),CPVar (4,"r"),CPVar (5,"s"),CPComb ("Prelude",":") [CPVar (6,"d"),CPVar (7,"ds")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","align")) (CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (3,"l"))) (CVar (4,"r"))) (CApply (CSymbol ("Pretty","cat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"d"))) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (8,"x0")] (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (5,"s"))) (CVar (8,"x0"))))) (CVar (7,"ds")))))))] []]),+  CFunc ("Pretty","equals") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '=')))] []]),+  CFunc ("Pretty","fillCat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<//>")))] []]),+  CFunc ("Pretty","fillEncloseSep") 4 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (1,"r")))] [],CRule [CPVar (3,"l"),CPVar (4,"r"),CPVar (5,"s"),CPComb ("Prelude",":") [CPVar (6,"d"),CPVar (7,"ds")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","align")) (CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (3,"l"))) (CVar (4,"r"))) (CApply (CSymbol ("Pretty","hcat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"d"))) (CApply (CSymbol ("Pretty","withSoftBreaks")) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (8,"x0")] (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (5,"s"))) (CVar (8,"x0"))))) (CVar (7,"ds"))))))))] [CLocalFunc (CFunc ("Pretty","withSoftBreaks") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (8,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Pretty","group")) (CApply (CApply (CSymbol ("Pretty","<>")) (CSymbol ("Pretty","linebreak"))) (CVar (8,"x"))))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (9,"x"),CPAs (12,"xs") (CPComb ("Prelude",":") [CPVar (10,"_"),CPVar (11,"_")])]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Pretty","group")) (CApply (CApply (CSymbol ("Pretty","<>")) (CSymbol ("Pretty","linebreak"))) (CApply (CSymbol ("Pretty","group")) (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (9,"x"))) (CSymbol ("Pretty","linebreak"))))))) (CApply (CSymbol ("Pretty","withSoftBreaks")) (CVar (12,"xs"))))] []]))]]),+  CFunc ("Pretty","fillSep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","</>")))] []]),+  CFunc ("Pretty","float") 1 Public (CFuncType (CTCons ("Prelude","Float") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"x"))))] []]),+  CFunc ("Pretty","group") 1 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"d")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","Open"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (0,"d")))) (CSymbol ("Pretty","Close")))))] []]),+  CFunc ("Pretty","hEncloseSep") 4 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") []))))) (CRules CFlex [CRule [CPVar (0,"l"),CPVar (1,"r"),CPVar (2,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","<>")) (CVar (0,"l"))) (CVar (1,"r")))] [],CRule [CPVar (3,"l"),CPVar (4,"r"),CPVar (5,"s"),CPComb ("Prelude",":") [CPVar (6,"d"),CPVar (7,"ds")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","align")) (CApply (CApply (CApply (CSymbol ("Pretty","enclose")) (CVar (3,"l"))) (CVar (4,"r"))) (CApply (CSymbol ("Pretty","hcat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"d"))) (CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (8,"x0")] (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (5,"s"))) (CVar (8,"x0"))))) (CVar (7,"ds")))))))] []]),+  CFunc ("Pretty","hang") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"i"),CPVar (1,"d")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","OpenNest")) (CLambda [CPVar (2,"ms"),CPVar (3,"r"),CPVar (4,"w")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (4,"w"))) (CVar (3,"r")))) (CVar (0,"i")))) (CVar (2,"ms")))))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (1,"d")))) (CSymbol ("Pretty","CloseNest")))))] []]),+  CFunc ("Pretty","hcat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<>")))] []]),+  CFunc ("Pretty","hsep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<+>")))] []]),+  CFunc ("Pretty","int") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","text")) (CApply (CSymbol ("Prelude","show")) (CVar (0,"n"))))] []]),+  CFunc ("Pretty","langle") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '<')))] []]),+  CFunc ("Pretty","lbrace") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '{')))] []]),+  CFunc ("Pretty","lbracket") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '[')))] []]),+  CFunc ("Pretty","length") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","length"))) (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (0,"x0")] (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (0,"x0"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 5))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 6))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 7))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CLit (CIntc 16))) (CLit (CIntc 31))))))) (CSymbol ("Prelude","ord"))))))] []]),+  CFunc ("Pretty","line") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","linesep")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("Pretty","linebreak") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","linesep")) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Pretty","linesep") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","Doc"))) (CSymbol ("Pretty","Line")))] []]),+  CFunc ("Pretty","list") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","fillEncloseSep")) (CSymbol ("Pretty","lbracket"))) (CSymbol ("Pretty","rbracket"))) (CSymbol ("Pretty","comma")))] []]),+  CFunc ("Pretty","lparen") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '(')))] []]),+  CFunc ("Pretty","multiGroup") 8 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Pretty","Width") []) (CFuncType (CTCons ("Pretty","Position") []) (CFuncType (CTCons ("Pretty","EndPosition") []) (CFuncType (CTCons ("Pretty","OutGroupPrefix") []) (CFuncType (CTCons ("Dequeue","Queue") [CTCons ("Prelude","(,)") [CTCons ("Pretty","StartPosition") [],CTCons ("Pretty","OutGroupPrefix") []]]) (CFuncType (CTCons ("Pretty","StartPosition") []) (CFuncType (CTCons ("Pretty","OutGroupPrefix") []) (CTCons ("Pretty","Out") []))))))))) (CRules CFlex [CRule [CPComb ("Pretty","Text") [CPVar (0,"t"),CPVar (1,"ts")],CPVar (2,"w"),CPVar (3,"p"),CPVar (4,"e"),CPVar (5,"outGrpPreOuter"),CPVar (6,"qs"),CPVar (7,"s"),CPVar (8,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneMulti")) (CVar (1,"ts"))) (CVar (2,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"p"))) (CVar (9,"l")))) (CVar (4,"e"))) (CVar (5,"outGrpPreOuter"))) (CVar (6,"qs"))) (CVar (7,"s"))) (CLambda [CPVar (10,"h"),CPVar (11,"c")] (CApply (CApply (CVar (8,"outGrpPreInner")) (CVar (10,"h"))) (CApply (CSymbol ("Pretty","outText")) (CVar (11,"c"))))))] [CLocalPat (CPVar (9,"l")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"t"))) [],CLocalFunc (CFunc ("Pretty","outText") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (10,"c"),CPVar (11,"r"),CPVar (12,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"t"))) (CApply (CApply (CVar (10,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (11,"r"))) (CVar (9,"l")))) (CVar (12,"ms"))))] []]))],CRule [CPComb ("Pretty","Line") [CPVar (12,"s"),CPVar (13,"ts")],CPVar (14,"w"),CPVar (15,"p"),CPVar (16,"e"),CPVar (17,"outGrpPreOuter"),CPVar (18,"qs"),CPVar (19,"si"),CPVar (20,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneMulti")) (CVar (13,"ts"))) (CVar (14,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (15,"p"))) (CVar (21,"lens")))) (CVar (16,"e"))) (CVar (17,"outGrpPreOuter"))) (CVar (18,"qs"))) (CVar (19,"si"))) (CLambda [CPVar (22,"h"),CPVar (23,"c")] (CApply (CApply (CVar (20,"outGrpPreInner")) (CVar (22,"h"))) (CApply (CApply (CSymbol ("Pretty","outLine")) (CVar (22,"h"))) (CVar (23,"c"))))))] [CLocalPat (CPVar (21,"lens")) (CApply (CSymbol ("Prelude","length")) (CVar (12,"s"))) [],CLocalFunc (CFunc ("Pretty","outLine") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (22,"h"),CPVar (23,"c"),CPVar (24,"r"),CPAs (27,"ms") (CPComb ("Prelude",":") [CPVar (25,"m"),CPVar (26,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (22,"h"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (12,"s"))) (CApply (CApply (CVar (23,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (24,"r"))) (CVar (21,"lens")))) (CVar (27,"ms"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CVar (25,"m"))) (CLit (CCharc ' ')))) (CApply (CApply (CVar (23,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (14,"w"))) (CVar (25,"m")))) (CVar (27,"ms"))))))] []]))],CRule [CPComb ("Pretty","Open") [CPVar (24,"ts")],CPVar (25,"w"),CPVar (26,"p"),CPVar (27,"e"),CPVar (28,"outGrpPreOuter"),CPVar (29,"qs"),CPVar (30,"si"),CPVar (31,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (24,"ts"))) (CVar (25,"w"))) (CVar (26,"p"))) (CVar (27,"e"))) (CVar (28,"outGrpPreOuter"))) (CApply (CApply (CSymbol ("Dequeue","cons")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (30,"si"))) (CVar (31,"outGrpPreInner")))) (CVar (29,"qs")))) (CVar (26,"p"))) (CLambda [CPVar (32,"_"),CPVar (33,"c")] (CVar (33,"c"))))] [],CRule [CPComb ("Pretty","Close") [CPVar (34,"ts")],CPVar (35,"w"),CPVar (36,"p"),CPVar (37,"e"),CPVar (38,"outGrpPreOuter"),CPVar (39,"qs"),CPVar (40,"si"),CPVar (41,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CCase (CApply (CSymbol ("Dequeue","matchHead")) (CVar (39,"qs"))) [CBranch (CPComb ("Prelude","Nothing") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (34,"ts"))) (CVar (35,"w"))) (CVar (36,"p"))) (CVar (37,"e"))) (CLambda [CPVar (42,"h"),CPVar (43,"c")] (CApply (CApply (CVar (38,"outGrpPreOuter")) (CVar (42,"h"))) (CLambda [CPVar (44,"ri")] (CApply (CApply (CApply (CVar (41,"outGrpPreInner")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (36,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (40,"si"))) (CVar (44,"ri"))))) (CVar (43,"c"))) (CVar (44,"ri"))))))),CBranch (CPComb ("Prelude","Just") [CPComb ("Prelude","(,)") [CPComb ("Prelude","(,)") [CPVar (45,"s"),CPVar (46,"outGrpPre")],CPVar (47,"qs'")]]) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (34,"ts"))) (CVar (35,"w"))) (CVar (36,"p"))) (CVar (37,"e"))) (CVar (38,"outGrpPreOuter"))) (CVar (47,"qs'"))) (CVar (45,"s"))) (CLambda [CPVar (48,"h"),CPVar (49,"c")] (CApply (CApply (CVar (46,"outGrpPre")) (CVar (48,"h"))) (CLambda [CPVar (50,"ri")] (CApply (CApply (CApply (CVar (41,"outGrpPreInner")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (36,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (40,"si"))) (CVar (50,"ri"))))) (CVar (49,"c"))) (CVar (50,"ri")))))))])] [],CRule [CPComb ("Pretty","OpenNest") [CPVar (51,"f"),CPVar (52,"ts")],CPVar (53,"w"),CPVar (54,"p"),CPVar (55,"e"),CPVar (56,"outGrpPreOuter"),CPVar (57,"qs"),CPVar (58,"si"),CPVar (59,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (52,"ts"))) (CVar (53,"w"))) (CVar (54,"p"))) (CVar (55,"e"))) (CVar (56,"outGrpPreOuter"))) (CVar (57,"qs"))) (CVar (58,"si"))) (CLambda [CPVar (60,"h"),CPVar (61,"c")] (CApply (CApply (CVar (59,"outGrpPreInner")) (CVar (60,"h"))) (CLambda [CPVar (62,"r"),CPVar (63,"ms")] (CApply (CApply (CVar (61,"c")) (CVar (62,"r"))) (CApply (CApply (CApply (CVar (51,"f")) (CVar (63,"ms"))) (CVar (62,"r"))) (CVar (53,"w"))))))))] [],CRule [CPComb ("Pretty","CloseNest") [CPVar (64,"ts")],CPVar (65,"w"),CPVar (66,"p"),CPVar (67,"e"),CPVar (68,"outGrpPreOuter"),CPVar (69,"qs"),CPVar (70,"si"),CPVar (71,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (64,"ts"))) (CVar (65,"w"))) (CVar (66,"p"))) (CVar (67,"e"))) (CVar (68,"outGrpPreOuter"))) (CVar (69,"qs"))) (CVar (70,"si"))) (CLambda [CPVar (72,"h"),CPVar (73,"c")] (CApply (CApply (CVar (71,"outGrpPreInner")) (CVar (72,"h"))) (CLambda [CPVar (74,"r"),CPVar (75,"ms")] (CApply (CApply (CVar (73,"c")) (CVar (74,"r"))) (CApply (CSymbol ("Prelude","tail")) (CVar (75,"ms"))))))))] []]),+  CFunc ("Pretty","nest") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"i"),CPVar (1,"d")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","OpenNest")) (CLambda [CPAs (4,"ms") (CPComb ("Prelude",":") [CPVar (2,"m"),CPVar (3,"_")]),CPVar (5,"_"),CPVar (6,"_")] (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"m"))) (CVar (0,"i")))) (CVar (4,"ms")))))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","deDoc")) (CVar (1,"d")))) (CSymbol ("Pretty","CloseNest")))))] []]),+  CFunc ("Pretty","noGroup") 5 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Pretty","Width") []) (CFuncType (CTCons ("Pretty","Position") []) (CTCons ("Pretty","Out") [])))) (CRules CFlex [CRule [CPComb ("Pretty","Empty") [],CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Pretty","Text") [CPVar (4,"t"),CPVar (5,"ts")],CPVar (6,"w"),CPVar (7,"p"),CPVar (8,"r"),CPVar (9,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"t"))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (5,"ts"))) (CVar (6,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (7,"p"))) (CVar (10,"l")))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (8,"r"))) (CVar (10,"l")))) (CVar (9,"ms"))))] [CLocalPat (CPVar (10,"l")) (CApply (CSymbol ("Prelude","length")) (CVar (4,"t"))) []],CRule [CPComb ("Pretty","Line") [CPVar (11,"_"),CPVar (12,"ts")],CPVar (13,"w"),CPVar (14,"p"),CPVar (15,"_"),CPAs (18,"ms") (CPComb ("Prelude",":") [CPVar (16,"m"),CPVar (17,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CVar (16,"m"))) (CLit (CCharc ' ')))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (12,"ts"))) (CVar (13,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (14,"p"))) (CLit (CIntc 1)))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (13,"w"))) (CVar (16,"m")))) (CVar (18,"ms")))))] [],CRule [CPComb ("Pretty","Open") [CPVar (19,"ts")],CPVar (20,"w"),CPVar (21,"p"),CPVar (22,"r"),CPVar (23,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (19,"ts"))) (CVar (20,"w"))) (CVar (21,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (21,"p"))) (CVar (22,"r")))) (CLambda [CPVar (24,"_"),CPVar (25,"c")] (CVar (25,"c")))) (CVar (22,"r"))) (CVar (23,"ms")))] [],CRule [CPComb ("Pretty","Close") [CPVar (26,"ts")],CPVar (27,"w"),CPVar (28,"p"),CPVar (29,"r"),CPVar (30,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (26,"ts"))) (CVar (27,"w"))) (CVar (28,"p"))) (CVar (29,"r"))) (CVar (30,"ms")))] [],CRule [CPComb ("Pretty","OpenNest") [CPVar (31,"f"),CPVar (32,"ts")],CPVar (33,"w"),CPVar (34,"p"),CPVar (35,"r"),CPVar (36,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (32,"ts"))) (CVar (33,"w"))) (CVar (34,"p"))) (CVar (35,"r"))) (CApply (CApply (CApply (CVar (31,"f")) (CVar (36,"ms"))) (CVar (35,"r"))) (CVar (33,"w"))))] [],CRule [CPComb ("Pretty","CloseNest") [CPVar (37,"ts")],CPVar (38,"w"),CPVar (39,"p"),CPVar (40,"r"),CPVar (41,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (37,"ts"))) (CVar (38,"w"))) (CVar (39,"p"))) (CVar (40,"r"))) (CApply (CSymbol ("Prelude","tail")) (CVar (41,"ms"))))] []]),+  CFunc ("Pretty","normalise") 0 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CTCons ("Pretty","Tokens") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","go")) (CSymbol ("Prelude","id")))] [CLocalFunc (CFunc ("Pretty","go") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"co"),CPComb ("Pretty","Empty") []] [(CSymbol ("Prelude","success"),CApply (CVar (0,"co")) (CSymbol ("Pretty","Empty")))] [],CRule [CPVar (1,"co"),CPComb ("Pretty","Open") [CPVar (2,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","go")) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (1,"co"))) (CSymbol ("Pretty","open")))) (CVar (2,"ts")))] [],CRule [CPVar (3,"co"),CPComb ("Pretty","Close") [CPVar (4,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","go")) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (3,"co"))) (CSymbol ("Pretty","Close")))) (CVar (4,"ts")))] [],CRule [CPVar (5,"co"),CPComb ("Pretty","Line") [CPVar (6,"s"),CPVar (7,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (5,"co"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Pretty","Line")) (CVar (6,"s")))) (CApply (CSymbol ("Pretty","go")) (CSymbol ("Prelude","id")))))) (CVar (7,"ts")))] [],CRule [CPVar (8,"co"),CPComb ("Pretty","Text") [CPVar (9,"s"),CPVar (10,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","Text")) (CVar (9,"s"))) (CApply (CApply (CSymbol ("Pretty","go")) (CVar (8,"co"))) (CVar (10,"ts"))))] [],CRule [CPVar (11,"co"),CPComb ("Pretty","OpenNest") [CPVar (12,"f"),CPVar (13,"ts")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","OpenNest")) (CVar (12,"f"))) (CApply (CApply (CSymbol ("Pretty","go")) (CVar (11,"co"))) (CVar (13,"ts"))))] [],CRule [CPVar (14,"co"),CPComb ("Pretty","CloseNest") [CPVar (15,"ts")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","CloseNest")) (CApply (CApply (CSymbol ("Pretty","go")) (CVar (14,"co"))) (CVar (15,"ts"))))] []])),CLocalFunc (CFunc ("Pretty","open") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"t")] [(CSymbol ("Prelude","success"),CCase (CVar (0,"t")) [CBranch (CPComb ("Pretty","Close") [CPVar (1,"ts")]) (CVar (1,"ts")),CBranch (CPVar (2,"_")) (CApply (CSymbol ("Pretty","Open")) (CVar (0,"t")))])] []]))]]),+  CFunc ("Pretty","oneGroup") 5 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Pretty","Width") []) (CFuncType (CTCons ("Pretty","Position") []) (CFuncType (CTCons ("Pretty","EndPosition") []) (CFuncType (CTCons ("Pretty","OutGroupPrefix") []) (CTCons ("Pretty","Out") [])))))) (CRules CFlex [CRule [CPComb ("Pretty","Text") [CPVar (0,"t"),CPVar (1,"ts")],CPVar (2,"w"),CPVar (3,"p"),CPVar (4,"e"),CPVar (5,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneOne")) (CVar (1,"ts"))) (CVar (2,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (3,"p"))) (CVar (6,"l")))) (CVar (4,"e"))) (CLambda [CPVar (7,"h"),CPVar (8,"c")] (CApply (CApply (CVar (5,"outGrpPre")) (CVar (7,"h"))) (CApply (CSymbol ("Pretty","outText")) (CVar (8,"c"))))))] [CLocalPat (CPVar (6,"l")) (CApply (CSymbol ("Prelude","length")) (CVar (0,"t"))) [],CLocalFunc (CFunc ("Pretty","outText") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (7,"c"),CPVar (8,"r"),CPVar (9,"ms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CVar (0,"t"))) (CApply (CApply (CVar (7,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (8,"r"))) (CVar (6,"l")))) (CVar (9,"ms"))))] []]))],CRule [CPComb ("Pretty","Line") [CPVar (9,"s"),CPVar (10,"ts")],CPVar (11,"w"),CPVar (12,"p"),CPVar (13,"e"),CPVar (14,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneOne")) (CVar (10,"ts"))) (CVar (11,"w"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (12,"p"))) (CVar (15,"lens")))) (CVar (13,"e"))) (CLambda [CPVar (16,"h"),CPVar (17,"c")] (CApply (CApply (CVar (14,"outGrpPre")) (CVar (16,"h"))) (CApply (CApply (CSymbol ("Pretty","outLine")) (CVar (16,"h"))) (CVar (17,"c"))))))] [CLocalPat (CPVar (15,"lens")) (CApply (CSymbol ("Prelude","length")) (CVar (9,"s"))) [],CLocalFunc (CFunc ("Pretty","outLine") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (16,"h"),CPVar (17,"c"),CPVar (18,"r"),CPAs (21,"ms") (CPComb ("Prelude",":") [CPVar (19,"m"),CPVar (20,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (16,"h"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (9,"s"))) (CApply (CApply (CVar (17,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (18,"r"))) (CVar (15,"lens")))) (CVar (21,"ms"))))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","replicate")) (CVar (19,"m"))) (CLit (CCharc ' ')))) (CApply (CApply (CVar (17,"c")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (11,"w"))) (CVar (19,"m")))) (CVar (21,"ms"))))))] []]))],CRule [CPComb ("Pretty","Open") [CPVar (18,"ts")],CPVar (19,"w"),CPVar (20,"p"),CPVar (21,"e"),CPVar (22,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (18,"ts"))) (CVar (19,"w"))) (CVar (20,"p"))) (CVar (21,"e"))) (CVar (22,"outGrpPre"))) (CSymbol ("Dequeue","empty"))) (CVar (20,"p"))) (CLambda [CPVar (23,"_"),CPVar (24,"c")] (CVar (24,"c"))))] [],CRule [CPComb ("Pretty","Close") [CPVar (25,"ts")],CPVar (26,"w"),CPVar (27,"p"),CPVar (28,"e"),CPVar (29,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (29,"outGrpPre")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (27,"p"))) (CVar (28,"e")))) (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (25,"ts"))) (CVar (26,"w"))) (CVar (27,"p"))))] [],CRule [CPComb ("Pretty","OpenNest") [CPVar (30,"f"),CPVar (31,"ts")],CPVar (32,"w"),CPVar (33,"p"),CPVar (34,"e"),CPVar (35,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (31,"ts"))) (CVar (32,"w"))) (CVar (33,"p"))) (CVar (34,"e"))) (CLambda [CPVar (36,"h"),CPVar (37,"c")] (CApply (CApply (CVar (35,"outGrpPre")) (CVar (36,"h"))) (CLambda [CPVar (38,"r"),CPVar (39,"ms")] (CApply (CApply (CVar (37,"c")) (CVar (38,"r"))) (CApply (CApply (CApply (CVar (30,"f")) (CVar (39,"ms"))) (CVar (38,"r"))) (CVar (32,"w"))))))))] [],CRule [CPComb ("Pretty","CloseNest") [CPVar (40,"ts")],CPVar (41,"w"),CPVar (42,"p"),CPVar (43,"e"),CPVar (44,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (40,"ts"))) (CVar (41,"w"))) (CVar (42,"p"))) (CVar (43,"e"))) (CLambda [CPVar (45,"h"),CPVar (46,"c")] (CApply (CApply (CVar (44,"outGrpPre")) (CVar (45,"h"))) (CLambda [CPVar (47,"r"),CPVar (48,"ms")] (CApply (CApply (CVar (46,"c")) (CVar (47,"r"))) (CApply (CSymbol ("Prelude","tail")) (CVar (48,"ms"))))))))] []]),+  CFunc ("Pretty","parens") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","lparen"))) (CSymbol ("Pretty","rparen")))] []]),+  CFunc ("Pretty","pretty") 2 Public (CFuncType (CTCons ("Pretty","Width") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Prelude","String") []))) (CRules CFlex [CRule [CPVar (0,"w"),CPVar (1,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CApply (CSymbol ("Pretty","doc2Tokens")) (CVar (1,"d")))) (CVar (0,"w"))) (CLit (CIntc 1))) (CVar (0,"w"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 0))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("Pretty","pruneMulti") 8 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Pretty","Width") []) (CFuncType (CTCons ("Pretty","Position") []) (CFuncType (CTCons ("Pretty","EndPosition") []) (CFuncType (CTCons ("Pretty","OutGroupPrefix") []) (CFuncType (CTCons ("Dequeue","Queue") [CTCons ("Prelude","(,)") [CTCons ("Pretty","StartPosition") [],CTCons ("Pretty","OutGroupPrefix") []]]) (CFuncType (CTCons ("Pretty","StartPosition") []) (CFuncType (CTCons ("Pretty","OutGroupPrefix") []) (CTCons ("Pretty","Out") []))))))))) (CRules CFlex [CRule [CPVar (0,"ts"),CPVar (1,"w"),CPVar (2,"p"),CPVar (3,"e"),CPVar (4,"outGrpPreOuter"),CPVar (5,"qs"),CPVar (6,"si"),CPVar (7,"outGrpPreInner")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (2,"p"))) (CVar (3,"e")))) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","multiGroup")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CVar (3,"e"))) (CVar (4,"outGrpPreOuter"))) (CVar (5,"qs"))) (CVar (6,"si"))) (CVar (7,"outGrpPreInner")))) (CApply (CApply (CVar (4,"outGrpPreOuter")) (CSymbol ("Prelude","False"))) (CLambda [CPVar (8,"r")] (CApply (CCase (CApply (CSymbol ("Dequeue","matchLast")) (CVar (5,"qs"))) [CBranch (CPComb ("Prelude","Nothing") []) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneOne")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (6,"si"))) (CVar (8,"r")))) (CVar (7,"outGrpPreInner"))),CBranch (CPComb ("Prelude","Just") [CPComb ("Prelude","(,)") [CPComb ("Prelude","(,)") [CPVar (9,"s"),CPVar (10,"outGrpPre")],CPVar (11,"qs'")]]) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","pruneMulti")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (9,"s"))) (CVar (8,"r")))) (CVar (10,"outGrpPre"))) (CVar (11,"qs'"))) (CVar (6,"si"))) (CVar (7,"outGrpPreInner")))]) (CVar (8,"r"))))))] []]),+  CFunc ("Pretty","pruneOne") 5 Private (CFuncType (CTCons ("Pretty","Tokens") []) (CFuncType (CTCons ("Pretty","Width") []) (CFuncType (CTCons ("Pretty","Position") []) (CFuncType (CTCons ("Pretty","EndPosition") []) (CFuncType (CTCons ("Pretty","OutGroupPrefix") []) (CTCons ("Pretty","Out") [])))))) (CRules CFlex [CRule [CPVar (0,"ts"),CPVar (1,"w"),CPVar (2,"p"),CPVar (3,"e"),CPVar (4,"outGrpPre")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (2,"p"))) (CVar (3,"e")))) (CApply (CApply (CApply (CApply (CApply (CSymbol ("Pretty","oneGroup")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p"))) (CVar (3,"e"))) (CVar (4,"outGrpPre")))) (CApply (CApply (CVar (4,"outGrpPre")) (CSymbol ("Prelude","False"))) (CApply (CApply (CApply (CSymbol ("Pretty","noGroup")) (CVar (0,"ts"))) (CVar (1,"w"))) (CVar (2,"p")))))] []]),+  CFunc ("Pretty","punctuate") 2 Public (CFuncType (CTCons ("Pretty","Doc") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"d"),CPAs (4,"ds") (CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")])] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","go")) (CVar (4,"ds")))] [CLocalFunc (CFunc ("Pretty","go") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude",":") [CPVar (5,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (5,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (6,"x"),CPAs (9,"xs") (CPComb ("Prelude",":") [CPVar (7,"_"),CPVar (8,"_")])]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Pretty","<>")) (CVar (6,"x"))) (CVar (1,"d")))) (CApply (CSymbol ("Pretty","go")) (CVar (9,"xs"))))] []]))]]),+  CFunc ("Pretty","rangle") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '>')))] []]),+  CFunc ("Pretty","rbrace") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '}')))] []]),+  CFunc ("Pretty","rbracket") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ']')))] []]),+  CFunc ("Pretty","rparen") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ')')))] []]),+  CFunc ("Pretty","semi") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ';')))] []]),+  CFunc ("Pretty","semiBraces") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","fillEncloseSep")) (CSymbol ("Pretty","lbrace"))) (CSymbol ("Pretty","rbrace"))) (CSymbol ("Pretty","semi")))] []]),+  CFunc ("Pretty","sep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","group"))) (CSymbol ("Pretty","vsep")))] []]),+  CFunc ("Pretty","softbreak") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","group")) (CSymbol ("Pretty","linebreak")))] []]),+  CFunc ("Pretty","softline") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","group")) (CSymbol ("Pretty","line")))] []]),+  CFunc ("Pretty","space") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc ' ')))] []]),+  CFunc ("Pretty","squote") 0 Public (CTCons ("Pretty","Doc") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","char")) (CLit (CCharc '\'')))] []]),+  CFunc ("Pretty","squotes") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CSymbol ("Pretty","squote"))) (CSymbol ("Pretty","squote")))] []]),+  CFunc ("Pretty","string") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Pretty","hcat"))) (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (0,"c")] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","elem")) (CVar (0,"c"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\r'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Pretty","line"))) (CApply (CSymbol ("Pretty","char")) (CVar (0,"c")))))))] []]),+  CFunc ("Pretty","text") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","Doc")) (CApply (CSymbol ("Pretty","Text")) (CVar (0,"s"))))] []]),+  CFunc ("Pretty","tupled") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Pretty","fillEncloseSep")) (CSymbol ("Pretty","lparen"))) (CSymbol ("Pretty","rparen"))) (CSymbol ("Pretty","comma")))] []]),+  CFunc ("Pretty","vcat") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<$$>")))] []]),+  CFunc ("Pretty","vsep") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Pretty","Doc") []]) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Pretty","compose")) (CSymbol ("Pretty","<$>")))] []])]+ [COp ("Pretty","<//>") CInfixlOp 1,COp ("Pretty","<$$>") CInfixlOp 1,COp ("Pretty","</>") CInfixlOp 1,COp ("Pretty","<$>") CInfixlOp 1,COp ("Pretty","<+>") CInfixlOp 1,COp ("Pretty","<>") CInfixlOp 1]
+ src/lib/Curry/Module/.curry/PropertyFile.acy view
@@ -0,0 +1,7 @@+CurryProg "PropertyFile"+ ["Prelude","Directory","IOExts","Char"]+ []+ [CFunc ("PropertyFile","changePropertyInFile") 3 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"pname"),CPVar (2,"pval")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CApply (CSymbol ("IOExts","updateFile")) (CLambda [CPVar (3,"rcs")] (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","unlines"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("PropertyFile","changeProp")))) (CSymbol ("Prelude","lines"))))) (CVar (3,"rcs"))))) (CVar (0,"file")))])] [CLocalFunc (CFunc ("PropertyFile","changeProp") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (3,"l")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"s1"),CPVar (5,"s2")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (6,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x0"))) (CLit (CCharc '='))))) (CVar (3,"l"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"l")))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Char","isAlpha")) (CApply (CSymbol ("Prelude","head")) (CVar (3,"l")))))) (CApply (CSymbol ("Prelude","null")) (CVar (5,"s2")))))) (CVar (3,"l"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"s1"))) (CVar (1,"pname")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"s1"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CVar (2,"pval"))))) (CVar (3,"l")))))] []]))]]),+  CFunc ("PropertyFile","readPropertyFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"pfexists")) (CApply (CSymbol ("Directory","doesFileExist")) (CVar (0,"file"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"pfexists"))) (CDoExpr [CSPat (CPVar (2,"rcs")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("PropertyFile","splitEqs"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (3,"l")] (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"l"))))) (CApply (CSymbol ("Char","isAlpha")) (CApply (CSymbol ("Prelude","head")) (CVar (3,"l")))))))) (CSymbol ("Prelude","lines"))))) (CVar (2,"rcs"))))])) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]"))))])] [CLocalFunc (CFunc ("PropertyFile","splitEqs") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"eq"),CPVar (2,"eqs")]] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CLit (CCharc '='))))) (CVar (1,"eq"))) [CBranch (CPComb ("Prelude","(,)") [CPVar (4,"prop"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"val")]]) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (4,"prop"))) (CVar (6,"val")))) (CApply (CSymbol ("PropertyFile","splitEqs")) (CVar (2,"eqs")))),CBranch (CPVar (7,"_")) (CApply (CSymbol ("PropertyFile","splitEqs")) (CVar (2,"eqs")))])] []]))]]),+  CFunc ("PropertyFile","updatePropertyFile") 3 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"pname"),CPVar (2,"pval")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"props")) (CApply (CSymbol ("PropertyFile","readPropertyFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (1,"pname"))) (CVar (3,"props")))) (CSymbol ("Prelude","Nothing")))) (CApply (CApply (CSymbol ("Prelude","appendFile")) (CVar (0,"file"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"pname"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"pval"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CApply (CSymbol ("PropertyFile","changePropertyInFile")) (CVar (0,"file"))) (CVar (1,"pname"))) (CVar (2,"pval"))))])] []])]+ []
+ src/lib/Curry/Module/.curry/PropertyFile.cy view
@@ -0,0 +1,13 @@+Module "PropertyFile"+(Just (Exporting (12,20) [(Export (QualIdent Nothing (Ident "readPropertyFile" 0))),(Export (QualIdent Nothing (Ident "updatePropertyFile" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (14,1) "Directory" False Nothing Nothing)+,(ImportDecl (15,1) "IOExts" False Nothing Nothing)+,(ImportDecl (16,1) "Char" False Nothing Nothing)+,(TypeSig (20,1) [(Ident "readPropertyFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))])))+,(FunctionDecl (21,1) (Ident "readPropertyFile" 0) [(Equation (21,1) (FunLhs (Ident "readPropertyFile" 0) [(VariablePattern (Ident "file" 2))]) (SimpleRhs (21,25) (Do [(StmtBind (VariablePattern (Ident "pfexists" 14)) (Apply (Variable (QualIdent (Just "Directory") (Ident "doesFileExist" 0))) (Variable (QualIdent Nothing (Ident "file" 2)))))] (IfThenElse (Variable (QualIdent Nothing (Ident "pfexists" 14))) (Do [(StmtBind (VariablePattern (Ident "rcs" 15)) (Apply (Variable (QualIdent (Just "Prelude") (Ident "readFile" 0))) (Variable (QualIdent Nothing (Ident "file" 2)))))] (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "splitEqs" 3))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (Lambda [(VariablePattern (Ident "l" 16))] (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "l" 16)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "Char") (Ident "isAlpha" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "l" 16)))))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "lines" 0))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Variable (QualIdent Nothing (Ident "rcs" 15)))))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (List [])))) [(FunctionDecl (29,3) (Ident "splitEqs" 3) [(Equation (29,3) (FunLhs (Ident "splitEqs" 3) [(ListPattern [])]) (SimpleRhs (29,17) (List []) [])),(Equation (30,3) (FunLhs (Ident "splitEqs" 3) [(ParenPattern (InfixPattern (VariablePattern (Ident "eq" 6)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "eqs" 6))))]) (SimpleRhs (30,23) (Case (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '=')))) (Variable (QualIdent Nothing (Ident "eq" 6)))) [(Alt (31,6) (TuplePattern [(VariablePattern (Ident "prop" 8)),(InfixPattern (VariablePattern (Ident "_" 9)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "val" 8)))]) (SimpleRhs (31,22) (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "prop" 8))),(Variable (QualIdent Nothing (Ident "val" 8)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "splitEqs" 3))) (Variable (QualIdent Nothing (Ident "eqs" 6))))) [])),(Alt (32,6) (VariablePattern (Ident "_" 12)) (SimpleRhs (32,22) (Apply (Variable (QualIdent Nothing (Ident "splitEqs" 3))) (Variable (QualIdent Nothing (Ident "eqs" 6)))) []))]) []))])]))])+,(TypeSig (40,1) [(Ident "updatePropertyFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))))+,(FunctionDecl (41,1) (Ident "updatePropertyFile" 0) [(Equation (41,1) (FunLhs (Ident "updatePropertyFile" 0) [(VariablePattern (Ident "file" 17)),(VariablePattern (Ident "pname" 17)),(VariablePattern (Ident "pval" 17))]) (SimpleRhs (41,38) (Do [(StmtBind (VariablePattern (Ident "props" 19)) (Apply (Variable (QualIdent (Just "PropertyFile") (Ident "readPropertyFile" 0))) (Variable (QualIdent Nothing (Ident "file" 17)))))] (IfThenElse (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "lookup" 0))) (Variable (QualIdent Nothing (Ident "pname" 17)))) (Variable (QualIdent Nothing (Ident "props" 19)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0)))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "appendFile" 0))) (Variable (QualIdent Nothing (Ident "file" 17)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "pname" 17))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "=")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "pval" 17))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "\n"))))))) (Apply (Apply (Apply (Variable (QualIdent (Just "PropertyFile") (Ident "changePropertyInFile" 0))) (Variable (QualIdent Nothing (Ident "file" 17)))) (Variable (QualIdent Nothing (Ident "pname" 17)))) (Variable (QualIdent Nothing (Ident "pval" 17)))))) []))])+,(TypeSig (48,1) [(Ident "changePropertyInFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))))+,(FunctionDecl (49,1) (Ident "changePropertyInFile" 0) [(Equation (49,1) (FunLhs (Ident "changePropertyInFile" 0) [(VariablePattern (Ident "file" 20)),(VariablePattern (Ident "pname" 20)),(VariablePattern (Ident "pval" 20))]) (SimpleRhs (49,40) (Do [] (Apply (Apply (Variable (QualIdent (Just "IOExts") (Ident "updateFile" 0))) (Paren (Lambda [(VariablePattern (Ident "rcs" 26))] (InfixApply (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "changeProp" 21)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "lines" 0))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Variable (QualIdent Nothing (Ident "rcs" 26))))))) (Variable (QualIdent Nothing (Ident "file" 20))))) [(FunctionDecl (52,3) (Ident "changeProp" 21) [(Equation (52,3) (FunLhs (Ident "changeProp" 21) [(VariablePattern (Ident "l" 22))]) (SimpleRhs (52,18) (Let [(PatternDecl (52,22) (TuplePattern [(VariablePattern (Ident "s1" 24)),(VariablePattern (Ident "s2" 24))]) (SimpleRhs (52,32) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '=')))) (Variable (QualIdent Nothing (Ident "l" 22)))) []))] (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "l" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (Paren (Apply (Variable (QualIdent (Just "Char") (Ident "isAlpha" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "l" 22)))))))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "s2" 24)))))) (Variable (QualIdent Nothing (Ident "l" 22))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "s1" 24))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "pname" 20)))) (InfixApply (Variable (QualIdent Nothing (Ident "s1" 24))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "=")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "pval" 20))))) (Variable (QualIdent Nothing (Ident "l" 22)))))) []))])]))])+]
+ src/lib/Curry/Module/.curry/PropertyFile.efc view
@@ -0,0 +1,1 @@+Prog "PropertyFile" ["Char","Directory","IOExts","Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"PropertyFile","readPropertyFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Directory","doesFileExist")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"PropertyFile","readPropertyFile._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"PropertyFile","readPropertyFile.splitEqs.3")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Lit (Charc  '=')]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]) [Branch (Pattern ((Nothing,Just (FuncType (TVar 8) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 8),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]),5)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 10) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]))),"Prelude",":")) [(Just (TVar 10),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]),7)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 8) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Var ((Just (TVar 8),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]),7))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"PropertyFile","readPropertyFile.splitEqs.3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 10]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"PropertyFile","readPropertyFile.splitEqs.3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"PropertyFile","readPropertyFile._#lambda3")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Bool")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2)] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","readFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"PropertyFile","readPropertyFile._#lambda3._#lambda4")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Prelude","return")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"PropertyFile","readPropertyFile._#lambda3._#lambda4")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Prelude","return")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"PropertyFile","readPropertyFile.splitEqs.3")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","filter")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"PropertyFile","readPropertyFile._#lambda3._#lambda4._#lambda5")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines")) []]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"PropertyFile","readPropertyFile._#lambda3._#lambda4._#lambda5")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isAlpha")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","head")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"PropertyFile","updatePropertyFile")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"PropertyFile","readPropertyFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))))),"PropertyFile","updatePropertyFile._#lambda6")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))))),"PropertyFile","updatePropertyFile._#lambda6")) 4 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","lookup")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","Nothing")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","appendFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '='),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '\n'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"PropertyFile","changePropertyInFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"PropertyFile","changePropertyInFile")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"IOExts","updateFile")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"PropertyFile","changePropertyInFile._#lambda7")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"PropertyFile","changePropertyInFile.changeProp.21")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)] (Let [((Just (TVar 3),4),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 10) (TVar 11)) (FuncType (TVar 10) (TVar 11))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 9) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 9]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 9],TCons (Nothing,Nothing,"Prelude","[]") [TVar 9]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 6) (FuncType (TVar 7) (TVar 8))) (FuncType (TVar 7) (FuncType (TVar 6) (TVar 8)))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 5) (FuncType (TVar 5) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Lit (Charc  '=')]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"PropertyFile","changePropertyInFile.changeProp.21._#selFP3#s1")) [Var ((Just (TVar 3),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"PropertyFile","changePropertyInFile.changeProp.21._#selFP4#s2")) [Var ((Just (TVar 3),4))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isAlpha")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","head")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '='),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"PropertyFile","changePropertyInFile.changeProp.21._#selFP3#s1")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"PropertyFile","changePropertyInFile.changeProp.21._#selFP4#s2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"PropertyFile","changePropertyInFile._#lambda7")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"PropertyFile","changePropertyInFile.changeProp.21")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines")) []]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]))] []
+ src/lib/Curry/Module/.curry/PropertyFile.fcy view
@@ -0,0 +1,1 @@+Prog "PropertyFile" ["Char","Directory","IOExts","Prelude"] [] [Func ("PropertyFile","readPropertyFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Directory","doesFileExist") [Var 1],Comb (FuncPartCall 1) ("PropertyFile","readPropertyFile._#lambda3") [Var 1]])),Func ("PropertyFile","readPropertyFile.splitEqs.3") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [2,3]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","==") [],Lit (Charc  '=')]],Var 2]) [Branch (Pattern ("Prelude","(,)") [4,5]) (Case  Rigid (Var 5) [Branch (Pattern ("Prelude",":") [6,7]) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 4,Var 7],Comb FuncCall ("PropertyFile","readPropertyFile.splitEqs.3") [Var 3]]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("PropertyFile","readPropertyFile.splitEqs.3") [Var 3])])])])),Func ("PropertyFile","readPropertyFile._#lambda3") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Bool") []) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]]))) (Rule [1,2] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","readFile") [Var 1],Comb (FuncPartCall 1) ("PropertyFile","readPropertyFile._#lambda3._#lambda4") []]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","return") [Comb ConsCall ("Prelude","[]") []])])),Func ("PropertyFile","readPropertyFile._#lambda3._#lambda4") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]])) (Rule [1] (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","return") [],Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("PropertyFile","readPropertyFile.splitEqs.3") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","filter") [Comb (FuncPartCall 1) ("PropertyFile","readPropertyFile._#lambda3._#lambda4._#lambda5") []],Comb (FuncPartCall 1) ("Prelude","lines") []]],Var 1]])),Func ("PropertyFile","readPropertyFile._#lambda3._#lambda4._#lambda5") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","not") [Comb FuncCall ("Prelude","null") [Var 1]],Comb FuncCall ("Char","isAlpha") [Comb FuncCall ("Prelude","head") [Var 1]]])),Func ("PropertyFile","updatePropertyFile") 3 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("PropertyFile","readPropertyFile") [Var 1],Comb (FuncPartCall 1) ("PropertyFile","updatePropertyFile._#lambda6") [Var 1,Var 2,Var 3]])),Func ("PropertyFile","updatePropertyFile._#lambda6") 4 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))))) (Rule [1,2,3,4] (Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","lookup") [Var 2,Var 4],Comb ConsCall ("Prelude","Nothing") []]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","appendFile") [Var 1,Comb FuncCall ("Prelude","++") [Var 2,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '='),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Var 3,Comb ConsCall ("Prelude",":") [Lit (Charc  '\n'),Comb ConsCall ("Prelude","[]") []]]]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("PropertyFile","changePropertyInFile") [Var 1,Var 2,Var 3])])),Func ("PropertyFile","changePropertyInFile") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Comb FuncCall ("IOExts","updateFile") [Comb (FuncPartCall 1) ("PropertyFile","changePropertyInFile._#lambda7") [Var 2,Var 3],Var 1])),Func ("PropertyFile","changePropertyInFile.changeProp.21") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))) (Rule [1,2,3] (Let [(4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","==") [],Lit (Charc  '=')]],Var 3])] (Let [(5,Comb FuncCall ("PropertyFile","changePropertyInFile.changeProp.21._#selFP3#s1") [Var 4])] (Let [(6,Comb FuncCall ("PropertyFile","changePropertyInFile.changeProp.21._#selFP4#s2") [Var 4])] (Case  Rigid (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","null") [Var 3],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","not") [Comb FuncCall ("Char","isAlpha") [Comb FuncCall ("Prelude","head") [Var 3]]],Comb FuncCall ("Prelude","null") [Var 6]]]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 5,Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","++") [Var 5,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '='),Comb ConsCall ("Prelude","[]") []],Var 2]]),Branch (Pattern ("Prelude","False") []) (Var 3)])]))))),Func ("PropertyFile","changePropertyInFile.changeProp.21._#selFP3#s1") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("PropertyFile","changePropertyInFile.changeProp.21._#selFP4#s2") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("PropertyFile","changePropertyInFile._#lambda7") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","unlines") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("PropertyFile","changePropertyInFile.changeProp.21") [Var 1,Var 2]],Comb (FuncPartCall 1) ("Prelude","lines") []]],Var 3]))] []
+ src/lib/Curry/Module/.curry/PropertyFile.fint view
@@ -0,0 +1,1 @@+Prog "PropertyFile" ["Char","Directory","IOExts","Prelude"] [] [Func ("PropertyFile","readPropertyFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]])) (Rule [] (Var 0)),Func ("PropertyFile","updatePropertyFile") 3 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/PropertyFile.uacy view
@@ -0,0 +1,7 @@+CurryProg "PropertyFile"+ ["Prelude","Directory","IOExts","Char"]+ []+ [CFunc ("PropertyFile","changePropertyInFile") 3 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"pname"),CPVar (2,"pval")] [(CSymbol ("Prelude","success"),CDoExpr [CSExpr (CApply (CApply (CSymbol ("IOExts","updateFile")) (CLambda [CPVar (3,"rcs")] (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","unlines"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("PropertyFile","changeProp")))) (CSymbol ("Prelude","lines"))))) (CVar (3,"rcs"))))) (CVar (0,"file")))])] [CLocalFunc (CFunc ("PropertyFile","changeProp") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"l")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"s1"),CPVar (5,"s2")]) (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (6,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x0"))) (CLit (CCharc '='))))) (CVar (3,"l"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"l")))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Char","isAlpha")) (CApply (CSymbol ("Prelude","head")) (CVar (3,"l")))))) (CApply (CSymbol ("Prelude","null")) (CVar (5,"s2")))))) (CVar (3,"l"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"s1"))) (CVar (1,"pname")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (4,"s1"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CVar (2,"pval"))))) (CVar (3,"l")))))] []]))]]),+  CFunc ("PropertyFile","readPropertyFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","String") []]]])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"pfexists")) (CApply (CSymbol ("Directory","doesFileExist")) (CVar (0,"file"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CVar (1,"pfexists"))) (CDoExpr [CSPat (CPVar (2,"rcs")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","$")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("PropertyFile","splitEqs"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (3,"l")] (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("Prelude","not")) (CApply (CSymbol ("Prelude","null")) (CVar (3,"l"))))) (CApply (CSymbol ("Char","isAlpha")) (CApply (CSymbol ("Prelude","head")) (CVar (3,"l")))))))) (CSymbol ("Prelude","lines"))))) (CVar (2,"rcs"))))])) (CApply (CSymbol ("Prelude","return")) (CSymbol ("Prelude","[]"))))])] [CLocalFunc (CFunc ("PropertyFile","splitEqs") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"eq"),CPVar (2,"eqs")]] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("Prelude","break")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"x0"))) (CLit (CCharc '='))))) (CVar (1,"eq"))) [CBranch (CPComb ("Prelude","(,)") [CPVar (4,"prop"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"val")]]) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (4,"prop"))) (CVar (6,"val")))) (CApply (CSymbol ("PropertyFile","splitEqs")) (CVar (2,"eqs")))),CBranch (CPVar (7,"_")) (CApply (CSymbol ("PropertyFile","splitEqs")) (CVar (2,"eqs")))])] []]))]]),+  CFunc ("PropertyFile","updatePropertyFile") 3 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])))) (CRules CFlex [CRule [CPVar (0,"file"),CPVar (1,"pname"),CPVar (2,"pval")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (3,"props")) (CApply (CSymbol ("PropertyFile","readPropertyFile")) (CVar (0,"file"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (1,"pname"))) (CVar (3,"props")))) (CSymbol ("Prelude","Nothing")))) (CApply (CApply (CSymbol ("Prelude","appendFile")) (CVar (0,"file"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"pname"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"pval"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '\n'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CApply (CSymbol ("PropertyFile","changePropertyInFile")) (CVar (0,"file"))) (CVar (1,"pname"))) (CVar (2,"pval"))))])] []])]+ []
+ src/lib/Curry/Module/.curry/Random.acy view
@@ -0,0 +1,20 @@+CurryProg "Random"+ ["Prelude","Time","System"]+ []+ [CFunc ("Random","addend") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 11))] []]),+  CFunc ("Random","getRandomSeed") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CSymbol ("Time","getClockTime"))) (CLambda [CPVar (0,"time")] (CApply (CApply (CSymbol ("Prelude",">>=")) (CSymbol ("System","getCPUTime"))) (CLambda [CPVar (1,"msecs")] (CLetDecl [CLocalPat (CPComb ("Time","CalendarTime") [CPVar (2,"y"),CPVar (3,"mo"),CPVar (4,"d"),CPVar (5,"h"),CPVar (6,"m"),CPVar (7,"s"),CPVar (8,"_")]) (CApply (CSymbol ("Time","toUTCTime")) (CVar (0,"time"))) []] (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"y"))) (CVar (3,"mo")))) (CVar (4,"d")))) (CVar (5,"h")))) (CApply (CApply (CSymbol ("Prelude","*")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (6,"m"))) (CVar (7,"s")))) (CVar (1,"msecs"))))) (CSymbol ("Random","mask")))))))))] []]),+  CFunc ("Random","intlimit") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 2147483648))] []]),+  CFunc ("Random","intsize") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 32))] []]),+  CFunc ("Random","intspan") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 4294967296))] []]),+  CFunc ("Random","mask") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 281474976710656))] []]),+  CFunc ("Random","multiplier") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 25214903917))] []]),+  CFunc ("Random","nextBoolean") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (1,"x0"))) (CLit (CIntc 0))))) (CApply (CApply (CSymbol ("Random","nextIntBits")) (CVar (0,"seed"))) (CLit (CIntc 1))))] []]),+  CFunc ("Random","nextInt") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Random","nextIntBits")) (CVar (0,"seed"))) (CSymbol ("Random","intsize")))] []]),+  CFunc ("Random","nextIntBits") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"seed"),CPVar (1,"bits")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Random","adjust"))) (CVar (3,"list")))] [CLocalPat (CPVar (2,"init")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Random","xor")) (CVar (0,"seed"))) (CSymbol ("Random","multiplier")))) (CSymbol ("Random","mask"))) [],CLocalPat (CPVar (3,"list")) (CApply (CSymbol ("Random","sequence")) (CVar (2,"init"))) [],CLocalPat (CPVar (4,"shift")) (CApply (CApply (CSymbol ("Random","power")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Prelude","-")) (CSymbol ("Random","powermask"))) (CVar (1,"bits")))) [],CLocalFunc (CFunc ("Random","adjust") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (5,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (6,"arg"))) (CSymbol ("Random","intlimit")))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (6,"arg"))) (CSymbol ("Random","intspan")))) (CVar (6,"arg")))] [CLocalPat (CPVar (6,"arg")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (5,"x"))) (CVar (4,"shift")))) (CSymbol ("Random","intspan"))) []]]))]]),+  CFunc ("Random","nextIntRange") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"seed"),CPVar (1,"n")] [(CApply (CApply (CSymbol ("Prelude",">")) (CVar (1,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Random","power_of_2")) (CVar (1,"n")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Random","adjust_a"))) (CVar (2,"seq")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Random","adjust_b"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CSymbol ("Random","adjust_c"))) (CVar (2,"seq")))))] [CLocalPat (CPVar (2,"seq")) (CApply (CApply (CSymbol ("Random","nextIntBits")) (CVar (0,"seed"))) (CApply (CApply (CSymbol ("Prelude","-")) (CSymbol ("Random","intsize"))) (CLit (CIntc 1)))) [],CLocalFunc (CFunc ("Random","adjust_a") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (3,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (1,"n"))) (CVar (3,"x")))) (CSymbol ("Random","intlimit")))] []])),CLocalFunc (CFunc ("Random","adjust_b") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (3,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","mod")) (CVar (3,"x"))) (CVar (1,"n")))] []])),CLocalFunc (CFunc ("Random","adjust_c") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (3,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"x"))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (3,"x"))) (CVar (1,"n"))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"n"))) (CLit (CIntc 1))))) (CLit (CIntc 0)))] []])),CLocalFunc (CFunc ("Random","power_of_2") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (3,"k")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"k"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (3,"k"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (3,"k"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))) (CApply (CSymbol ("Random","power_of_2")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (3,"k"))) (CLit (CIntc 2)))))))] []]))]]),+  CFunc ("Random","nextseed") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"seed"))) (CSymbol ("Random","multiplier")))) (CSymbol ("Random","addend")))) (CSymbol ("Random","mask")))] []]),+  CFunc ("Random","power") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"base"),CPVar (1,"exp")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Random","binary")) (CLit (CIntc 1))) (CVar (0,"base"))) (CVar (1,"exp")))] [CLocalFunc (CFunc ("Random","binary") 3 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])))) (CRules CFlex [CRule [CPVar (2,"x"),CPVar (3,"b"),CPVar (4,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"e"))) (CLit (CIntc 0)))) (CVar (2,"x"))) (CApply (CApply (CApply (CSymbol ("Random","binary")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (2,"x"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (4,"e"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (3,"b"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"b"))) (CVar (3,"b")))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (4,"e"))) (CLit (CIntc 2)))))] []]))]]),+  CFunc ("Random","powermask") 0 Private (CTCons ("Prelude","Int") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 48))] []]),+  CFunc ("Random","sequence") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"next"))) (CApply (CSymbol ("Random","sequence")) (CVar (1,"next"))))] [CLocalPat (CPVar (1,"next")) (CApply (CSymbol ("Random","nextseed")) (CVar (0,"seed"))) []]]),+  CFunc ("Random","xor") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"y"))) (CLit (CIntc 0))))) (CLit (CIntc 0))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"lastBit"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (3,"restBits")))))] [CLocalPat (CPVar (2,"lastBit")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"x"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"y"))) (CLit (CIntc 2))))) (CLit (CIntc 0))) (CLit (CIntc 1))) [],CLocalPat (CPVar (3,"restBits")) (CApply (CApply (CSymbol ("Random","xor")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"x"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"y"))) (CLit (CIntc 2)))) []]])]+ []
+ src/lib/Curry/Module/.curry/Random.cy view
@@ -0,0 +1,26 @@+Module "Random"+(Just (Exporting (19,14) [(Export (QualIdent Nothing (Ident "nextInt" 0))),(Export (QualIdent Nothing (Ident "nextIntRange" 0))),(Export (QualIdent Nothing (Ident "nextBoolean" 0))),(Export (QualIdent Nothing (Ident "getRandomSeed" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (21,1) "Time" False Nothing Nothing)+,(ImportDecl (22,1) "System" False Nothing (Just (Importing (22,14) [(Import (Ident "getCPUTime" 0))])))+,(FunctionDecl (30,1) (Ident "multiplier" 0) [(Equation (30,1) (FunLhs (Ident "multiplier" 0) []) (SimpleRhs (30,14) (Literal (Int (Ident "_" 4) 25214903917)) []))])+,(FunctionDecl (31,1) (Ident "addend" 0) [(Equation (31,1) (FunLhs (Ident "addend" 0) []) (SimpleRhs (31,14) (Literal (Int (Ident "_" 7) 11)) []))])+,(FunctionDecl (32,1) (Ident "powermask" 0) [(Equation (32,1) (FunLhs (Ident "powermask" 0) []) (SimpleRhs (32,14) (Literal (Int (Ident "_" 10) 48)) []))])+,(FunctionDecl (33,1) (Ident "mask" 0) [(Equation (33,1) (FunLhs (Ident "mask" 0) []) (SimpleRhs (33,14) (Literal (Int (Ident "_" 13) 281474976710656)) []))])+,(FunctionDecl (34,1) (Ident "intsize" 0) [(Equation (34,1) (FunLhs (Ident "intsize" 0) []) (SimpleRhs (34,14) (Literal (Int (Ident "_" 16) 32)) []))])+,(FunctionDecl (35,1) (Ident "intspan" 0) [(Equation (35,1) (FunLhs (Ident "intspan" 0) []) (SimpleRhs (35,14) (Literal (Int (Ident "_" 19) 4294967296)) []))])+,(FunctionDecl (36,1) (Ident "intlimit" 0) [(Equation (36,1) (FunLhs (Ident "intlimit" 0) []) (SimpleRhs (36,14) (Literal (Int (Ident "_" 22) 2147483648)) []))])+,(FunctionDecl (40,1) (Ident "sequence" 0) [(Equation (40,1) (FunLhs (Ident "sequence" 0) [(VariablePattern (Ident "seed" 23))]) (SimpleRhs (40,17) (InfixApply (Variable (QualIdent Nothing (Ident "next" 24))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "Random") (Ident "sequence" 0))) (Variable (QualIdent Nothing (Ident "next" 24))))) [(PatternDecl (41,11) (VariablePattern (Ident "next" 24)) (SimpleRhs (41,18) (Apply (Variable (QualIdent (Just "Random") (Ident "nextseed" 0))) (Variable (QualIdent Nothing (Ident "seed" 23)))) []))]))])+,(FunctionDecl (45,1) (Ident "nextseed" 0) [(Equation (45,1) (FunLhs (Ident "nextseed" 0) [(VariablePattern (Ident "seed" 26))]) (SimpleRhs (45,17) (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "seed" 26))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent (Just "Random") (Ident "multiplier" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent (Just "Random") (Ident "addend" 0))))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent (Just "Random") (Ident "mask" 0)))) []))])+,(FunctionDecl (47,1) (Ident "xor" 0) [(Equation (47,1) (FunLhs (Ident "xor" 0) [(VariablePattern (Ident "x" 28)),(VariablePattern (Ident "y" 28))]) (SimpleRhs (47,11) (IfThenElse (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 38) 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 39) 0))))) (Literal (Int (Ident "_" 40) 0)) (InfixApply (Variable (QualIdent Nothing (Ident "lastBit" 29))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (InfixApply (Literal (Int (Ident "_" 41) 2)) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "restBits" 29)))))) [(PatternDecl (48,11) (VariablePattern (Ident "lastBit" 29)) (SimpleRhs (48,22) (IfThenElse (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 31) 2)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 32) 2))))) (Literal (Int (Ident "_" 33) 0)) (Literal (Int (Ident "_" 34) 1))) [])),(PatternDecl (49,11) (VariablePattern (Ident "restBits" 29)) (SimpleRhs (49,22) (Apply (Apply (Variable (QualIdent (Just "Random") (Ident "xor" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 36) 2))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 28))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 37) 2))))) []))]))])+,(FunctionDecl (51,1) (Ident "power" 0) [(Equation (51,1) (FunLhs (Ident "power" 0) [(VariablePattern (Ident "base" 42)),(VariablePattern (Ident "exp" 42))]) (SimpleRhs (51,18) (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "binary" 43))) (Literal (Int (Ident "_" 51) 1))) (Variable (QualIdent Nothing (Ident "base" 42)))) (Variable (QualIdent Nothing (Ident "exp" 42)))) [(FunctionDecl (52,11) (Ident "binary" 43) [(Equation (52,11) (FunLhs (Ident "binary" 43) [(VariablePattern (Ident "x" 44)),(VariablePattern (Ident "b" 44)),(VariablePattern (Ident "e" 44))]) (SimpleRhs (53,17) (IfThenElse (Paren (InfixApply (Variable (QualIdent Nothing (Ident "e" 44))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 46) 0)))) (Variable (QualIdent Nothing (Ident "x" 44))) (Apply (Apply (Apply (Variable (QualIdent Nothing (Ident "binary" 43))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 44))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (IfThenElse (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "e" 44))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 47) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 48) 1)))) (Variable (QualIdent Nothing (Ident "b" 44))) (Literal (Int (Ident "_" 49) 1)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "b" 44))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "b" 44)))))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "e" 44))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 50) 2)))))) []))])]))])+,(FunctionDecl (58,1) (Ident "nextIntBits" 0) [(Equation (58,1) (FunLhs (Ident "nextIntBits" 0) [(VariablePattern (Ident "seed" 52)),(VariablePattern (Ident "bits" 52))]) (SimpleRhs (58,25) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "adjust" 53)))) (Variable (QualIdent Nothing (Ident "list" 53)))) [(PatternDecl (59,11) (VariablePattern (Ident "init" 53)) (SimpleRhs (59,18) (InfixApply (Paren (Apply (Apply (Variable (QualIdent (Just "Random") (Ident "xor" 0))) (Variable (QualIdent Nothing (Ident "seed" 52)))) (Variable (QualIdent (Just "Random") (Ident "multiplier" 0))))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent (Just "Random") (Ident "mask" 0)))) [])),(PatternDecl (60,11) (VariablePattern (Ident "list" 53)) (SimpleRhs (60,18) (Apply (Variable (QualIdent (Just "Random") (Ident "sequence" 0))) (Variable (QualIdent Nothing (Ident "init" 53)))) [])),(PatternDecl (61,11) (VariablePattern (Ident "shift" 53)) (SimpleRhs (61,19) (Apply (Apply (Variable (QualIdent (Just "Random") (Ident "power" 0))) (Literal (Int (Ident "_" 57) 2))) (Paren (InfixApply (Variable (QualIdent (Just "Random") (Ident "powermask" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent Nothing (Ident "bits" 52)))))) [])),(FunctionDecl (62,11) (Ident "adjust" 53) [(Equation (62,11) (FunLhs (Ident "adjust" 53) [(VariablePattern (Ident "x" 58))]) (SimpleRhs (62,22) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "arg" 59))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Variable (QualIdent (Just "Random") (Ident "intlimit" 0)))) (InfixApply (Variable (QualIdent Nothing (Ident "arg" 59))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Variable (QualIdent (Just "Random") (Ident "intspan" 0)))) (Variable (QualIdent Nothing (Ident "arg" 59)))) [(PatternDecl (64,21) (VariablePattern (Ident "arg" 59)) (SimpleRhs (64,27) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 58))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Variable (QualIdent Nothing (Ident "shift" 53))))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent (Just "Random") (Ident "intspan" 0)))) []))]))])]))])+,(TypeSig (77,1) [(Ident "nextInt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (78,1) (Ident "nextInt" 0) [(Equation (78,1) (FunLhs (Ident "nextInt" 0) [(VariablePattern (Ident "seed" 61))]) (SimpleRhs (78,16) (Apply (Apply (Variable (QualIdent (Just "Random") (Ident "nextIntBits" 0))) (Variable (QualIdent Nothing (Ident "seed" 61)))) (Variable (QualIdent (Just "Random") (Ident "intsize" 0)))) []))])+,(TypeSig (89,1) [(Ident "nextIntRange" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FunctionDecl (90,1) (Ident "nextIntRange" 0) [(Equation (90,1) (FunLhs (Ident "nextIntRange" 0) [(VariablePattern (Ident "seed" 63)),(VariablePattern (Ident "n" 63))]) (GuardedRhs [(CondExpr (90,21) (InfixApply (Variable (QualIdent Nothing (Ident "n" 63))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 82) 0))) (IfThenElse (Apply (Variable (QualIdent Nothing (Ident "power_of_2" 64))) (Variable (QualIdent Nothing (Ident "n" 63)))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "adjust_a" 64)))) (Variable (QualIdent Nothing (Ident "seq" 64)))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "adjust_b" 64)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Variable (QualIdent Nothing (Ident "adjust_c" 64)))) (Variable (QualIdent Nothing (Ident "seq" 64))))))))] [(PatternDecl (93,11) (VariablePattern (Ident "seq" 64)) (SimpleRhs (93,17) (Apply (Apply (Variable (QualIdent (Just "Random") (Ident "nextIntBits" 0))) (Variable (QualIdent Nothing (Ident "seed" 63)))) (Paren (InfixApply (Variable (QualIdent (Just "Random") (Ident "intsize" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 66) 1))))) [])),(FunctionDecl (94,11) (Ident "adjust_a" 64) [(Equation (94,11) (FunLhs (Ident "adjust_a" 64) [(VariablePattern (Ident "x" 67))]) (SimpleRhs (94,24) (InfixApply (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 63))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "x" 67))))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Variable (QualIdent (Just "Random") (Ident "intlimit" 0)))) []))]),(FunctionDecl (95,11) (Ident "adjust_b" 64) [(Equation (95,11) (FunLhs (Ident "adjust_b" 64) [(VariablePattern (Ident "x" 69))]) (SimpleRhs (95,24) (InfixApply (Variable (QualIdent Nothing (Ident "x" 69))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent Nothing (Ident "n" 63)))) []))]),(FunctionDecl (96,11) (Ident "adjust_c" 64) [(Equation (96,11) (FunLhs (Ident "adjust_c" 64) [(VariablePattern (Ident "x" 71))]) (SimpleRhs (96,24) (InfixApply (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "x" 71))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 71))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent Nothing (Ident "n" 63)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 63))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 73) 1))))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 74) 0))) []))]),(FunctionDecl (97,11) (Ident "power_of_2" 64) [(Equation (97,11) (FunLhs (Ident "power_of_2" 64) [(VariablePattern (Ident "k" 75))]) (SimpleRhs (97,26) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "k" 75))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 77) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "k" 75))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 78) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "k" 75))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 79) 2))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 80) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent Nothing (Ident "power_of_2" 64))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "k" 75))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 81) 2)))))))) []))])]))])+,(TypeSig (106,1) [(Ident "nextBoolean" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (107,1) (Ident "nextBoolean" 0) [(Equation (107,1) (FunLhs (Ident "nextBoolean" 0) [(VariablePattern (Ident "seed" 83))]) (SimpleRhs (107,20) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Literal (Int (Ident "_" 85) 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Random") (Ident "nextIntBits" 0))) (Variable (QualIdent Nothing (Ident "seed" 83)))) (Literal (Int (Ident "_" 86) 1))))) []))])+,(TypeSig (114,1) [(Ident "getRandomSeed" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))+,(FunctionDecl (115,1) (Ident "getRandomSeed" 0) [(Equation (115,1) (FunLhs (Ident "getRandomSeed" 0) []) (SimpleRhs (116,3) (InfixApply (Variable (QualIdent (Just "Time") (Ident "getClockTime" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Lambda [(VariablePattern (Ident "time" 89))] (InfixApply (Variable (QualIdent (Just "System") (Ident "getCPUTime" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Lambda [(VariablePattern (Ident "msecs" 90))] (Let [(PatternDecl (118,7) (ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "y" 91)),(VariablePattern (Ident "mo" 91)),(VariablePattern (Ident "d" 91)),(VariablePattern (Ident "h" 91)),(VariablePattern (Ident "m" 91)),(VariablePattern (Ident "s" 91)),(VariablePattern (Ident "_" 92))])) (SimpleRhs (118,39) (Apply (Variable (QualIdent (Just "Time") (Ident "toUTCTime" 0))) (Variable (QualIdent Nothing (Ident "time" 89)))) []))] (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Paren (InfixApply (Paren (InfixApply (InfixApply (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "y" 91))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "mo" 91)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "d" 91)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "h" 91)))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 91))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "s" 91)))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Variable (QualIdent Nothing (Ident "msecs" 90)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Variable (QualIdent (Just "Random") (Ident "mask" 0))))))))))) []))])+]
+ src/lib/Curry/Module/.curry/Random.efc view
@@ -0,0 +1,1 @@+Prog "Random" ["Prelude","System","Time"] [] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","multiplier")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  25214903917))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","addend")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  11))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","powermask")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  48))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","mask")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  281474976710656))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intsize")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  32))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intspan")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  4294967296))),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intlimit")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Int")) []) (Rule [] (Lit (Intc  2147483648))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Random","sequence")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","nextseed")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Random","sequence")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","nextseed")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","multiplier")) []],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","addend")) []],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","mask")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","xor")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 1) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Lit (Intc  1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","xor")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  2)]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Lit (Intc  2),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]])])))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","power")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Random","power.binary.43")) [Lit (Intc  1),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Random","power.binary.43")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])))),"Random","power.binary.43")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)],Lit (Intc  1)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Lit (Intc  1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  2)]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","nextIntBits")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","xor")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","multiplier")) []],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","mask")) []])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Random","sequence")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","power")) [Lit (Intc  2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","powermask")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]])] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","nextIntBits.adjust.53")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),4))]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","nextIntBits.adjust.53")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intspan")) []])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intlimit")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intspan")) []]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Random","nextInt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","nextIntBits")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intsize")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","nextIntRange")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","nextIntBits")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intsize")) [],Lit (Intc  1)]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Random","nextIntRange.power_of_2.64")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","nextIntRange.adjust_a.64")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","nextIntRange.adjust_b.64")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","filter")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Random","nextIntRange.adjust_c.64")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),3))]])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","failed")) [])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","nextIntRange.adjust_a.64")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","intlimit")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Random","nextIntRange.adjust_b.64")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Random","nextIntRange.adjust_c.64")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]],Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Random","nextIntRange.power_of_2.64")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)],Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Random","nextIntRange.power_of_2.64")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)]]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Random","nextBoolean")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","nextIntBits")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Random","getRandomSeed")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []]),"Time","getClockTime")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Random","getRandomSeed._#lambda2")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Random","getRandomSeed._#lambda2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"System","getCPUTime")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","getRandomSeed._#lambda2._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Random","getRandomSeed._#lambda2._#lambda3")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Let [((Just (TVar 1),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])),"Time","toUTCTime")) [Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP3#y")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP4#mo")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP5#d")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP6#h")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP7#m")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP8#s")) [Var ((Just (TVar 1),3))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"Prelude","return")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]],Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Random","mask")) []]]))))))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP3#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP4#mo")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP5#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP6#h")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP7#m")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Random","getRandomSeed._#lambda2._#lambda3._#selFP8#s")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)))]))] []
+ src/lib/Curry/Module/.curry/Random.fcy view
@@ -0,0 +1,1 @@+Prog "Random" ["Prelude","System","Time"] [] [Func ("Random","multiplier") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  25214903917))),Func ("Random","addend") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  11))),Func ("Random","powermask") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  48))),Func ("Random","mask") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  281474976710656))),Func ("Random","intsize") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  32))),Func ("Random","intspan") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  4294967296))),Func ("Random","intlimit") 0 Private (TCons ("Prelude","Int") []) (Rule [] (Lit (Intc  2147483648))),Func ("Random","sequence") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Let [(2,Comb FuncCall ("Random","nextseed") [Var 1])] (Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("Random","sequence") [Var 2]]))),Func ("Random","nextseed") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","*") [Var 1,Comb FuncCall ("Random","multiplier") []],Comb FuncCall ("Random","addend") []],Comb FuncCall ("Random","mask") []])),Func ("Random","xor") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Let [(3,Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  2)]]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Lit (Intc  1))])] (Let [(4,Comb FuncCall ("Random","xor") [Comb FuncCall ("Prelude","div") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","div") [Var 2,Lit (Intc  2)]])] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)],Comb FuncCall ("Prelude","==") [Var 2,Lit (Intc  0)]]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  0)),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Lit (Intc  2),Var 4]])])))),Func ("Random","power") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Comb FuncCall ("Random","power.binary.43") [Lit (Intc  1),Var 1,Var 2])),Func ("Random","power.binary.43") 3 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])))) (Rule [1,2,3] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 3,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Random","power.binary.43") [Comb FuncCall ("Prelude","*") [Var 1,Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 3,Lit (Intc  2)],Lit (Intc  1)]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Lit (Intc  1))]],Comb FuncCall ("Prelude","*") [Var 2,Var 2],Comb FuncCall ("Prelude","div") [Var 3,Lit (Intc  2)]])])),Func ("Random","nextIntBits") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Random","xor") [Var 1,Comb FuncCall ("Random","multiplier") []],Comb FuncCall ("Random","mask") []])] (Let [(4,Comb FuncCall ("Random","sequence") [Var 3])] (Let [(5,Comb FuncCall ("Random","power") [Lit (Intc  2),Comb FuncCall ("Prelude","-") [Comb FuncCall ("Random","powermask") [],Var 2]])] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Random","nextIntBits.adjust.53") [Var 5],Var 4]))))),Func ("Random","nextIntBits.adjust.53") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Let [(3,Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Prelude","div") [Var 2,Var 1],Comb FuncCall ("Random","intspan") []])] (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 3,Comb FuncCall ("Random","intlimit") []]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","-") [Var 3,Comb FuncCall ("Random","intspan") []]),Branch (Pattern ("Prelude","False") []) (Var 3)]))),Func ("Random","nextInt") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Comb FuncCall ("Random","nextIntBits") [Var 1,Comb FuncCall ("Random","intsize") []])),Func ("Random","nextIntRange") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("Random","nextIntBits") [Var 1,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Random","intsize") [],Lit (Intc  1)]])] (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 2,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Random","nextIntRange.power_of_2.64") [Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Random","nextIntRange.adjust_a.64") [Var 2],Var 3]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Random","nextIntRange.adjust_b.64") [Var 2],Comb FuncCall ("Prelude","filter") [Comb (FuncPartCall 1) ("Random","nextIntRange.adjust_c.64") [Var 2],Var 3]])]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])]))),Func ("Random","nextIntRange.adjust_a.64") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","*") [Var 1,Var 2],Comb FuncCall ("Random","intlimit") []])),Func ("Random","nextIntRange.adjust_b.64") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Comb FuncCall ("Prelude","mod") [Var 2,Var 1])),Func ("Random","nextIntRange.adjust_c.64") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 2,Comb FuncCall ("Prelude","mod") [Var 2,Var 1]],Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)]],Lit (Intc  0)])),Func ("Random","nextIntRange.power_of_2.64") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">") [Var 1,Lit (Intc  2)],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 1,Lit (Intc  2)],Lit (Intc  0)],Comb FuncCall ("Random","nextIntRange.power_of_2.64") [Comb FuncCall ("Prelude","div") [Var 1,Lit (Intc  2)]]]]])),Func ("Random","nextBoolean") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Lit (Intc  0)],Comb FuncCall ("Random","nextIntBits") [Var 1,Lit (Intc  1)]])),Func ("Random","getRandomSeed") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (Rule [] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Time","getClockTime") [],Comb (FuncPartCall 1) ("Random","getRandomSeed._#lambda2") []])),Func ("Random","getRandomSeed._#lambda2") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("System","getCPUTime") [],Comb (FuncPartCall 1) ("Random","getRandomSeed._#lambda2._#lambda3") [Var 1]])),Func ("Random","getRandomSeed._#lambda2._#lambda3") 2 Private (FuncType (TCons ("Time","ClockTime") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Let [(3,Comb FuncCall ("Time","toUTCTime") [Var 1])] (Let [(4,Comb FuncCall ("Random","getRandomSeed._#lambda2._#lambda3._#selFP3#y") [Var 3])] (Let [(5,Comb FuncCall ("Random","getRandomSeed._#lambda2._#lambda3._#selFP4#mo") [Var 3])] (Let [(6,Comb FuncCall ("Random","getRandomSeed._#lambda2._#lambda3._#selFP5#d") [Var 3])] (Let [(7,Comb FuncCall ("Random","getRandomSeed._#lambda2._#lambda3._#selFP6#h") [Var 3])] (Let [(8,Comb FuncCall ("Random","getRandomSeed._#lambda2._#lambda3._#selFP7#m") [Var 3])] (Let [(9,Comb FuncCall ("Random","getRandomSeed._#lambda2._#lambda3._#selFP8#s") [Var 3])] (Comb FuncCall ("Prelude","return") [Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","+") [Var 4,Var 5],Var 6],Var 7],Comb FuncCall ("Prelude","*") [Comb FuncCall ("Prelude","*") [Var 8,Var 9],Var 2]],Comb FuncCall ("Random","mask") []]]))))))))),Func ("Random","getRandomSeed._#lambda2._#lambda3._#selFP3#y") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Random","getRandomSeed._#lambda2._#lambda3._#selFP4#mo") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Random","getRandomSeed._#lambda2._#lambda3._#selFP5#d") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Random","getRandomSeed._#lambda2._#lambda3._#selFP6#h") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Random","getRandomSeed._#lambda2._#lambda3._#selFP7#m") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Random","getRandomSeed._#lambda2._#lambda3._#selFP8#s") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)]))] []
+ src/lib/Curry/Module/.curry/Random.fint view
@@ -0,0 +1,1 @@+Prog "Random" ["Prelude","System","Time"] [] [Func ("Random","nextInt") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("Random","nextIntRange") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("Random","nextBoolean") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("Random","getRandomSeed") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Random.uacy view
@@ -0,0 +1,20 @@+CurryProg "Random"+ ["Prelude","Time","System"]+ []+ [CFunc ("Random","addend") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 11))] []]),+  CFunc ("Random","getRandomSeed") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CSymbol ("Time","getClockTime"))) (CLambda [CPVar (0,"time")] (CApply (CApply (CSymbol ("Prelude",">>=")) (CSymbol ("System","getCPUTime"))) (CLambda [CPVar (1,"msecs")] (CLetDecl [CLocalPat (CPComb ("Time","CalendarTime") [CPVar (2,"y"),CPVar (3,"mo"),CPVar (4,"d"),CPVar (5,"h"),CPVar (6,"m"),CPVar (7,"s"),CPVar (8,"_")]) (CApply (CSymbol ("Time","toUTCTime")) (CVar (0,"time"))) []] (CApply (CSymbol ("Prelude","return")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"y"))) (CVar (3,"mo")))) (CVar (4,"d")))) (CVar (5,"h")))) (CApply (CApply (CSymbol ("Prelude","*")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (6,"m"))) (CVar (7,"s")))) (CVar (1,"msecs"))))) (CSymbol ("Random","mask")))))))))] []]),+  CFunc ("Random","intlimit") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 2147483648))] []]),+  CFunc ("Random","intsize") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 32))] []]),+  CFunc ("Random","intspan") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 4294967296))] []]),+  CFunc ("Random","mask") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 281474976710656))] []]),+  CFunc ("Random","multiplier") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 25214903917))] []]),+  CFunc ("Random","nextBoolean") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (1,"x0"))) (CLit (CIntc 0))))) (CApply (CApply (CSymbol ("Random","nextIntBits")) (CVar (0,"seed"))) (CLit (CIntc 1))))] []]),+  CFunc ("Random","nextInt") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Random","nextIntBits")) (CVar (0,"seed"))) (CSymbol ("Random","intsize")))] []]),+  CFunc ("Random","nextIntBits") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"seed"),CPVar (1,"bits")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Random","adjust"))) (CVar (3,"list")))] [CLocalPat (CPVar (2,"init")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Random","xor")) (CVar (0,"seed"))) (CSymbol ("Random","multiplier")))) (CSymbol ("Random","mask"))) [],CLocalPat (CPVar (3,"list")) (CApply (CSymbol ("Random","sequence")) (CVar (2,"init"))) [],CLocalPat (CPVar (4,"shift")) (CApply (CApply (CSymbol ("Random","power")) (CLit (CIntc 2))) (CApply (CApply (CSymbol ("Prelude","-")) (CSymbol ("Random","powermask"))) (CVar (1,"bits")))) [],CLocalFunc (CFunc ("Random","adjust") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (5,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (6,"arg"))) (CSymbol ("Random","intlimit")))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (6,"arg"))) (CSymbol ("Random","intspan")))) (CVar (6,"arg")))] [CLocalPat (CPVar (6,"arg")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (5,"x"))) (CVar (4,"shift")))) (CSymbol ("Random","intspan"))) []]]))]]),+  CFunc ("Random","nextIntRange") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"seed"),CPVar (1,"n")] [(CApply (CApply (CSymbol ("Prelude",">")) (CVar (1,"n"))) (CLit (CIntc 0)),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Random","power_of_2")) (CVar (1,"n")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Random","adjust_a"))) (CVar (2,"seq")))) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("Random","adjust_b"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CSymbol ("Random","adjust_c"))) (CVar (2,"seq")))))] [CLocalPat (CPVar (2,"seq")) (CApply (CApply (CSymbol ("Random","nextIntBits")) (CVar (0,"seed"))) (CApply (CApply (CSymbol ("Prelude","-")) (CSymbol ("Random","intsize"))) (CLit (CIntc 1)))) [],CLocalFunc (CFunc ("Random","adjust_a") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (1,"n"))) (CVar (3,"x")))) (CSymbol ("Random","intlimit")))] []])),CLocalFunc (CFunc ("Random","adjust_b") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","mod")) (CVar (3,"x"))) (CVar (1,"n")))] []])),CLocalFunc (CFunc ("Random","adjust_c") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"x"))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (3,"x"))) (CVar (1,"n"))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"n"))) (CLit (CIntc 1))))) (CLit (CIntc 0)))] []])),CLocalFunc (CFunc ("Random","power_of_2") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (3,"k")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (3,"k"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (3,"k"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (3,"k"))) (CLit (CIntc 2)))) (CLit (CIntc 0)))) (CApply (CSymbol ("Random","power_of_2")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (3,"k"))) (CLit (CIntc 2)))))))] []]))]]),+  CFunc ("Random","nextseed") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"seed"))) (CSymbol ("Random","multiplier")))) (CSymbol ("Random","addend")))) (CSymbol ("Random","mask")))] []]),+  CFunc ("Random","power") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"base"),CPVar (1,"exp")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Random","binary")) (CLit (CIntc 1))) (CVar (0,"base"))) (CVar (1,"exp")))] [CLocalFunc (CFunc ("Random","binary") 3 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"x"),CPVar (3,"b"),CPVar (4,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (4,"e"))) (CLit (CIntc 0)))) (CVar (2,"x"))) (CApply (CApply (CApply (CSymbol ("Random","binary")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (2,"x"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (4,"e"))) (CLit (CIntc 2)))) (CLit (CIntc 1)))) (CVar (3,"b"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (3,"b"))) (CVar (3,"b")))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (4,"e"))) (CLit (CIntc 2)))))] []]))]]),+  CFunc ("Random","powermask") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CLit (CIntc 48))] []]),+  CFunc ("Random","sequence") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"next"))) (CApply (CSymbol ("Random","sequence")) (CVar (1,"next"))))] [CLocalPat (CPVar (1,"next")) (CApply (CSymbol ("Random","nextseed")) (CVar (0,"seed"))) []]]),+  CFunc ("Random","xor") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"x"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"y"))) (CLit (CIntc 0))))) (CLit (CIntc 0))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"lastBit"))) (CApply (CApply (CSymbol ("Prelude","*")) (CLit (CIntc 2))) (CVar (3,"restBits")))))] [CLocalPat (CPVar (2,"lastBit")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (0,"x"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"y"))) (CLit (CIntc 2))))) (CLit (CIntc 0))) (CLit (CIntc 1))) [],CLocalPat (CPVar (3,"restBits")) (CApply (CApply (CSymbol ("Random","xor")) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (0,"x"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","div")) (CVar (1,"y"))) (CLit (CIntc 2)))) []]])]+ []
+ src/lib/Curry/Module/.curry/RandomExternal.acy view
@@ -0,0 +1,12 @@+CurryProg "RandomExternal"+ ["Prelude"]+ []+ [CFunc ("RandomExternal","getRandomSeed") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getRandomSeed"),+  CFunc ("RandomExternal","nextBoolean") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CLit (CIntc 0))) (CVar (1,"x0"))))) (CApply (CApply (CSymbol ("RandomExternal","nextIntRange")) (CVar (0,"seed"))) (CLit (CIntc 1))))] []]),+  CFunc ("RandomExternal","nextInt") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("RandomExternal","prim_nextInt"))) (CVar (0,"seed")))] []]),+  CFunc ("RandomExternal","nextIntRange") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"seed"),CPVar (1,"bound")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("RandomExternal","prim_nextIntRange"))) (CVar (0,"seed")))) (CVar (1,"bound")))] []]),+  CFunc ("RandomExternal","prim_nextInt") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CExternal "prim_nextInt"),+  CFunc ("RandomExternal","prim_nextIntRange") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CExternal "prim_nextIntRange"),+  CFunc ("RandomExternal","prim_split") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []])) (CExternal "prim_split"),+  CFunc ("RandomExternal","split") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"s1"))) (CApply (CSymbol ("RandomExternal","split")) (CVar (2,"s2"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (1,"s1"),CPVar (2,"s2")]) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("RandomExternal","prim_split"))) (CVar (0,"seed"))) []]])]+ []
+ src/lib/Curry/Module/.curry/RandomExternal.cy view
@@ -0,0 +1,20 @@+Module "RandomExternal"+(Just (Exporting (6,23) [(Export (QualIdent Nothing (Ident "split" 0))),(Export (QualIdent Nothing (Ident "nextInt" 0))),(Export (QualIdent Nothing (Ident "nextIntRange" 0))),(Export (QualIdent Nothing (Ident "nextBoolean" 0))),(Export (QualIdent Nothing (Ident "getRandomSeed" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(TypeSig (16,1) [(Ident "split" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (17,1) (Ident "split" 0) [(Equation (17,1) (FunLhs (Ident "split" 0) [(VariablePattern (Ident "seed" 2))]) (SimpleRhs (17,14) (InfixApply (Variable (QualIdent Nothing (Ident "s1" 3))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent (Just "RandomExternal") (Ident "split" 0))) (Variable (QualIdent Nothing (Ident "s2" 3))))) [(PatternDecl (18,8) (TuplePattern [(VariablePattern (Ident "s1" 3)),(VariablePattern (Ident "s2" 3))]) (SimpleRhs (18,18) (InfixApply (Variable (QualIdent (Just "RandomExternal") (Ident "prim_split" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "seed" 2)))) []))]))])+,(TypeSig (20,1) [(Ident "prim_split" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])))+,(FlatExternalDecl (21,1) [(Ident "prim_split" 0)])+,(TypeSig (25,1) [(Ident "nextInt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (26,1) (Ident "nextInt" 0) [(Equation (26,1) (FunLhs (Ident "nextInt" 0) [(VariablePattern (Ident "seed" 5))]) (SimpleRhs (26,16) (InfixApply (Variable (QualIdent (Just "RandomExternal") (Ident "prim_nextInt" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "seed" 5)))) []))])+,(TypeSig (28,1) [(Ident "prim_nextInt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FlatExternalDecl (29,1) [(Ident "prim_nextInt" 0)])+,(TypeSig (34,1) [(Ident "nextIntRange" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FunctionDecl (35,1) (Ident "nextIntRange" 0) [(Equation (35,1) (FunLhs (Ident "nextIntRange" 0) [(VariablePattern (Ident "seed" 7)),(VariablePattern (Ident "bound" 7))]) (SimpleRhs (35,27) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "RandomExternal") (Ident "prim_nextIntRange" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "seed" 7))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "bound" 7)))) []))])+,(TypeSig (37,1) [(Ident "prim_nextIntRange" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))))+,(FlatExternalDecl (38,1) [(Ident "prim_nextIntRange" 0)])+,(TypeSig (42,1) [(Ident "nextBoolean" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ListType (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (43,1) (Ident "nextBoolean" 0) [(Equation (43,1) (FunLhs (Ident "nextBoolean" 0) [(VariablePattern (Ident "seed" 9))]) (SimpleRhs (43,20) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (LeftSection (Literal (Int (Ident "_" 11) 0)) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))))) (Paren (Apply (Apply (Variable (QualIdent (Just "RandomExternal") (Ident "nextIntRange" 0))) (Variable (QualIdent Nothing (Ident "seed" 9)))) (Literal (Int (Ident "_" 12) 1))))) []))])+,(TypeSig (47,1) [(Ident "getRandomSeed" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))+,(FlatExternalDecl (48,1) [(Ident "getRandomSeed" 0)])+]
+ src/lib/Curry/Module/.curry/RandomExternal.efc view
@@ -0,0 +1,1 @@+Prog "RandomExternal" ["Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","split")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Let [((Just (TVar 2),2),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 3) (TVar 4)) (FuncType (TVar 3) (TVar 4))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","prim_split")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"RandomExternal","split._#selFP3#s1")) [Var ((Just (TVar 2),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"RandomExternal","split._#selFP4#s2")) [Var ((Just (TVar 2),2))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","split")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]]))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"RandomExternal","split._#selFP3#s1")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"RandomExternal","split._#selFP4#s2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","prim_split")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []])) (External "RandomExternal.prim_split"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","nextInt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","prim_nextInt")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])),"RandomExternal","prim_nextInt")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (External "RandomExternal.prim_nextInt"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"RandomExternal","nextIntRange")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"RandomExternal","prim_nextIntRange")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"RandomExternal","prim_nextIntRange")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (External "RandomExternal.prim_nextIntRange"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"RandomExternal","nextBoolean")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Bool")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"RandomExternal","nextIntRange")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"RandomExternal","getRandomSeed")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (External "RandomExternal.getRandomSeed")] []
+ src/lib/Curry/Module/.curry/RandomExternal.fcy view
@@ -0,0 +1,1 @@+Prog "RandomExternal" ["Prelude"] [] [Func ("RandomExternal","split") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Let [(2,Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("RandomExternal","prim_split") [],Var 1])] (Let [(3,Comb FuncCall ("RandomExternal","split._#selFP3#s1") [Var 2])] (Let [(4,Comb FuncCall ("RandomExternal","split._#selFP4#s2") [Var 2])] (Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("RandomExternal","split") [Var 4]]))))),Func ("RandomExternal","split._#selFP3#s1") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("RandomExternal","split._#selFP4#s2") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("RandomExternal","prim_split") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Prelude","Int") []])) (External "RandomExternal.prim_split"),Func ("RandomExternal","nextInt") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("RandomExternal","prim_nextInt") [],Var 1])),Func ("RandomExternal","prim_nextInt") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (External "RandomExternal.prim_nextInt"),Func ("RandomExternal","nextIntRange") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("RandomExternal","prim_nextIntRange") [],Var 1],Var 2])),Func ("RandomExternal","prim_nextIntRange") 2 Private (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (External "RandomExternal.prim_nextIntRange"),Func ("RandomExternal","nextBoolean") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []])) (Rule [1] (Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("Prelude","==") [Lit (Intc  0)],Comb FuncCall ("RandomExternal","nextIntRange") [Var 1,Lit (Intc  1)]])),Func ("RandomExternal","getRandomSeed") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "RandomExternal.getRandomSeed")] []
+ src/lib/Curry/Module/.curry/RandomExternal.fint view
@@ -0,0 +1,1 @@+Prog "RandomExternal" ["Prelude"] [] [Func ("RandomExternal","split") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("RandomExternal","nextInt") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("RandomExternal","nextIntRange") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Int") []]))) (Rule [] (Var 0)),Func ("RandomExternal","nextBoolean") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Bool") []])) (Rule [] (Var 0)),Func ("RandomExternal","getRandomSeed") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "RandomExternal.getRandomSeed")] []
+ src/lib/Curry/Module/.curry/RandomExternal.uacy view
@@ -0,0 +1,12 @@+CurryProg "RandomExternal"+ ["Prelude"]+ []+ [CFunc ("RandomExternal","getRandomSeed") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getRandomSeed"),+  CFunc ("RandomExternal","nextBoolean") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Bool") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","map")) (CLambda [CPVar (1,"x0")] (CApply (CApply (CSymbol ("Prelude","==")) (CLit (CIntc 0))) (CVar (1,"x0"))))) (CApply (CApply (CSymbol ("RandomExternal","nextIntRange")) (CVar (0,"seed"))) (CLit (CIntc 1))))] []]),+  CFunc ("RandomExternal","nextInt") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("RandomExternal","prim_nextInt"))) (CVar (0,"seed")))] []]),+  CFunc ("RandomExternal","nextIntRange") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CRules CFlex [CRule [CPVar (0,"seed"),CPVar (1,"bound")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("RandomExternal","prim_nextIntRange"))) (CVar (0,"seed")))) (CVar (1,"bound")))] []]),+  CFunc ("RandomExternal","prim_nextInt") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CExternal "prim_nextInt"),+  CFunc ("RandomExternal","prim_nextIntRange") 2 Private (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []]))) (CExternal "prim_nextIntRange"),+  CFunc ("RandomExternal","prim_split") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []])) (CExternal "prim_split"),+  CFunc ("RandomExternal","split") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"seed")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"s1"))) (CApply (CSymbol ("RandomExternal","split")) (CVar (2,"s2"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (1,"s1"),CPVar (2,"s2")]) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("RandomExternal","prim_split"))) (CVar (0,"seed"))) []]])]+ []
+ src/lib/Curry/Module/.curry/Read.acy view
@@ -0,0 +1,7 @@+CurryProg "Read"+ ["Prelude","Char"]+ []+ [CFunc ("Read","readHex") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Read","readHexPrefix")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CLambda [CPVar (1,"c")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' '))))) (CVar (0,"l")))) (CLit (CIntc 0)))] [CLocalFunc (CFunc ("Read","readHexPrefix") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"n")] [(CSymbol ("Prelude","success"),CVar (1,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")],CPVar (4,"n")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (5,"cv")) (CApply (CSymbol ("Read","hex2int")) (CVar (2,"c"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (5,"cv"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Read","readHexPrefix")) (CVar (3,"cs"))) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (4,"n"))) (CLit (CIntc 16)))) (CVar (5,"cv"))))) (CVar (4,"n"))))] []])),CLocalFunc (CFunc ("Read","hex2int") 1 Private (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Char","isDigit")) (CVar (1,"c")))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0'))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'F')))))) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CLit (CIntc 10)))) (CApply (CSymbol ("Prelude","negate")) (CLit (CIntc 1)))))] []]))]]),+  CFunc ("Read","readInt") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Read","readIntPrefix")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CLambda [CPVar (1,"c")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' '))))) (CVar (0,"l"))))] [CLocalFunc (CFunc ("Read","readIntPrefix") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"c"),CPVar (2,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '-')))) (CApply (CSymbol ("Prelude","negate")) (CApply (CSymbol ("Read","readNat")) (CVar (2,"cs"))))) (CApply (CSymbol ("Read","readNat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"c"))) (CVar (2,"cs")))))] []]))]]),+  CFunc ("Read","readNat") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Read","readNatPrefix")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CLambda [CPVar (1,"c")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' '))))) (CVar (0,"l")))) (CLit (CIntc 0)))] [CLocalFunc (CFunc ("Read","readNatPrefix") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"n")] [(CSymbol ("Prelude","success"),CVar (1,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")],CPVar (4,"n")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (5,"oc")) (CApply (CSymbol ("Prelude","ord")) (CVar (2,"c"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (5,"oc"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (5,"oc"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '9')))))) (CApply (CApply (CSymbol ("Read","readNatPrefix")) (CVar (3,"cs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (4,"n"))) (CLit (CIntc 10)))) (CVar (5,"oc")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))))) (CVar (4,"n"))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/Read.cy view
@@ -0,0 +1,11 @@+Module "Read"+(Just (Exporting (8,12) [(Export (QualIdent Nothing (Ident "readNat" 0))),(Export (QualIdent Nothing (Ident "readInt" 0))),(Export (QualIdent Nothing (Ident "readHex" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (10,1) "Char" False Nothing Nothing)+,(TypeSig (15,1) [(Ident "readNat" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (16,1) (Ident "readNat" 0) [(Equation (16,1) (FunLhs (Ident "readNat" 0) [(VariablePattern (Ident "l" 2))]) (SimpleRhs (16,13) (Apply (Apply (Variable (QualIdent Nothing (Ident "readNatPrefix" 3))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "dropWhile" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 11))] (InfixApply (Variable (QualIdent Nothing (Ident "c" 11))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char ' ')))))) (Variable (QualIdent Nothing (Ident "l" 2)))))) (Literal (Int (Ident "_" 12) 0))) [(FunctionDecl (18,3) (Ident "readNatPrefix" 3) [(Equation (18,3) (FunLhs (Ident "readNatPrefix" 3) [(ListPattern []),(VariablePattern (Ident "n" 4))]) (SimpleRhs (18,24) (Variable (QualIdent Nothing (Ident "n" 4))) [])),(Equation (19,3) (FunLhs (Ident "readNatPrefix" 3) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 6)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 6)))),(VariablePattern (Ident "n" 6))]) (SimpleRhs (20,4) (Let [(PatternDecl (20,8) (VariablePattern (Ident "oc" 8)) (SimpleRhs (20,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 6)))) []))] (IfThenElse (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "oc" 8))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "oc" 8))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '9'))))) (Apply (Apply (Variable (QualIdent Nothing (Ident "readNatPrefix" 3))) (Variable (QualIdent Nothing (Ident "cs" 6)))) (Paren (InfixApply (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 6))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Literal (Int (Ident "_" 10) 10))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "oc" 8)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0'))))))) (Variable (QualIdent Nothing (Ident "n" 6))))) []))])]))])+,(TypeSig (28,1) [(Ident "readInt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (29,1) (Ident "readInt" 0) [(Equation (29,1) (FunLhs (Ident "readInt" 0) [(VariablePattern (Ident "l" 13))]) (SimpleRhs (29,13) (Apply (Variable (QualIdent Nothing (Ident "readIntPrefix" 14))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "dropWhile" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 20))] (InfixApply (Variable (QualIdent Nothing (Ident "c" 20))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char ' ')))))) (Variable (QualIdent Nothing (Ident "l" 13)))))) [(FunctionDecl (31,3) (Ident "readIntPrefix" 14) [(Equation (31,3) (FunLhs (Ident "readIntPrefix" 14) [(ListPattern [])]) (SimpleRhs (31,26) (Literal (Int (Ident "_" 17) 0)) [])),(Equation (32,3) (FunLhs (Ident "readIntPrefix" 14) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 18)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 18))))]) (SimpleRhs (32,26) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c" 18))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char '-'))) (UnaryMinus (Ident "-" 0) (Paren (Apply (Variable (QualIdent (Just "Read") (Ident "readNat" 0))) (Variable (QualIdent Nothing (Ident "cs" 18)))))) (Apply (Variable (QualIdent (Just "Read") (Ident "readNat" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "c" 18))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "cs" 18))))))) []))])]))])+,(TypeSig (38,1) [(Ident "readHex" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (39,1) (Ident "readHex" 0) [(Equation (39,1) (FunLhs (Ident "readHex" 0) [(VariablePattern (Ident "l" 21))]) (SimpleRhs (39,13) (Apply (Apply (Variable (QualIdent Nothing (Ident "readHexPrefix" 22))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "dropWhile" 0))) (Paren (Lambda [(VariablePattern (Ident "c" 35))] (InfixApply (Variable (QualIdent Nothing (Ident "c" 35))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Char ' ')))))) (Variable (QualIdent Nothing (Ident "l" 21)))))) (Literal (Int (Ident "_" 36) 0))) [(FunctionDecl (41,3) (Ident "readHexPrefix" 22) [(Equation (41,3) (FunLhs (Ident "readHexPrefix" 22) [(ListPattern []),(VariablePattern (Ident "n" 23))]) (SimpleRhs (41,24) (Variable (QualIdent Nothing (Ident "n" 23))) [])),(Equation (42,3) (FunLhs (Ident "readHexPrefix" 22) [(ParenPattern (InfixPattern (VariablePattern (Ident "c" 25)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 25)))),(VariablePattern (Ident "n" 25))]) (SimpleRhs (43,4) (Let [(PatternDecl (43,8) (VariablePattern (Ident "cv" 27)) (SimpleRhs (43,13) (Apply (Variable (QualIdent Nothing (Ident "hex2int" 22))) (Variable (QualIdent Nothing (Ident "c" 25)))) []))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "cv" 27))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Literal (Int (Ident "_" 29) 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "readHexPrefix" 22))) (Variable (QualIdent Nothing (Ident "cs" 25)))) (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "n" 25))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Literal (Int (Ident "_" 30) 16))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "cv" 27)))))) (Variable (QualIdent Nothing (Ident "n" 25))))) []))]),(FunctionDecl (47,3) (Ident "hex2int" 22) [(Equation (47,3) (FunLhs (Ident "hex2int" 22) [(VariablePattern (Ident "c" 31))]) (SimpleRhs (47,15) (IfThenElse (Apply (Variable (QualIdent (Just "Char") (Ident "isDigit" 0))) (Variable (QualIdent Nothing (Ident "c" 31)))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 31)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0')))) (IfThenElse (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 31)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 31)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'F'))))) (InfixApply (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c" 31)))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 33) 10))) (UnaryMinus (Ident "-" 0) (Literal (Int (Ident "_" 34) 1))))) []))])]))])+]
+ src/lib/Curry/Module/.curry/Read.efc view
@@ -0,0 +1,1 @@+Prog "Read" ["Char","Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readNat")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Read","readNat.readNatPrefix.3")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","dropWhile")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Read","readNat._#lambda2")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Read","readNat.readNatPrefix.3")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '9')]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Read","readNat.readNatPrefix.3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  10)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Read","readNat._#lambda2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  ' ')])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readInt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readInt.readIntPrefix.14")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","dropWhile")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Read","readInt._#lambda3")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readInt.readIntPrefix.14")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Lit (Intc  0)),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Lit (Charc  '-')]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readNat")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readNat")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3))]])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Read","readInt._#lambda3")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  ' ')])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readHex")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Read","readHex.readHexPrefix.22")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","dropWhile")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Read","readHex._#lambda4")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Lit (Intc  0)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readHex.hex2int.22")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isDigit")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'F')]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Lit (Intc  10)]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","negate")) [Lit (Intc  1)])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Read","readHex.readHexPrefix.22")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Read","readHex.hex2int.22")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Read","readHex.readHexPrefix.22")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  16)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Read","readHex._#lambda4")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Lit (Charc  ' ')]))] []
+ src/lib/Curry/Module/.curry/Read.fcy view
@@ -0,0 +1,1 @@+Prog "Read" ["Char","Prelude"] [] [Func ("Read","readNat") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Read","readNat.readNatPrefix.3") [Comb FuncCall ("Prelude","dropWhile") [Comb (FuncPartCall 1) ("Read","readNat._#lambda2") [],Var 1],Lit (Intc  0)])),Func ("Read","readNat.readNatPrefix.3") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Prelude","ord") [Var 3])] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Var 5,Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')]],Comb FuncCall ("Prelude","<=") [Var 5,Comb FuncCall ("Prelude","ord") [Lit (Charc  '9')]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Read","readNat.readNatPrefix.3") [Var 4,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","*") [Var 2,Lit (Intc  10)],Var 5],Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')]]]),Branch (Pattern ("Prelude","False") []) (Var 2)]))])),Func ("Read","readNat._#lambda2") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  ' ')])),Func ("Read","readInt") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Read","readInt.readIntPrefix.14") [Comb FuncCall ("Prelude","dropWhile") [Comb (FuncPartCall 1) ("Read","readInt._#lambda3") [],Var 1]])),Func ("Read","readInt.readIntPrefix.14") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Lit (Intc  0)),Branch (Pattern ("Prelude",":") [2,3]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Lit (Charc  '-')]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","negate") [Comb FuncCall ("Read","readNat") [Var 3]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Read","readNat") [Comb ConsCall ("Prelude",":") [Var 2,Var 3]])])])),Func ("Read","readInt._#lambda3") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  ' ')])),Func ("Read","readHex") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [1] (Comb FuncCall ("Read","readHex.readHexPrefix.22") [Comb FuncCall ("Prelude","dropWhile") [Comb (FuncPartCall 1) ("Read","readHex._#lambda4") [],Var 1],Lit (Intc  0)])),Func ("Read","readHex.hex2int.22") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Char","isDigit") [Var 1]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'F')]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Lit (Intc  10)]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","negate") [Lit (Intc  1)])])])),Func ("Read","readHex.readHexPrefix.22") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Read","readHex.hex2int.22") [Var 3])] (Case  Rigid (Comb FuncCall ("Prelude",">=") [Var 5,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Read","readHex.readHexPrefix.22") [Var 4,Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","*") [Var 2,Lit (Intc  16)],Var 5]]),Branch (Pattern ("Prelude","False") []) (Var 2)]))])),Func ("Read","readHex._#lambda4") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","==") [Var 1,Lit (Charc  ' ')]))] []
+ src/lib/Curry/Module/.curry/Read.fint view
@@ -0,0 +1,1 @@+Prog "Read" ["Char","Prelude"] [] [Func ("Read","readNat") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Read","readInt") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Read","readHex") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Int") [])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Read.uacy view
@@ -0,0 +1,7 @@+CurryProg "Read"+ ["Prelude","Char"]+ []+ [CFunc ("Read","readHex") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Read","readHexPrefix")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CLambda [CPVar (1,"c")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' '))))) (CVar (0,"l")))) (CLit (CIntc 0)))] [CLocalFunc (CFunc ("Read","readHexPrefix") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"n")] [(CSymbol ("Prelude","success"),CVar (1,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")],CPVar (4,"n")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (5,"cv")) (CApply (CSymbol ("Read","hex2int")) (CVar (2,"c"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (5,"cv"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Read","readHexPrefix")) (CVar (3,"cs"))) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (4,"n"))) (CLit (CIntc 16)))) (CVar (5,"cv"))))) (CVar (4,"n"))))] []])),CLocalFunc (CFunc ("Read","hex2int") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (1,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("Char","isDigit")) (CVar (1,"c")))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0'))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'F')))))) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CLit (CIntc 10)))) (CApply (CSymbol ("Prelude","negate")) (CLit (CIntc 1)))))] []]))]]),+  CFunc ("Read","readInt") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Read","readIntPrefix")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CLambda [CPVar (1,"c")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' '))))) (CVar (0,"l"))))] [CLocalFunc (CFunc ("Read","readIntPrefix") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CLit (CIntc 0))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"c"),CPVar (2,"cs")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc '-')))) (CApply (CSymbol ("Prelude","negate")) (CApply (CSymbol ("Read","readNat")) (CVar (2,"cs"))))) (CApply (CSymbol ("Read","readNat")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"c"))) (CVar (2,"cs")))))] []]))]]),+  CFunc ("Read","readNat") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (0,"l")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Read","readNatPrefix")) (CApply (CApply (CSymbol ("Prelude","dropWhile")) (CLambda [CPVar (1,"c")] (CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"c"))) (CLit (CCharc ' '))))) (CVar (0,"l")))) (CLit (CIntc 0)))] [CLocalFunc (CFunc ("Read","readNatPrefix") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (1,"n")] [(CSymbol ("Prelude","success"),CVar (1,"n"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"c"),CPVar (3,"cs")],CPVar (4,"n")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPVar (5,"oc")) (CApply (CSymbol ("Prelude","ord")) (CVar (2,"c"))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (5,"oc"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (5,"oc"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '9')))))) (CApply (CApply (CSymbol ("Read","readNatPrefix")) (CVar (3,"cs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (4,"n"))) (CLit (CIntc 10)))) (CVar (5,"oc")))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))))) (CVar (4,"n"))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/ReadShowTerm.acy view
@@ -0,0 +1,21 @@+CurryProg "ReadShowTerm"+ ["Prelude","Char"]+ []+ [CFunc ("ReadShowTerm","prim_readsQTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CExternal "prim_readsQTerm"),+  CFunc ("ReadShowTerm","prim_readsUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CExternal "prim_readsUnqualifiedTerm"),+  CFunc ("ReadShowTerm","prim_showQTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "prim_showQTerm"),+  CFunc ("ReadShowTerm","prim_showTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "prim_showTerm"),+  CFunc ("ReadShowTerm","readQTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (1,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (1,"result")) (CApply (CSymbol ("ReadShowTerm","readsQTerm")) (CVar (0,"s"))) []]]),+  CFunc ("ReadShowTerm","readQTermFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CSymbol ("ReadShowTerm","readQTerm"))))] []]),+  CFunc ("ReadShowTerm","readQTermListFile") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (0,"a")]])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("ReadShowTerm","readQTerm")))) (CSymbol ("Prelude","lines")))))] []]),+  CFunc ("ReadShowTerm","readTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (1,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CVar (3,"tail"))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","error"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","take")) (CLit (CIntc 20))) (CVar (0,"s"))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (1,"result")) (CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CSymbol ("ReadShowTerm","prim_readsUnqualifiedTerm")) (CSymbol ("Prelude","[]")))) (CVar (0,"s"))) []]]),+  CFunc ("ReadShowTerm","readUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("ReadShowTerm","readsUnqualifiedTerm")) (CVar (0,"prefixes"))) (CVar (1,"s"))) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CVar (3,"tail"))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))])] []]),+  CFunc ("ReadShowTerm","readsQTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_readsQTerm"))) (CVar (0,"s")))] []]),+  CFunc ("ReadShowTerm","readsTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CSymbol ("ReadShowTerm","prim_readsUnqualifiedTerm")) (CSymbol ("Prelude","[]")))) (CVar (0,"s")))] []]),+  CFunc ("ReadShowTerm","readsUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"prefix"),CPVar (2,"prefixes")],CPVar (3,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("ReadShowTerm","readsUnqualifiedTermWithPrefixes")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"prefix"))) (CVar (2,"prefixes")))) (CVar (3,"s")))] []]),+  CFunc ("ReadShowTerm","readsUnqualifiedTermWithPrefixes") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_readsUnqualifiedTerm"))) (CVar (0,"prefixes")))) (CVar (1,"s")))] []]),+  CFunc ("ReadShowTerm","showQTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_showQTerm"))) (CVar (0,"x")))] []]),+  CFunc ("ReadShowTerm","showTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_showTerm"))) (CVar (0,"x")))] []]),+  CFunc ("ReadShowTerm","writeQTermFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"filename"),CPVar (1,"term")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (0,"filename"))) (CApply (CSymbol ("ReadShowTerm","showQTerm")) (CVar (1,"term"))))] []]),+  CFunc ("ReadShowTerm","writeQTermListFile") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"filename"),CPVar (1,"terms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (0,"filename"))) (CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("ReadShowTerm","showQTerm"))) (CVar (1,"terms")))))] []])]+ []
+ src/lib/Curry/Module/.curry/ReadShowTerm.cy view
@@ -0,0 +1,39 @@+Module "ReadShowTerm"+Nothing+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "Char" False Nothing (Just (Importing (13,12) [(Import (Ident "isSpace" 0))])))+,(TypeSig (22,1) [(Ident "showTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (23,1) (Ident "showTerm" 0) [(Equation (23,1) (FunLhs (Ident "showTerm" 0) [(VariablePattern (Ident "x" 2))]) (SimpleRhs (23,14) (InfixApply (Variable (QualIdent (Just "ReadShowTerm") (Ident "prim_showTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "x" 2)))) []))])+,(TypeSig (25,1) [(Ident "prim_showTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (26,1) [(Ident "prim_showTerm" 0)])+,(TypeSig (34,1) [(Ident "showQTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (35,1) (Ident "showQTerm" 0) [(Equation (35,1) (FunLhs (Ident "showQTerm" 0) [(VariablePattern (Ident "x" 4))]) (SimpleRhs (35,15) (InfixApply (Variable (QualIdent (Just "ReadShowTerm") (Ident "prim_showQTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "x" 4)))) []))])+,(TypeSig (37,1) [(Ident "prim_showQTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (38,1) [(Ident "prim_showQTerm" 0)])+,(TypeSig (48,1) [(Ident "readsUnqualifiedTerm" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FunctionDecl (49,1) (Ident "readsUnqualifiedTerm" 0) [(Equation (49,1) (FunLhs (Ident "readsUnqualifiedTerm" 0) [(ListPattern []),(VariablePattern (Ident "_" 7))]) (SimpleRhs (50,3) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readsUnqualifiedTerm: list of module prefixes is empty"))) [])),(Equation (51,1) (FunLhs (Ident "readsUnqualifiedTerm" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "prefix" 9)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "prefixes" 9)))),(VariablePattern (Ident "s" 9))]) (SimpleRhs (52,3) (Apply (Apply (Variable (QualIdent (Just "ReadShowTerm") (Ident "readsUnqualifiedTermWithPrefixes" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "prefix" 9))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "prefixes" 9)))))) (Variable (QualIdent Nothing (Ident "s" 9)))) []))])+,(TypeSig (54,1) [(Ident "readsUnqualifiedTermWithPrefixes" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FunctionDecl (55,1) (Ident "readsUnqualifiedTermWithPrefixes" 0) [(Equation (55,1) (FunLhs (Ident "readsUnqualifiedTermWithPrefixes" 0) [(VariablePattern (Ident "prefixes" 11)),(VariablePattern (Ident "s" 11))]) (SimpleRhs (56,3) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "ReadShowTerm") (Ident "prim_readsUnqualifiedTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "prefixes" 11))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 11)))) []))])+,(TypeSig (58,1) [(Ident "prim_readsUnqualifiedTerm" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FlatExternalDecl (59,1) [(Ident "prim_readsUnqualifiedTerm" 0)])+,(TypeSig (70,1) [(Ident "readUnqualifiedTerm" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0)))))+,(FunctionDecl (71,1) (Ident "readUnqualifiedTerm" 0) [(Equation (71,1) (FunLhs (Ident "readUnqualifiedTerm" 0) [(VariablePattern (Ident "prefixes" 13)),(VariablePattern (Ident "s" 13))]) (SimpleRhs (71,34) (Case (Apply (Apply (Variable (QualIdent (Just "ReadShowTerm") (Ident "readsUnqualifiedTerm" 0))) (Variable (QualIdent Nothing (Ident "prefixes" 13)))) (Variable (QualIdent Nothing (Ident "s" 13)))) [(Alt (72,3) (ListPattern [(TuplePattern [(VariablePattern (Ident "term" 15)),(VariablePattern (Ident "tail" 15))])]) (SimpleRhs (73,9) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (Variable (QualIdent (Just "Char") (Ident "isSpace" 0)))) (Variable (QualIdent Nothing (Ident "tail" 15)))) (Variable (QualIdent Nothing (Ident "term" 15))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "ReadShowTerm.readUnqualifiedTerm: no parse, unmatched string after term: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "tail" 15))))))) [])),(Alt (75,3) (ListPattern []) (SimpleRhs (75,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readUnqualifiedTerm: no parse"))) [])),(Alt (76,3) (VariablePattern (Ident "_" 20)) (SimpleRhs (76,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readUnqualifiedTerm: ambiguous parse"))) []))]) []))])+,(TypeSig (80,1) [(Ident "readsTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))))+,(FunctionDecl (81,1) (Ident "readsTerm" 0) [(Equation (81,1) (FunLhs (Ident "readsTerm" 0) [(VariablePattern (Ident "s" 22))]) (SimpleRhs (81,15) (InfixApply (Apply (Variable (QualIdent (Just "ReadShowTerm") (Ident "prim_readsUnqualifiedTerm" 0))) (List [])) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 22)))) []))])+,(TypeSig (85,1) [(Ident "readTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0))))+,(FunctionDecl (86,1) (Ident "readTerm" 0) [(Equation (86,1) (FunLhs (Ident "readTerm" 0) [(VariablePattern (Ident "s" 24))]) (SimpleRhs (86,14) (Case (Variable (QualIdent Nothing (Ident "result" 25))) [(Alt (87,3) (ListPattern [(TuplePattern [(VariablePattern (Ident "term" 27)),(VariablePattern (Ident "tail" 27))])]) (SimpleRhs (88,9) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (Variable (QualIdent (Just "Char") (Ident "isSpace" 0)))) (Variable (QualIdent Nothing (Ident "tail" 27)))) (Variable (QualIdent Nothing (Ident "term" 27))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "ReadShowTerm.readTerm: no parse, unmatched string after term: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "tail" 27))))))) [])),(Alt (90,3) (ListPattern []) (SimpleRhs (90,10) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (InfixApply (Literal (String "ReadShowTerm.readTerm: no parse of string beginning with ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "take" 0))) (Literal (Int (Ident "_" 31) 20))) (Variable (QualIdent Nothing (Ident "s" 24)))))) [])),(Alt (92,3) (VariablePattern (Ident "_" 33)) (SimpleRhs (92,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readTerm: ambiguous parse"))) []))]) [(PatternDecl (93,8) (VariablePattern (Ident "result" 25)) (SimpleRhs (93,17) (InfixApply (Apply (Variable (QualIdent (Just "ReadShowTerm") (Ident "prim_readsUnqualifiedTerm" 0))) (List [])) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 24)))) []))]))])+,(TypeSig (100,1) [(Ident "readsQTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))))+,(FunctionDecl (101,1) (Ident "readsQTerm" 0) [(Equation (101,1) (FunLhs (Ident "readsQTerm" 0) [(VariablePattern (Ident "s" 35))]) (SimpleRhs (101,16) (InfixApply (Variable (QualIdent (Just "ReadShowTerm") (Ident "prim_readsQTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 35)))) []))])+,(TypeSig (103,1) [(Ident "prim_readsQTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))))+,(FlatExternalDecl (104,1) [(Ident "prim_readsQTerm" 0)])+,(TypeSig (109,1) [(Ident "readQTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0))))+,(FunctionDecl (110,1) (Ident "readQTerm" 0) [(Equation (110,1) (FunLhs (Ident "readQTerm" 0) [(VariablePattern (Ident "s" 37))]) (SimpleRhs (110,15) (Case (Variable (QualIdent Nothing (Ident "result" 38))) [(Alt (111,3) (ListPattern [(TuplePattern [(VariablePattern (Ident "term" 40)),(VariablePattern (Ident "tail" 40))])]) (SimpleRhs (111,20) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (Variable (QualIdent (Just "Char") (Ident "isSpace" 0)))) (Variable (QualIdent Nothing (Ident "tail" 40)))) (Variable (QualIdent Nothing (Ident "term" 40))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readQTerm: no parse")))) [])),(Alt (113,3) (ListPattern []) (SimpleRhs (113,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readQTerm: no parse"))) [])),(Alt (114,3) (VariablePattern (Ident "_" 45)) (SimpleRhs (114,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readQTerm: ambiguous parse"))) []))]) [(PatternDecl (115,8) (VariablePattern (Ident "result" 38)) (SimpleRhs (115,17) (Apply (Variable (QualIdent (Just "ReadShowTerm") (Ident "readsQTerm" 0))) (Variable (QualIdent Nothing (Ident "s" 37)))) []))]))])+,(TypeSig (121,1) [(Ident "readQTermFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "_" 0))])))+,(FunctionDecl (122,1) (Ident "readQTermFile" 0) [(Equation (122,1) (FunLhs (Ident "readQTermFile" 0) [(VariablePattern (Ident "file" 47))]) (SimpleRhs (122,22) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "readFile" 0))) (Variable (QualIdent Nothing (Ident "file" 47)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "ReadShowTerm") (Ident "readQTerm" 0))))) []))])+,(TypeSig (127,1) [(Ident "readQTermListFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (VariableType (Ident "_" 0)))])))+,(FunctionDecl (128,1) (Ident "readQTermListFile" 0) [(Equation (128,1) (FunLhs (Ident "readQTermListFile" 0) [(VariablePattern (Ident "file" 49))]) (SimpleRhs (128,26) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "readFile" 0))) (Variable (QualIdent Nothing (Ident "file" 49)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "ReadShowTerm") (Ident "readQTerm" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "lines" 0)))))) []))])+,(TypeSig (134,1) [(Ident "writeQTermFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (135,1) (Ident "writeQTermFile" 0) [(Equation (135,1) (FunLhs (Ident "writeQTermFile" 0) [(VariablePattern (Ident "filename" 51)),(VariablePattern (Ident "term" 51))]) (SimpleRhs (135,32) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "writeFile" 0))) (Variable (QualIdent Nothing (Ident "filename" 51)))) (Paren (Apply (Variable (QualIdent (Just "ReadShowTerm") (Ident "showQTerm" 0))) (Variable (QualIdent Nothing (Ident "term" 51)))))) []))])+,(TypeSig (143,1) [(Ident "writeQTermListFile" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ListType (VariableType (Ident "_" 0))) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (144,1) (Ident "writeQTermListFile" 0) [(Equation (144,1) (FunLhs (Ident "writeQTermListFile" 0) [(VariablePattern (Ident "filename" 53)),(VariablePattern (Ident "terms" 53))]) (SimpleRhs (145,5) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "writeFile" 0))) (Variable (QualIdent Nothing (Ident "filename" 53)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "unlines" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent (Just "ReadShowTerm") (Ident "showQTerm" 0)))) (Variable (QualIdent Nothing (Ident "terms" 53)))))))) []))])+]
+ src/lib/Curry/Module/.curry/ReadShowTerm.efc view
@@ -0,0 +1,1 @@+Prog "ReadShowTerm" ["Char","Prelude"] [] [Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","showTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","prim_showTerm")) [],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","prim_showTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "ReadShowTerm.prim_showTerm"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","showQTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","prim_showQTerm")) [],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","prim_showQTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "ReadShowTerm.prim_showQTerm"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","readsUnqualifiedTerm")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","readsUnqualifiedTermWithPrefixes")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","readsUnqualifiedTermWithPrefixes")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","prim_readsUnqualifiedTerm")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","prim_readsUnqualifiedTerm")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (External "ReadShowTerm.prim_readsUnqualifiedTerm"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0))),"ReadShowTerm","readUnqualifiedTerm")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","readsUnqualifiedTerm")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isSpace")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),5))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 14,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"ReadShowTerm","readsTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","prim_readsUnqualifiedTerm")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"ReadShowTerm","readTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 89) (TVar 90)) (FuncType (TVar 89) (TVar 90))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 88,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"ReadShowTerm","prim_readsUnqualifiedTerm")) [Comb ConsCall ((Nothing,Just (TVar 87),"Prelude","[]")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isSpace")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),5))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 73,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0))),"Prelude","$")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","take")) [Lit (Intc  20),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]]])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"ReadShowTerm","readsQTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"ReadShowTerm","prim_readsQTerm")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"ReadShowTerm","prim_readsQTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (External "ReadShowTerm.prim_readsQTerm"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"ReadShowTerm","readQTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 105,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"ReadShowTerm","readsQTerm")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isSpace")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),5))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'Q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'Q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 92,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'Q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"ReadShowTerm","readQTermFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","readFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Prelude","return")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"ReadShowTerm","readQTerm")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"ReadShowTerm","readQTermListFile")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","readFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]])),"Prelude","return")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"ReadShowTerm","readQTerm")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","lines")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"ReadShowTerm","writeQTermFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","writeFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","showQTerm")) [Var ((Just (TVar 0),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"ReadShowTerm","writeQTermListFile")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","writeFile")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","unlines")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","map")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"ReadShowTerm","showQTerm")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]]]))] []
+ src/lib/Curry/Module/.curry/ReadShowTerm.fcy view
@@ -0,0 +1,1 @@+Prog "ReadShowTerm" ["Char","Prelude"] [] [Func ("ReadShowTerm","showTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("ReadShowTerm","prim_showTerm") [],Var 1])),Func ("ReadShowTerm","prim_showTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "ReadShowTerm.prim_showTerm"),Func ("ReadShowTerm","showQTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("ReadShowTerm","prim_showQTerm") [],Var 1])),Func ("ReadShowTerm","prim_showQTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "ReadShowTerm.prim_showQTerm"),Func ("ReadShowTerm","readsUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("ReadShowTerm","readsUnqualifiedTermWithPrefixes") [Comb ConsCall ("Prelude",":") [Var 3,Var 4],Var 2])])),Func ("ReadShowTerm","readsUnqualifiedTermWithPrefixes") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("ReadShowTerm","prim_readsUnqualifiedTerm") [],Var 1],Var 2])),Func ("ReadShowTerm","prim_readsUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (External "ReadShowTerm.prim_readsUnqualifiedTerm"),Func ("ReadShowTerm","readUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("ReadShowTerm","readsUnqualifiedTerm") [Var 1,Var 2]) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","[]") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","all") [Comb (FuncPartCall 1) ("Char","isSpace") []],Var 6]) [Branch (Pattern ("Prelude","True") []) (Var 5),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Var 6]])]),Branch (Pattern ("Prelude",":") [7,8]) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])),Func ("ReadShowTerm","readsTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("ReadShowTerm","prim_readsUnqualifiedTerm") [Comb ConsCall ("Prelude","[]") []],Var 1])),Func ("ReadShowTerm","readTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [1] (Let [(2,Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("ReadShowTerm","prim_readsUnqualifiedTerm") [Comb ConsCall ("Prelude","[]") []],Var 1])] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","[]") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","all") [Comb (FuncPartCall 1) ("Char","isSpace") []],Var 6]) [Branch (Pattern ("Prelude","True") []) (Var 5),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Var 6]])]),Branch (Pattern ("Prelude",":") [7,8]) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","$") [Comb (FuncPartCall 1) ("Prelude","error") [],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Comb FuncCall ("Prelude","take") [Lit (Intc  20),Var 1]]])]))),Func ("ReadShowTerm","readsQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("ReadShowTerm","prim_readsQTerm") [],Var 1])),Func ("ReadShowTerm","prim_readsQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (External "ReadShowTerm.prim_readsQTerm"),Func ("ReadShowTerm","readQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [1] (Let [(2,Comb FuncCall ("ReadShowTerm","readsQTerm") [Var 1])] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","[]") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","all") [Comb (FuncPartCall 1) ("Char","isSpace") []],Var 6]) [Branch (Pattern ("Prelude","True") []) (Var 5),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'Q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]),Branch (Pattern ("Prelude",":") [7,8]) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'Q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'Q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]))),Func ("ReadShowTerm","readQTermFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","readFile") [Var 1],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","return") [],Comb (FuncPartCall 1) ("ReadShowTerm","readQTerm") []]])),Func ("ReadShowTerm","readQTermListFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 0]])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","readFile") [Var 1],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","return") [],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","map") [Comb (FuncPartCall 1) ("ReadShowTerm","readQTerm") []],Comb (FuncPartCall 1) ("Prelude","lines") []]]])),Func ("ReadShowTerm","writeQTermFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","writeFile") [Var 1,Comb FuncCall ("ReadShowTerm","showQTerm") [Var 2]])),Func ("ReadShowTerm","writeQTermListFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","writeFile") [Var 1,Comb FuncCall ("Prelude","unlines") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 1) ("ReadShowTerm","showQTerm") [],Var 2]]]))] []
+ src/lib/Curry/Module/.curry/ReadShowTerm.fint view
@@ -0,0 +1,1 @@+Prog "ReadShowTerm" ["Char","Prelude"] [] [Func ("ReadShowTerm","showTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("ReadShowTerm","prim_showTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "ReadShowTerm.prim_showTerm"),Func ("ReadShowTerm","showQTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("ReadShowTerm","prim_showQTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "ReadShowTerm.prim_showQTerm"),Func ("ReadShowTerm","readsUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [] (Var 0)),Func ("ReadShowTerm","readsUnqualifiedTermWithPrefixes") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [] (Var 0)),Func ("ReadShowTerm","prim_readsUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (External "ReadShowTerm.prim_readsUnqualifiedTerm"),Func ("ReadShowTerm","readUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0))) (Rule [] (Var 0)),Func ("ReadShowTerm","readsTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Var 0)),Func ("ReadShowTerm","readTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [] (Var 0)),Func ("ReadShowTerm","readsQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Var 0)),Func ("ReadShowTerm","prim_readsQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (External "ReadShowTerm.prim_readsQTerm"),Func ("ReadShowTerm","readQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [] (Var 0)),Func ("ReadShowTerm","readQTermFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TVar 0])) (Rule [] (Var 0)),Func ("ReadShowTerm","readQTermListFile") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 0]])) (Rule [] (Var 0)),Func ("ReadShowTerm","writeQTermFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("ReadShowTerm","writeQTermListFile") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/ReadShowTerm.uacy view
@@ -0,0 +1,21 @@+CurryProg "ReadShowTerm"+ ["Prelude","Char"]+ []+ [CFunc ("ReadShowTerm","prim_readsQTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]])) (CExternal "prim_readsQTerm"),+  CFunc ("ReadShowTerm","prim_readsUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]]))) (CExternal "prim_readsUnqualifiedTerm"),+  CFunc ("ReadShowTerm","prim_showQTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "prim_showQTerm"),+  CFunc ("ReadShowTerm","prim_showTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "prim_showTerm"),+  CFunc ("ReadShowTerm","readQTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (1,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (1,"result")) (CApply (CSymbol ("ReadShowTerm","readsQTerm")) (CVar (0,"s"))) []]]),+  CFunc ("ReadShowTerm","readQTermFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTVar (0,"_")])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CSymbol ("ReadShowTerm","readQTerm"))))] []]),+  CFunc ("ReadShowTerm","readQTermListFile") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (0,"_")]])) (CRules CFlex [CRule [CPVar (0,"file")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Prelude","readFile")) (CVar (0,"file")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Prelude","map")) (CSymbol ("ReadShowTerm","readQTerm")))) (CSymbol ("Prelude","lines")))))] []]),+  CFunc ("ReadShowTerm","readTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (1,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CVar (3,"tail"))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CApply (CSymbol ("Prelude","$")) (CSymbol ("Prelude","error"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CApply (CApply (CSymbol ("Prelude","take")) (CLit (CIntc 20))) (CVar (0,"s"))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (1,"result")) (CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CSymbol ("ReadShowTerm","prim_readsUnqualifiedTerm")) (CSymbol ("Prelude","[]")))) (CVar (0,"s"))) []]]),+  CFunc ("ReadShowTerm","readUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_")))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CCase (CApply (CApply (CSymbol ("ReadShowTerm","readsUnqualifiedTerm")) (CVar (0,"prefixes"))) (CVar (1,"s"))) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CVar (3,"tail"))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))])] []]),+  CFunc ("ReadShowTerm","readsQTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_readsQTerm"))) (CVar (0,"s")))] []]),+  CFunc ("ReadShowTerm","readsTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CSymbol ("ReadShowTerm","prim_readsUnqualifiedTerm")) (CSymbol ("Prelude","[]")))) (CVar (0,"s")))] []]),+  CFunc ("ReadShowTerm","readsUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"prefix"),CPVar (2,"prefixes")],CPVar (3,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("ReadShowTerm","readsUnqualifiedTermWithPrefixes")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"prefix"))) (CVar (2,"prefixes")))) (CVar (3,"s")))] []]),+  CFunc ("ReadShowTerm","readsUnqualifiedTermWithPrefixes") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]]))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_readsUnqualifiedTerm"))) (CVar (0,"prefixes")))) (CVar (1,"s")))] []]),+  CFunc ("ReadShowTerm","showQTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_showQTerm"))) (CVar (0,"x")))] []]),+  CFunc ("ReadShowTerm","showTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("ReadShowTerm","prim_showTerm"))) (CVar (0,"x")))] []]),+  CFunc ("ReadShowTerm","writeQTermFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"filename"),CPVar (1,"term")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (0,"filename"))) (CApply (CSymbol ("ReadShowTerm","showQTerm")) (CVar (1,"term"))))] []]),+  CFunc ("ReadShowTerm","writeQTermListFile") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"_")]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"filename"),CPVar (1,"terms")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","writeFile")) (CVar (0,"filename"))) (CApply (CSymbol ("Prelude","unlines")) (CApply (CApply (CSymbol ("Prelude","map")) (CSymbol ("ReadShowTerm","showQTerm"))) (CVar (1,"terms")))))] []])]+ []
+ src/lib/Curry/Module/.curry/RedBlackTree.acy view
@@ -0,0 +1,33 @@+CurryProg "RedBlackTree"+ ["Prelude"]+ [CType ("RedBlackTree","RedBlackTree") Public [(0,"a")] [CCons ("RedBlackTree","RedBlackTree") 4 Public [CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])),CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])),CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])),CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]]],+  CType ("RedBlackTree","Color") Private [] [CCons ("RedBlackTree","Red") 0 Private [],CCons ("RedBlackTree","Black") 0 Private [],CCons ("RedBlackTree","DoublyBlack") 0 Private []],+  CType ("RedBlackTree","Tree") Private [(0,"a")] [CCons ("RedBlackTree","Tree") 4 Private [CTCons ("RedBlackTree","Color") [],CTVar (0,"a"),CTCons ("RedBlackTree","Tree") [CTVar (0,"a")],CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]],CCons ("RedBlackTree","Empty") 0 Private []]]+ [CFunc ("RedBlackTree","balanceL") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"leftTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"leftTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (2,"_"),CPVar (3,"z"),CPComb ("RedBlackTree","Tree") [CPVar (4,"_"),CPVar (5,"y"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"x"),CPVar (8,"a"),CPVar (9,"b")],CPVar (10,"c")],CPVar (11,"d")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (5,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (7,"x"))) (CVar (8,"a"))) (CVar (9,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (3,"z"))) (CVar (10,"c"))) (CVar (11,"d"))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"leftTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"leftTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (12,"_"),CPVar (13,"z"),CPComb ("RedBlackTree","Tree") [CPVar (14,"_"),CPVar (15,"x"),CPVar (16,"a"),CPComb ("RedBlackTree","Tree") [CPVar (17,"_"),CPVar (18,"y"),CPVar (19,"b"),CPVar (20,"c")]],CPVar (21,"d")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (18,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (15,"x"))) (CVar (16,"a"))) (CVar (19,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (13,"z"))) (CVar (20,"c"))) (CVar (21,"d"))))),(CSymbol ("Prelude","otherwise"),CVar (0,"tree"))] [CLocalPat (CPVar (1,"leftTree")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (0,"tree"))) []]]),+  CFunc ("RedBlackTree","balanceR") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"rightTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"rightTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (2,"_"),CPVar (3,"x"),CPVar (4,"a"),CPComb ("RedBlackTree","Tree") [CPVar (5,"_"),CPVar (6,"y"),CPVar (7,"b"),CPComb ("RedBlackTree","Tree") [CPVar (8,"_"),CPVar (9,"z"),CPVar (10,"c"),CPVar (11,"d")]]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (6,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (3,"x"))) (CVar (4,"a"))) (CVar (7,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (9,"z"))) (CVar (10,"c"))) (CVar (11,"d"))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"rightTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"rightTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (12,"_"),CPVar (13,"x"),CPVar (14,"a"),CPComb ("RedBlackTree","Tree") [CPVar (15,"_"),CPVar (16,"z"),CPComb ("RedBlackTree","Tree") [CPVar (17,"_"),CPVar (18,"y"),CPVar (19,"b"),CPVar (20,"c")],CPVar (21,"d")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (18,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (13,"x"))) (CVar (14,"a"))) (CVar (19,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (16,"z"))) (CVar (20,"c"))) (CVar (21,"d"))))),(CSymbol ("Prelude","otherwise"),CVar (0,"tree"))] [CLocalPat (CPVar (1,"rightTree")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (0,"tree"))) []]]),+  CFunc ("RedBlackTree","delBalanceL") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("RedBlackTree","isDoublyBlack")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (0,"tree"))))) (CApply (CSymbol ("RedBlackTree","reviseLeft")) (CVar (0,"tree")))) (CVar (0,"tree")))] []]),+  CFunc ("RedBlackTree","delBalanceR") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("RedBlackTree","isDoublyBlack")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (0,"tree"))))) (CApply (CSymbol ("RedBlackTree","reviseRight")) (CVar (0,"tree")))) (CVar (0,"tree")))] []]),+  CFunc ("RedBlackTree","delete") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"eqIns"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (1,"eqIns"))) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CApply (CSymbol ("RedBlackTree","blackenRoot")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CVar (0,"e"))) (CVar (4,"t")))))] [CLocalFunc (CFunc ("RedBlackTree","blackenRoot") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (5,"_"),CPVar (6,"x"),CPVar (7,"l"),CPVar (8,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (6,"x"))) (CVar (7,"l"))) (CVar (8,"r")))] []]))]]),+  CFunc ("RedBlackTree","deleteTree") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPVar (3,"eq"),CPVar (4,"lt"),CPVar (5,"e"),CPComb ("RedBlackTree","Tree") [CPVar (6,"c"),CPVar (7,"e2"),CPVar (8,"l"),CPVar (9,"r")]] [(CApply (CApply (CVar (3,"eq")) (CVar (5,"e"))) (CVar (7,"e2")),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"l"))) (CSymbol ("RedBlackTree","Empty")))) (CApply (CApply (CSymbol ("RedBlackTree","addColor")) (CVar (6,"c"))) (CVar (9,"r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"r"))) (CSymbol ("RedBlackTree","Empty")))) (CApply (CApply (CSymbol ("RedBlackTree","addColor")) (CVar (6,"c"))) (CVar (8,"l")))) (CLetDecl [CLocalPat (CPVar (10,"el")) (CApply (CSymbol ("RedBlackTree","rightMost")) (CVar (8,"l"))) []] (CApply (CSymbol ("RedBlackTree","delBalanceL")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (6,"c"))) (CVar (10,"el"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (10,"el"))) (CVar (8,"l")))) (CVar (9,"r"))))))),(CApply (CApply (CVar (4,"lt")) (CVar (5,"e"))) (CVar (7,"e2")),CApply (CSymbol ("RedBlackTree","delBalanceL")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (6,"c"))) (CVar (7,"e2"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"e"))) (CVar (8,"l")))) (CVar (9,"r")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("RedBlackTree","delBalanceR")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (6,"c"))) (CVar (7,"e2"))) (CVar (8,"l"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"e"))) (CVar (9,"r")))))] [CLocalFunc (CFunc ("RedBlackTree","addColor") 2 Private (CFuncType (CTCons ("RedBlackTree","Color") []) (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("RedBlackTree","Red") [],CPVar (10,"tree")] [(CSymbol ("Prelude","success"),CVar (10,"tree"))] [],CRule [CPComb ("RedBlackTree","Black") [],CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPComb ("RedBlackTree","Black") [],CPComb ("RedBlackTree","Tree") [CPComb ("RedBlackTree","Red") [],CPVar (11,"x"),CPVar (12,"lx"),CPVar (13,"rx")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (11,"x"))) (CVar (12,"lx"))) (CVar (13,"rx")))] [],CRule [CPComb ("RedBlackTree","Black") [],CPComb ("RedBlackTree","Tree") [CPComb ("RedBlackTree","Black") [],CPVar (14,"x"),CPVar (15,"lx"),CPVar (16,"rx")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","DoublyBlack"))) (CVar (14,"x"))) (CVar (15,"lx"))) (CVar (16,"rx")))] []])),CLocalFunc (CFunc ("RedBlackTree","rightMost") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (10,"_"),CPVar (11,"x"),CPVar (12,"_"),CPVar (13,"rx")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (13,"rx"))) (CSymbol ("RedBlackTree","Empty")))) (CVar (11,"x"))) (CApply (CSymbol ("RedBlackTree","rightMost")) (CVar (13,"rx"))))] []]))]]),+  CFunc ("RedBlackTree","element") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"_"),CPVar (1,"e"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"e"))] []]),+  CFunc ("RedBlackTree","empty") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"eqInsert"),CPVar (1,"eqLookUp"),CPVar (2,"lessThan")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (0,"eqInsert"))) (CVar (1,"eqLookUp"))) (CVar (2,"lessThan"))) (CSymbol ("RedBlackTree","Empty")))] []]),+  CFunc ("RedBlackTree","isBlack") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"c"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("RedBlackTree","Black")))] []]),+  CFunc ("RedBlackTree","isDoublyBlack") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"c"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("RedBlackTree","DoublyBlack")))] []]),+  CFunc ("RedBlackTree","isEmpty") 1 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("RedBlackTree","Empty") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"_"),CPVar (8,"_"),CPVar (9,"_")]]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("RedBlackTree","isRed") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"c"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("RedBlackTree","Red")))] []]),+  CFunc ("RedBlackTree","left") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"l"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"l"))] []]),+  CFunc ("RedBlackTree","lookup") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"_"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","lookupTree")) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CVar (0,"p"))) (CVar (4,"t")))] []]),+  CFunc ("RedBlackTree","lookupTree") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPVar (3,"eq"),CPVar (4,"lt"),CPVar (5,"p"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"e"),CPVar (8,"l"),CPVar (9,"r")]] [(CApply (CApply (CVar (3,"eq")) (CVar (5,"p"))) (CVar (7,"e")),CApply (CSymbol ("Prelude","Just")) (CVar (7,"e"))),(CApply (CApply (CVar (4,"lt")) (CVar (5,"p"))) (CVar (7,"e")),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","lookupTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"p"))) (CVar (8,"l"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","lookupTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"p"))) (CVar (9,"r")))] []]),+  CFunc ("RedBlackTree","newTreeLike") 1 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"eqIns"),CPVar (1,"eqLk"),CPVar (2,"lt"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (0,"eqIns"))) (CVar (1,"eqLk"))) (CVar (2,"lt"))) (CSymbol ("RedBlackTree","Empty")))] []]),+  CFunc ("RedBlackTree","rbt") 1 Private (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"t")]] [(CSymbol ("Prelude","success"),CVar (3,"t"))] []]),+  CFunc ("RedBlackTree","reviseLeft") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"r"))) (CSymbol ("RedBlackTree","Empty")),CVar (0,"tree")),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackr"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"r")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (3,"col"),CPVar (4,"x"),CPVar (5,"a"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"z"),CPComb ("RedBlackTree","Tree") [CPVar (8,"_"),CPVar (9,"y"),CPVar (10,"b"),CPVar (11,"c")],CPVar (12,"d")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (3,"col"))) (CVar (9,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (4,"x"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (5,"a")))) (CVar (10,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (7,"z"))) (CVar (11,"c"))) (CVar (12,"d"))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackr"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"r")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (13,"col"),CPVar (14,"x"),CPVar (15,"a"),CPComb ("RedBlackTree","Tree") [CPVar (16,"_"),CPVar (17,"y"),CPVar (18,"b"),CPComb ("RedBlackTree","Tree") [CPVar (19,"_"),CPVar (20,"z"),CPVar (21,"c"),CPVar (22,"d")]]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (13,"col"))) (CVar (17,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (14,"x"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (15,"a")))) (CVar (18,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (20,"z"))) (CVar (21,"c"))) (CVar (22,"d"))))),(CVar (2,"blackr"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (23,"col"),CPVar (24,"x"),CPVar (25,"a"),CPComb ("RedBlackTree","Tree") [CPVar (26,"_"),CPVar (27,"y"),CPVar (28,"b"),CPVar (29,"c")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (23,"col"))) (CSymbol ("RedBlackTree","Red")))) (CSymbol ("RedBlackTree","Black"))) (CSymbol ("RedBlackTree","DoublyBlack")))) (CVar (24,"x"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (25,"a")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (27,"y"))) (CVar (28,"b"))) (CVar (29,"c"))))),(CSymbol ("Prelude","otherwise"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (30,"_"),CPVar (31,"x"),CPVar (32,"a"),CPComb ("RedBlackTree","Tree") [CPVar (33,"_"),CPVar (34,"y"),CPVar (35,"b"),CPVar (36,"c")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (34,"y"))) (CApply (CSymbol ("RedBlackTree","reviseLeft")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (31,"x"))) (CVar (32,"a"))) (CVar (35,"b"))))) (CVar (36,"c"))))] [CLocalPat (CPVar (1,"r")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (0,"tree"))) [],CLocalPat (CPVar (2,"blackr")) (CApply (CSymbol ("RedBlackTree","isBlack")) (CVar (1,"r"))) []]]),+  CFunc ("RedBlackTree","reviseRight") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"l"))) (CSymbol ("RedBlackTree","Empty")),CVar (0,"tree")),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackl"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"l")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (3,"col"),CPVar (4,"x"),CPComb ("RedBlackTree","Tree") [CPVar (5,"_"),CPVar (6,"y"),CPComb ("RedBlackTree","Tree") [CPVar (7,"_"),CPVar (8,"z"),CPVar (9,"d"),CPVar (10,"c")],CPVar (11,"b")],CPVar (12,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (3,"col"))) (CVar (6,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (8,"z"))) (CVar (9,"d"))) (CVar (10,"c")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (4,"x"))) (CVar (11,"b"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (12,"a")))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackl"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"l")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (13,"col"),CPVar (14,"x"),CPComb ("RedBlackTree","Tree") [CPVar (15,"_"),CPVar (16,"z"),CPVar (17,"d"),CPComb ("RedBlackTree","Tree") [CPVar (18,"_"),CPVar (19,"y"),CPVar (20,"c"),CPVar (21,"b")]],CPVar (22,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (13,"col"))) (CVar (19,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (16,"z"))) (CVar (17,"d"))) (CVar (20,"c")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (14,"x"))) (CVar (21,"b"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (22,"a")))))),(CVar (2,"blackl"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (23,"col"),CPVar (24,"x"),CPComb ("RedBlackTree","Tree") [CPVar (25,"_"),CPVar (26,"y"),CPVar (27,"c"),CPVar (28,"b")],CPVar (29,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (23,"col"))) (CSymbol ("RedBlackTree","Red")))) (CSymbol ("RedBlackTree","Black"))) (CSymbol ("RedBlackTree","DoublyBlack")))) (CVar (24,"x"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (26,"y"))) (CVar (27,"c"))) (CVar (28,"b")))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (29,"a"))))),(CSymbol ("Prelude","otherwise"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (30,"_"),CPVar (31,"x"),CPComb ("RedBlackTree","Tree") [CPVar (32,"_"),CPVar (33,"y"),CPVar (34,"c"),CPVar (35,"b")],CPVar (36,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (33,"y"))) (CVar (34,"c"))) (CApply (CSymbol ("RedBlackTree","reviseRight")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (31,"x"))) (CVar (35,"b"))) (CVar (36,"a"))))))] [CLocalPat (CPVar (1,"l")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (0,"tree"))) [],CLocalPat (CPVar (2,"blackl")) (CApply (CSymbol ("RedBlackTree","isBlack")) (CVar (1,"l"))) []]]),+  CFunc ("RedBlackTree","right") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CVar (3,"r"))] []]),+  CFunc ("RedBlackTree","setInsertEquivalence") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"eqIns"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"_"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (0,"eqIns"))) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CVar (4,"t")))] []]),+  CFunc ("RedBlackTree","singleBlack") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPComb ("RedBlackTree","DoublyBlack") [],CPVar (0,"x"),CPVar (1,"l"),CPVar (2,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (0,"x"))) (CVar (1,"l"))) (CVar (2,"r")))] []]),+  CFunc ("RedBlackTree","sort") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"cmp"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","tree2list")) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("RedBlackTree","update"))) (CApply (CApply (CApply (CSymbol ("RedBlackTree","empty")) (CLambda [CPVar (2,"_"),CPVar (3,"_")] (CSymbol ("Prelude","False")))) (CSymbol ("Prelude","=="))) (CVar (0,"cmp")))) (CVar (1,"xs"))))] []]),+  CFunc ("RedBlackTree","tree2list") 1 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"t")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","tree2listTree")) (CVar (3,"t")))] []]),+  CFunc ("RedBlackTree","tree2listTree") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","t2l")) (CVar (0,"tree"))) (CSymbol ("Prelude","[]")))] [CLocalFunc (CFunc ("RedBlackTree","t2l") 2 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") [],CPVar (1,"es")] [(CSymbol ("Prelude","success"),CVar (1,"es"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (2,"_"),CPVar (3,"e"),CPVar (4,"l"),CPVar (5,"r")],CPVar (6,"es")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","t2l")) (CVar (4,"l"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"e"))) (CApply (CApply (CSymbol ("RedBlackTree","t2l")) (CVar (5,"r"))) (CVar (6,"es")))))] []]))]]),+  CFunc ("RedBlackTree","update") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"eqIns"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (1,"eqIns"))) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","updateTree")) (CVar (1,"eqIns"))) (CVar (3,"lt"))) (CVar (0,"e"))) (CVar (4,"t"))))] []]),+  CFunc ("RedBlackTree","updateTree") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"eq"),CPVar (1,"lt"),CPVar (2,"e"),CPVar (3,"t")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (4,"_"),CPVar (5,"e2"),CPVar (6,"l"),CPVar (7,"r")]) (CApply (CSymbol ("RedBlackTree","upd")) (CVar (3,"t"))) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (5,"e2"))) (CVar (6,"l"))) (CVar (7,"r"))))] [CLocalFunc (CFunc ("RedBlackTree","upd") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (1,"_183")]) (CTCons ("RedBlackTree","Tree") [CTVar (1,"_183")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (2,"e"))) (CSymbol ("RedBlackTree","Empty"))) (CSymbol ("RedBlackTree","Empty")))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (4,"c"),CPVar (5,"e2"),CPVar (6,"l"),CPVar (7,"r")]] [(CApply (CApply (CVar (0,"eq")) (CVar (2,"e"))) (CVar (5,"e2")),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (4,"c"))) (CVar (2,"e"))) (CVar (6,"l"))) (CVar (7,"r"))),(CApply (CApply (CVar (1,"lt")) (CVar (2,"e"))) (CVar (5,"e2")),CApply (CSymbol ("RedBlackTree","balanceL")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (4,"c"))) (CVar (5,"e2"))) (CApply (CSymbol ("RedBlackTree","upd")) (CVar (6,"l")))) (CVar (7,"r")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("RedBlackTree","balanceR")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (4,"c"))) (CVar (5,"e2"))) (CVar (6,"l"))) (CApply (CSymbol ("RedBlackTree","upd")) (CVar (7,"r")))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/RedBlackTree.cy view
@@ -0,0 +1,53 @@+Module "RedBlackTree"+(Just (Exporting (14,3) [(Export (QualIdent Nothing (Ident "RedBlackTree" 0))),(Export (QualIdent Nothing (Ident "empty" 0))),(Export (QualIdent Nothing (Ident "isEmpty" 0))),(Export (QualIdent Nothing (Ident "lookup" 0))),(Export (QualIdent Nothing (Ident "update" 0))),(Export (QualIdent Nothing (Ident "tree2list" 0))),(Export (QualIdent Nothing (Ident "sort" 0))),(Export (QualIdent Nothing (Ident "newTreeLike" 0))),(Export (QualIdent Nothing (Ident "setInsertEquivalence" 0))),(Export (QualIdent Nothing (Ident "delete" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(DataDecl (33,1) (Ident "RedBlackTree" 0) [(Ident "a" 0)] [(ConstrDecl (33,23) [] (Ident "RedBlackTree" 0) [(ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))),(ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))),(ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))),(ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])])])+,(DataDecl (128,1) (Ident "Color" 0) [] [(ConstrDecl (128,14) [] (Ident "Red" 0) []),(ConstrDecl (128,20) [] (Ident "Black" 0) []),(ConstrDecl (128,28) [] (Ident "DoublyBlack" 0) [])])+,(DataDecl (131,1) (Ident "Tree" 0) [(Ident "a" 0)] [(ConstrDecl (131,15) [] (Ident "Tree" 0) [(ConstructorType (QualIdent Nothing (Ident "Color" 0)) []),(VariableType (Ident "a" 0)),(ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]),(ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])]),(ConstrDecl (132,15) [] (Ident "Empty" 0) [])])+,(TypeSig (39,1) [(Ident "empty" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (40,1) (Ident "empty" 0) [(Equation (40,1) (FunLhs (Ident "empty" 0) [(VariablePattern (Ident "eqInsert" 2)),(VariablePattern (Ident "eqLookUp" 2)),(VariablePattern (Ident "lessThan" 2))]) (SimpleRhs (40,36) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0))) (Variable (QualIdent Nothing (Ident "eqInsert" 2)))) (Variable (QualIdent Nothing (Ident "eqLookUp" 2)))) (Variable (QualIdent Nothing (Ident "lessThan" 2)))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) []))])+,(FunctionDecl (43,1) (Ident "isEmpty" 0) [(Equation (43,1) (FunLhs (Ident "isEmpty" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "_" 5)),(VariablePattern (Ident "_" 6)),(VariablePattern (Ident "_" 7)),(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]))]) (SimpleRhs (43,48) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (44,1) (FunLhs (Ident "isEmpty" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "_" 10)),(VariablePattern (Ident "_" 11)),(VariablePattern (Ident "_" 12)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 13)),(VariablePattern (Ident "_" 14)),(VariablePattern (Ident "_" 15)),(VariablePattern (Ident "_" 16))]))]))]) (SimpleRhs (44,48) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) []))])+,(FunctionDecl (47,1) (Ident "newTreeLike" 0) [(Equation (47,1) (FunLhs (Ident "newTreeLike" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "eqIns" 18)),(VariablePattern (Ident "eqLk" 18)),(VariablePattern (Ident "lt" 18)),(VariablePattern (Ident "_" 19))]))]) (SimpleRhs (47,46) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0))) (Variable (QualIdent Nothing (Ident "eqIns" 18)))) (Variable (QualIdent Nothing (Ident "eqLk" 18)))) (Variable (QualIdent Nothing (Ident "lt" 18)))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) []))])+,(TypeSig (54,1) [(Ident "lookup" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (55,1) (Ident "lookup" 0) [(Equation (55,1) (FunLhs (Ident "lookup" 0) [(VariablePattern (Ident "p" 21)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "_" 22)),(VariablePattern (Ident "eqLk" 21)),(VariablePattern (Ident "lt" 21)),(VariablePattern (Ident "t" 21))]))]) (SimpleRhs (55,39) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "lookupTree" 0))) (Variable (QualIdent Nothing (Ident "eqLk" 21)))) (Variable (QualIdent Nothing (Ident "lt" 21)))) (Variable (QualIdent Nothing (Ident "p" 21)))) (Variable (QualIdent Nothing (Ident "t" 21)))) []))])+,(TypeSig (57,1) [(Ident "lookupTree" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]))))))+,(FunctionDecl (58,1) (Ident "lookupTree" 0) [(Equation (58,1) (FunLhs (Ident "lookupTree" 0) [(VariablePattern (Ident "_" 25)),(VariablePattern (Ident "_" 26)),(VariablePattern (Ident "_" 27)),(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (58,26) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0))) [])),(Equation (59,1) (FunLhs (Ident "lookupTree" 0) [(VariablePattern (Ident "eq" 29)),(VariablePattern (Ident "lt" 29)),(VariablePattern (Ident "p" 29)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 30)),(VariablePattern (Ident "e" 29)),(VariablePattern (Ident "l" 29)),(VariablePattern (Ident "r" 29))]))]) (GuardedRhs [(CondExpr (60,6) (Apply (Apply (Variable (QualIdent Nothing (Ident "eq" 29))) (Variable (QualIdent Nothing (Ident "p" 29)))) (Variable (QualIdent Nothing (Ident "e" 29)))) (Apply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (Variable (QualIdent Nothing (Ident "e" 29))))),(CondExpr (61,6) (Apply (Apply (Variable (QualIdent Nothing (Ident "lt" 29))) (Variable (QualIdent Nothing (Ident "p" 29)))) (Variable (QualIdent Nothing (Ident "e" 29)))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "lookupTree" 0))) (Variable (QualIdent Nothing (Ident "eq" 29)))) (Variable (QualIdent Nothing (Ident "lt" 29)))) (Variable (QualIdent Nothing (Ident "p" 29)))) (Variable (QualIdent Nothing (Ident "l" 29))))),(CondExpr (62,6) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "lookupTree" 0))) (Variable (QualIdent Nothing (Ident "eq" 29)))) (Variable (QualIdent Nothing (Ident "lt" 29)))) (Variable (QualIdent Nothing (Ident "p" 29)))) (Variable (QualIdent Nothing (Ident "r" 29)))))] []))])+,(TypeSig (65,1) [(Ident "update" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (66,1) (Ident "update" 0) [(Equation (66,1) (FunLhs (Ident "update" 0) [(VariablePattern (Ident "e" 32)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "eqIns" 32)),(VariablePattern (Ident "eqLk" 32)),(VariablePattern (Ident "lt" 32)),(VariablePattern (Ident "t" 32))]))]) (SimpleRhs (67,11) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0))) (Variable (QualIdent Nothing (Ident "eqIns" 32)))) (Variable (QualIdent Nothing (Ident "eqLk" 32)))) (Variable (QualIdent Nothing (Ident "lt" 32)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "updateTree" 0))) (Variable (QualIdent Nothing (Ident "eqIns" 32)))) (Variable (QualIdent Nothing (Ident "lt" 32)))) (Variable (QualIdent Nothing (Ident "e" 32)))) (Variable (QualIdent Nothing (Ident "t" 32)))))) []))])+,(TypeSig (69,1) [(Ident "updateTree" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]))))))+,(FunctionDecl (70,1) (Ident "updateTree" 0) [(Equation (70,1) (FunLhs (Ident "updateTree" 0) [(VariablePattern (Ident "eq" 34)),(VariablePattern (Ident "lt" 34)),(VariablePattern (Ident "e" 34)),(VariablePattern (Ident "t" 34))]) (SimpleRhs (70,24) (Let [(PatternDecl (70,28) (ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 41)),(VariablePattern (Ident "e2" 40)),(VariablePattern (Ident "l" 40)),(VariablePattern (Ident "r" 40))])) (SimpleRhs (70,50) (Apply (Variable (QualIdent Nothing (Ident "upd" 35))) (Variable (QualIdent Nothing (Ident "t" 34)))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "e2" 40)))) (Variable (QualIdent Nothing (Ident "l" 40)))) (Variable (QualIdent Nothing (Ident "r" 40))))) [(FunctionDecl (73,5) (Ident "upd" 35) [(Equation (73,5) (FunLhs (Ident "upd" 35) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (73,17) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "e" 34)))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) [])),(Equation (74,5) (FunLhs (Ident "upd" 35) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "c" 38)),(VariablePattern (Ident "e2" 38)),(VariablePattern (Ident "l" 38)),(VariablePattern (Ident "r" 38))]))]) (GuardedRhs [(CondExpr (74,25) (Apply (Apply (Variable (QualIdent Nothing (Ident "eq" 34))) (Variable (QualIdent Nothing (Ident "e" 34)))) (Variable (QualIdent Nothing (Ident "e2" 38)))) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "c" 38)))) (Variable (QualIdent Nothing (Ident "e" 34)))) (Variable (QualIdent Nothing (Ident "l" 38)))) (Variable (QualIdent Nothing (Ident "r" 38))))),(CondExpr (75,25) (Apply (Apply (Variable (QualIdent Nothing (Ident "lt" 34))) (Variable (QualIdent Nothing (Ident "e" 34)))) (Variable (QualIdent Nothing (Ident "e2" 38)))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "balanceL" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "c" 38)))) (Variable (QualIdent Nothing (Ident "e2" 38)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 35))) (Variable (QualIdent Nothing (Ident "l" 38)))))) (Variable (QualIdent Nothing (Ident "r" 38))))))),(CondExpr (76,25) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "balanceR" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "c" 38)))) (Variable (QualIdent Nothing (Ident "e2" 38)))) (Variable (QualIdent Nothing (Ident "l" 38)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "upd" 35))) (Variable (QualIdent Nothing (Ident "r" 38)))))))))] []))])]))])+,(TypeSig (79,1) [(Ident "delete" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (80,1) (Ident "delete" 0) [(Equation (80,1) (FunLhs (Ident "delete" 0) [(VariablePattern (Ident "e" 43)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "eqIns" 43)),(VariablePattern (Ident "eqLk" 43)),(VariablePattern (Ident "lt" 43)),(VariablePattern (Ident "t" 43))]))]) (SimpleRhs (81,11) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0))) (Variable (QualIdent Nothing (Ident "eqIns" 43)))) (Variable (QualIdent Nothing (Ident "eqLk" 43)))) (Variable (QualIdent Nothing (Ident "lt" 43)))) (Paren (Apply (Variable (QualIdent Nothing (Ident "blackenRoot" 44))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "deleteTree" 0))) (Variable (QualIdent Nothing (Ident "eqLk" 43)))) (Variable (QualIdent Nothing (Ident "lt" 43)))) (Variable (QualIdent Nothing (Ident "e" 43)))) (Variable (QualIdent Nothing (Ident "t" 43)))))))) [(FunctionDecl (83,5) (Ident "blackenRoot" 44) [(Equation (83,5) (FunLhs (Ident "blackenRoot" 44) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (83,25) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0))) [])),(Equation (84,5) (FunLhs (Ident "blackenRoot" 44) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 48)),(VariablePattern (Ident "x" 47)),(VariablePattern (Ident "l" 47)),(VariablePattern (Ident "r" 47))]))]) (SimpleRhs (84,34) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 47)))) (Variable (QualIdent Nothing (Ident "l" 47)))) (Variable (QualIdent Nothing (Ident "r" 47)))) []))])]))])+,(FunctionDecl (86,1) (Ident "deleteTree" 0) [(Equation (86,1) (FunLhs (Ident "deleteTree" 0) [(VariablePattern (Ident "_" 51)),(VariablePattern (Ident "_" 52)),(VariablePattern (Ident "_" 53)),(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (86,26) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0))) [])),(Equation (87,1) (FunLhs (Ident "deleteTree" 0) [(VariablePattern (Ident "eq" 55)),(VariablePattern (Ident "lt" 55)),(VariablePattern (Ident "e" 55)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "c" 55)),(VariablePattern (Ident "e2" 55)),(VariablePattern (Ident "l" 55)),(VariablePattern (Ident "r" 55))]))]) (GuardedRhs [(CondExpr (88,7) (Apply (Apply (Variable (QualIdent Nothing (Ident "eq" 55))) (Variable (QualIdent Nothing (Ident "e" 55)))) (Variable (QualIdent Nothing (Ident "e2" 55)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "l" 55))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "addColor" 56))) (Variable (QualIdent Nothing (Ident "c" 55)))) (Variable (QualIdent Nothing (Ident "r" 55)))) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "r" 55))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) (Apply (Apply (Variable (QualIdent Nothing (Ident "addColor" 56))) (Variable (QualIdent Nothing (Ident "c" 55)))) (Variable (QualIdent Nothing (Ident "l" 55)))) (Let [(PatternDecl (90,41) (VariablePattern (Ident "el" 69)) (SimpleRhs (90,46) (Apply (Variable (QualIdent Nothing (Ident "rightMost" 56))) (Variable (QualIdent Nothing (Ident "l" 55)))) []))] (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "delBalanceL" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "c" 55)))) (Variable (QualIdent Nothing (Ident "el" 69)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "deleteTree" 0))) (Variable (QualIdent Nothing (Ident "eq" 55)))) (Variable (QualIdent Nothing (Ident "lt" 55)))) (Variable (QualIdent Nothing (Ident "el" 69)))) (Variable (QualIdent Nothing (Ident "l" 55)))))) (Variable (QualIdent Nothing (Ident "r" 55)))))))))),(CondExpr (92,7) (Apply (Apply (Variable (QualIdent Nothing (Ident "lt" 55))) (Variable (QualIdent Nothing (Ident "e" 55)))) (Variable (QualIdent Nothing (Ident "e2" 55)))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "delBalanceL" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "c" 55)))) (Variable (QualIdent Nothing (Ident "e2" 55)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "deleteTree" 0))) (Variable (QualIdent Nothing (Ident "eq" 55)))) (Variable (QualIdent Nothing (Ident "lt" 55)))) (Variable (QualIdent Nothing (Ident "e" 55)))) (Variable (QualIdent Nothing (Ident "l" 55)))))) (Variable (QualIdent Nothing (Ident "r" 55))))))),(CondExpr (93,7) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "delBalanceR" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "c" 55)))) (Variable (QualIdent Nothing (Ident "e2" 55)))) (Variable (QualIdent Nothing (Ident "l" 55)))) (Paren (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "deleteTree" 0))) (Variable (QualIdent Nothing (Ident "eq" 55)))) (Variable (QualIdent Nothing (Ident "lt" 55)))) (Variable (QualIdent Nothing (Ident "e" 55)))) (Variable (QualIdent Nothing (Ident "r" 55)))))))))] [(FunctionDecl (95,5) (Ident "addColor" 56) [(Equation (95,5) (FunLhs (Ident "addColor" 56) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Red" 0)) []),(VariablePattern (Ident "tree" 57))]) (SimpleRhs (95,25) (Variable (QualIdent Nothing (Ident "tree" 57))) [])),(Equation (96,5) (FunLhs (Ident "addColor" 56) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Black" 0)) []),(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (96,28) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0))) [])),(Equation (97,5) (FunLhs (Ident "addColor" 56) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Black" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Red" 0)) []),(VariablePattern (Ident "x" 61)),(VariablePattern (Ident "lx" 61)),(VariablePattern (Ident "rx" 61))]))]) (SimpleRhs (97,43) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 61)))) (Variable (QualIdent Nothing (Ident "lx" 61)))) (Variable (QualIdent Nothing (Ident "rx" 61)))) [])),(Equation (98,5) (FunLhs (Ident "addColor" 56) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Black" 0)) []),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Black" 0)) []),(VariablePattern (Ident "x" 63)),(VariablePattern (Ident "lx" 63)),(VariablePattern (Ident "rx" 63))]))]) (SimpleRhs (98,43) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "DoublyBlack" 0)))) (Variable (QualIdent Nothing (Ident "x" 63)))) (Variable (QualIdent Nothing (Ident "lx" 63)))) (Variable (QualIdent Nothing (Ident "rx" 63)))) []))]),(FunctionDecl (100,5) (Ident "rightMost" 56) [(Equation (100,5) (FunLhs (Ident "rightMost" 56) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 66)),(VariablePattern (Ident "x" 65)),(VariablePattern (Ident "_" 67)),(VariablePattern (Ident "rx" 65))]))]) (SimpleRhs (100,33) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "rx" 65))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) (Variable (QualIdent Nothing (Ident "x" 65))) (Apply (Variable (QualIdent Nothing (Ident "rightMost" 56))) (Variable (QualIdent Nothing (Ident "rx" 65))))) []))])]))])+,(TypeSig (104,1) [(Ident "tree2list" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (105,1) (Ident "tree2list" 0) [(Equation (105,1) (FunLhs (Ident "tree2list" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "_" 72)),(VariablePattern (Ident "_" 73)),(VariablePattern (Ident "_" 74)),(VariablePattern (Ident "t" 71))]))]) (SimpleRhs (105,36) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "tree2listTree" 0))) (Variable (QualIdent Nothing (Ident "t" 71)))) []))])+,(FunctionDecl (107,1) (Ident "tree2listTree" 0) [(Equation (107,1) (FunLhs (Ident "tree2listTree" 0) [(VariablePattern (Ident "tree" 76))]) (SimpleRhs (107,22) (Apply (Apply (Variable (QualIdent Nothing (Ident "t2l" 77))) (Variable (QualIdent Nothing (Ident "tree" 76)))) (List [])) [(FunctionDecl (109,6) (Ident "t2l" 77) [(Equation (109,6) (FunLhs (Ident "t2l" 77) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) []),(VariablePattern (Ident "es" 78))]) (SimpleRhs (109,21) (Variable (QualIdent Nothing (Ident "es" 78))) [])),(Equation (110,6) (FunLhs (Ident "t2l" 77) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 81)),(VariablePattern (Ident "e" 80)),(VariablePattern (Ident "l" 80)),(VariablePattern (Ident "r" 80))])),(VariablePattern (Ident "es" 80))]) (SimpleRhs (110,30) (Apply (Apply (Variable (QualIdent Nothing (Ident "t2l" 77))) (Variable (QualIdent Nothing (Ident "l" 80)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "e" 80))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "t2l" 77))) (Variable (QualIdent Nothing (Ident "r" 80)))) (Variable (QualIdent Nothing (Ident "es" 80))))))) []))])]))])+,(TypeSig (115,1) [(Ident "sort" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (116,1) (Ident "sort" 0) [(Equation (116,1) (FunLhs (Ident "sort" 0) [(VariablePattern (Ident "cmp" 83)),(VariablePattern (Ident "xs" 83))]) (SimpleRhs (116,15) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "tree2list" 0))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "RedBlackTree") (Ident "update" 0)))) (Paren (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "empty" 0))) (Paren (Lambda [(VariablePattern (Ident "_" 86)),(VariablePattern (Ident "_" 87))] (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0)))) (Variable (QualIdent Nothing (Ident "cmp" 83)))))) (Variable (QualIdent Nothing (Ident "xs" 83)))))) []))])+,(TypeSig (119,1) [(Ident "setInsertEquivalence" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (120,1) (Ident "setInsertEquivalence" 0) [(Equation (120,1) (FunLhs (Ident "setInsertEquivalence" 0) [(VariablePattern (Ident "eqIns" 88)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "_" 89)),(VariablePattern (Ident "eqLk" 88)),(VariablePattern (Ident "lt" 88)),(VariablePattern (Ident "t" 88))]))]) (SimpleRhs (120,57) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0))) (Variable (QualIdent Nothing (Ident "eqIns" 88)))) (Variable (QualIdent Nothing (Ident "eqLk" 88)))) (Variable (QualIdent Nothing (Ident "lt" 88)))) (Variable (QualIdent Nothing (Ident "t" 88)))) []))])+,(FunctionDecl (125,1) (Ident "rbt" 0) [(Equation (125,1) (FunLhs (Ident "rbt" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "RedBlackTree" 0)) [(VariablePattern (Ident "_" 92)),(VariablePattern (Ident "_" 93)),(VariablePattern (Ident "_" 94)),(VariablePattern (Ident "t" 91))]))]) (SimpleRhs (125,30) (Variable (QualIdent Nothing (Ident "t" 91))) []))])+,(TypeSig (134,1) [(Ident "isBlack" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (135,1) (Ident "isBlack" 0) [(Equation (135,1) (FunLhs (Ident "isBlack" 0) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (135,17) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (136,1) (FunLhs (Ident "isBlack" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "c" 98)),(VariablePattern (Ident "_" 99)),(VariablePattern (Ident "_" 100)),(VariablePattern (Ident "_" 101))]))]) (SimpleRhs (136,26) (InfixApply (Variable (QualIdent Nothing (Ident "c" 98))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) []))])+,(TypeSig (138,1) [(Ident "isRed" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (139,1) (Ident "isRed" 0) [(Equation (139,1) (FunLhs (Ident "isRed" 0) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (139,15) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (140,1) (FunLhs (Ident "isRed" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "c" 105)),(VariablePattern (Ident "_" 106)),(VariablePattern (Ident "_" 107)),(VariablePattern (Ident "_" 108))]))]) (SimpleRhs (140,24) (InfixApply (Variable (QualIdent Nothing (Ident "c" 105))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) []))])+,(TypeSig (142,1) [(Ident "isDoublyBlack" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (143,1) (Ident "isDoublyBlack" 0) [(Equation (143,1) (FunLhs (Ident "isDoublyBlack" 0) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (143,23) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (144,1) (FunLhs (Ident "isDoublyBlack" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "c" 112)),(VariablePattern (Ident "_" 113)),(VariablePattern (Ident "_" 114)),(VariablePattern (Ident "_" 115))]))]) (SimpleRhs (144,32) (InfixApply (Variable (QualIdent Nothing (Ident "c" 112))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "DoublyBlack" 0)))) []))])+,(TypeSig (146,1) [(Ident "element" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (147,1) (Ident "element" 0) [(Equation (147,1) (FunLhs (Ident "element" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 118)),(VariablePattern (Ident "e" 117)),(VariablePattern (Ident "_" 119)),(VariablePattern (Ident "_" 120))]))]) (SimpleRhs (147,26) (Variable (QualIdent Nothing (Ident "e" 117))) []))])+,(TypeSig (149,1) [(Ident "left" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (150,1) (Ident "left" 0) [(Equation (150,1) (FunLhs (Ident "left" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 123)),(VariablePattern (Ident "_" 124)),(VariablePattern (Ident "l" 122)),(VariablePattern (Ident "_" 125))]))]) (SimpleRhs (150,23) (Variable (QualIdent Nothing (Ident "l" 122))) []))])+,(TypeSig (152,1) [(Ident "right" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (153,1) (Ident "right" 0) [(Equation (153,1) (FunLhs (Ident "right" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 128)),(VariablePattern (Ident "_" 129)),(VariablePattern (Ident "_" 130)),(VariablePattern (Ident "r" 127))]))]) (SimpleRhs (153,24) (Variable (QualIdent Nothing (Ident "r" 127))) []))])+,(FunctionDecl (155,1) (Ident "singleBlack" 0) [(Equation (155,1) (FunLhs (Ident "singleBlack" 0) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)) [])]) (SimpleRhs (155,21) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0))) [])),(Equation (156,1) (FunLhs (Ident "singleBlack" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "DoublyBlack" 0)) []),(VariablePattern (Ident "x" 134)),(VariablePattern (Ident "l" 134)),(VariablePattern (Ident "r" 134))]))]) (SimpleRhs (156,40) (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 134)))) (Variable (QualIdent Nothing (Ident "l" 134)))) (Variable (QualIdent Nothing (Ident "r" 134)))) []))])+,(TypeSig (160,1) [(Ident "balanceL" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (161,1) (Ident "balanceL" 0) [(Equation (161,1) (FunLhs (Ident "balanceL" 0) [(VariablePattern (Ident "tree" 136))]) (GuardedRhs [(CondExpr (162,3) (InfixApply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Variable (QualIdent Nothing (Ident "leftTree" 137)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "leftTree" 137))))))) (Let [(PatternDecl (163,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 140)),(VariablePattern (Ident "z" 139)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 141)),(VariablePattern (Ident "y" 139)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 142)),(VariablePattern (Ident "x" 139)),(VariablePattern (Ident "a" 139)),(VariablePattern (Ident "b" 139))])),(VariablePattern (Ident "c" 139))])),(VariablePattern (Ident "d" 139))]) (SimpleRhs (163,50) (Variable (QualIdent Nothing (Ident "tree" 136))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "y" 139)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 139)))) (Variable (QualIdent Nothing (Ident "a" 139)))) (Variable (QualIdent Nothing (Ident "b" 139)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 139)))) (Variable (QualIdent Nothing (Ident "c" 139)))) (Variable (QualIdent Nothing (Ident "d" 139)))))))),(CondExpr (166,3) (InfixApply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Variable (QualIdent Nothing (Ident "leftTree" 137)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "leftTree" 137))))))) (Let [(PatternDecl (167,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 145)),(VariablePattern (Ident "z" 144)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 146)),(VariablePattern (Ident "x" 144)),(VariablePattern (Ident "a" 144)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 147)),(VariablePattern (Ident "y" 144)),(VariablePattern (Ident "b" 144)),(VariablePattern (Ident "c" 144))]))])),(VariablePattern (Ident "d" 144))]) (SimpleRhs (167,50) (Variable (QualIdent Nothing (Ident "tree" 136))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "y" 144)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 144)))) (Variable (QualIdent Nothing (Ident "a" 144)))) (Variable (QualIdent Nothing (Ident "b" 144)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 144)))) (Variable (QualIdent Nothing (Ident "c" 144)))) (Variable (QualIdent Nothing (Ident "d" 144)))))))),(CondExpr (170,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Variable (QualIdent Nothing (Ident "tree" 136))))] [(PatternDecl (173,5) (VariablePattern (Ident "leftTree" 137)) (SimpleRhs (173,16) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "tree" 136)))) []))]))])+,(TypeSig (175,1) [(Ident "balanceR" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (176,1) (Ident "balanceR" 0) [(Equation (176,1) (FunLhs (Ident "balanceR" 0) [(VariablePattern (Ident "tree" 149))]) (GuardedRhs [(CondExpr (177,3) (InfixApply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Variable (QualIdent Nothing (Ident "rightTree" 150)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "rightTree" 150))))))) (Let [(PatternDecl (178,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 153)),(VariablePattern (Ident "x" 152)),(VariablePattern (Ident "a" 152)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 154)),(VariablePattern (Ident "y" 152)),(VariablePattern (Ident "b" 152)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 155)),(VariablePattern (Ident "z" 152)),(VariablePattern (Ident "c" 152)),(VariablePattern (Ident "d" 152))]))]))]) (SimpleRhs (178,50) (Variable (QualIdent Nothing (Ident "tree" 149))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "y" 152)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 152)))) (Variable (QualIdent Nothing (Ident "a" 152)))) (Variable (QualIdent Nothing (Ident "b" 152)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 152)))) (Variable (QualIdent Nothing (Ident "c" 152)))) (Variable (QualIdent Nothing (Ident "d" 152)))))))),(CondExpr (181,3) (InfixApply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Variable (QualIdent Nothing (Ident "rightTree" 150)))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "rightTree" 150))))))) (Let [(PatternDecl (182,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 158)),(VariablePattern (Ident "x" 157)),(VariablePattern (Ident "a" 157)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 159)),(VariablePattern (Ident "z" 157)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 160)),(VariablePattern (Ident "y" 157)),(VariablePattern (Ident "b" 157)),(VariablePattern (Ident "c" 157))])),(VariablePattern (Ident "d" 157))]))]) (SimpleRhs (182,50) (Variable (QualIdent Nothing (Ident "tree" 149))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "y" 157)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 157)))) (Variable (QualIdent Nothing (Ident "a" 157)))) (Variable (QualIdent Nothing (Ident "b" 157)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 157)))) (Variable (QualIdent Nothing (Ident "c" 157)))) (Variable (QualIdent Nothing (Ident "d" 157)))))))),(CondExpr (185,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Variable (QualIdent Nothing (Ident "tree" 149))))] [(PatternDecl (188,5) (VariablePattern (Ident "rightTree" 150)) (SimpleRhs (188,17) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "tree" 149)))) []))]))])+,(TypeSig (193,1) [(Ident "delBalanceL" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (194,1) (Ident "delBalanceL" 0) [(Equation (194,1) (FunLhs (Ident "delBalanceL" 0) [(VariablePattern (Ident "tree" 162))]) (SimpleRhs (194,20) (IfThenElse (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isDoublyBlack" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "tree" 162)))))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "reviseLeft" 0))) (Variable (QualIdent Nothing (Ident "tree" 162)))) (Variable (QualIdent Nothing (Ident "tree" 162)))) []))])+,(FunctionDecl (196,1) (Ident "reviseLeft" 0) [(Equation (196,1) (FunLhs (Ident "reviseLeft" 0) [(VariablePattern (Ident "tree" 164))]) (GuardedRhs [(CondExpr (197,3) (InfixApply (Variable (QualIdent Nothing (Ident "r" 165))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) (Variable (QualIdent Nothing (Ident "tree" 164)))),(CondExpr (198,3) (InfixApply (Variable (QualIdent Nothing (Ident "blackr" 165))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "r" 165))))))) (Let [(PatternDecl (199,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "col" 168)),(VariablePattern (Ident "x" 168)),(VariablePattern (Ident "a" 168)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 169)),(VariablePattern (Ident "z" 168)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 170)),(VariablePattern (Ident "y" 168)),(VariablePattern (Ident "b" 168)),(VariablePattern (Ident "c" 168))])),(VariablePattern (Ident "d" 168))]))]) (SimpleRhs (199,52) (Variable (QualIdent Nothing (Ident "tree" 164))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "col" 168)))) (Variable (QualIdent Nothing (Ident "y" 168)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 168)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "singleBlack" 0))) (Variable (QualIdent Nothing (Ident "a" 168)))))) (Variable (QualIdent Nothing (Ident "b" 168)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 168)))) (Variable (QualIdent Nothing (Ident "c" 168)))) (Variable (QualIdent Nothing (Ident "d" 168)))))))),(CondExpr (201,3) (InfixApply (Variable (QualIdent Nothing (Ident "blackr" 165))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "r" 165))))))) (Let [(PatternDecl (202,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "col" 172)),(VariablePattern (Ident "x" 172)),(VariablePattern (Ident "a" 172)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 173)),(VariablePattern (Ident "y" 172)),(VariablePattern (Ident "b" 172)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 174)),(VariablePattern (Ident "z" 172)),(VariablePattern (Ident "c" 172)),(VariablePattern (Ident "d" 172))]))]))]) (SimpleRhs (202,52) (Variable (QualIdent Nothing (Ident "tree" 164))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "col" 172)))) (Variable (QualIdent Nothing (Ident "y" 172)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 172)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "singleBlack" 0))) (Variable (QualIdent Nothing (Ident "a" 172)))))) (Variable (QualIdent Nothing (Ident "b" 172)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 172)))) (Variable (QualIdent Nothing (Ident "c" 172)))) (Variable (QualIdent Nothing (Ident "d" 172)))))))),(CondExpr (204,3) (Variable (QualIdent Nothing (Ident "blackr" 165))) (Let [(PatternDecl (205,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "col" 176)),(VariablePattern (Ident "x" 176)),(VariablePattern (Ident "a" 176)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 177)),(VariablePattern (Ident "y" 176)),(VariablePattern (Ident "b" 176)),(VariablePattern (Ident "c" 176))]))]) (SimpleRhs (205,39) (Variable (QualIdent Nothing (Ident "tree" 164))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "col" 176))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "DoublyBlack" 0)))))) (Variable (QualIdent Nothing (Ident "x" 176)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "singleBlack" 0))) (Variable (QualIdent Nothing (Ident "a" 176)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "y" 176)))) (Variable (QualIdent Nothing (Ident "b" 176)))) (Variable (QualIdent Nothing (Ident "c" 176)))))))),(CondExpr (207,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Let [(PatternDecl (208,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 180)),(VariablePattern (Ident "x" 179)),(VariablePattern (Ident "a" 179)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 181)),(VariablePattern (Ident "y" 179)),(VariablePattern (Ident "b" 179)),(VariablePattern (Ident "c" 179))]))]) (SimpleRhs (208,37) (Variable (QualIdent Nothing (Ident "tree" 164))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "y" 179)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "reviseLeft" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "x" 179)))) (Variable (QualIdent Nothing (Ident "a" 179)))) (Variable (QualIdent Nothing (Ident "b" 179)))))))) (Variable (QualIdent Nothing (Ident "c" 179))))))] [(PatternDecl (211,5) (VariablePattern (Ident "r" 165)) (SimpleRhs (211,9) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "tree" 164)))) [])),(PatternDecl (212,5) (VariablePattern (Ident "blackr" 165)) (SimpleRhs (212,14) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isBlack" 0))) (Variable (QualIdent Nothing (Ident "r" 165)))) []))]))])+,(TypeSig (214,1) [(Ident "delBalanceR" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Tree" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (215,1) (Ident "delBalanceR" 0) [(Equation (215,1) (FunLhs (Ident "delBalanceR" 0) [(VariablePattern (Ident "tree" 183))]) (SimpleRhs (215,20) (IfThenElse (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isDoublyBlack" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "tree" 183)))))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "reviseRight" 0))) (Variable (QualIdent Nothing (Ident "tree" 183)))) (Variable (QualIdent Nothing (Ident "tree" 183)))) []))])+,(FunctionDecl (217,1) (Ident "reviseRight" 0) [(Equation (217,1) (FunLhs (Ident "reviseRight" 0) [(VariablePattern (Ident "tree" 185))]) (GuardedRhs [(CondExpr (218,3) (InfixApply (Variable (QualIdent Nothing (Ident "l" 186))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Empty" 0)))) (Variable (QualIdent Nothing (Ident "tree" 185)))),(CondExpr (219,3) (InfixApply (Variable (QualIdent Nothing (Ident "blackl" 186))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "l" 186))))))) (Let [(PatternDecl (220,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "col" 189)),(VariablePattern (Ident "x" 189)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 190)),(VariablePattern (Ident "y" 189)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 191)),(VariablePattern (Ident "z" 189)),(VariablePattern (Ident "d" 189)),(VariablePattern (Ident "c" 189))])),(VariablePattern (Ident "b" 189))])),(VariablePattern (Ident "a" 189))]) (SimpleRhs (220,52) (Variable (QualIdent Nothing (Ident "tree" 185))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "col" 189)))) (Variable (QualIdent Nothing (Ident "y" 189)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 189)))) (Variable (QualIdent Nothing (Ident "d" 189)))) (Variable (QualIdent Nothing (Ident "c" 189)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 189)))) (Variable (QualIdent Nothing (Ident "b" 189)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "singleBlack" 0))) (Variable (QualIdent Nothing (Ident "a" 189)))))))))),(CondExpr (222,3) (InfixApply (Variable (QualIdent Nothing (Ident "blackl" 186))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isRed" 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "right" 0))) (Variable (QualIdent Nothing (Ident "l" 186))))))) (Let [(PatternDecl (223,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "col" 193)),(VariablePattern (Ident "x" 193)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 194)),(VariablePattern (Ident "z" 193)),(VariablePattern (Ident "d" 193)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 195)),(VariablePattern (Ident "y" 193)),(VariablePattern (Ident "c" 193)),(VariablePattern (Ident "b" 193))]))])),(VariablePattern (Ident "a" 193))]) (SimpleRhs (223,52) (Variable (QualIdent Nothing (Ident "tree" 185))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Variable (QualIdent Nothing (Ident "col" 193)))) (Variable (QualIdent Nothing (Ident "y" 193)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "z" 193)))) (Variable (QualIdent Nothing (Ident "d" 193)))) (Variable (QualIdent Nothing (Ident "c" 193)))))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "x" 193)))) (Variable (QualIdent Nothing (Ident "b" 193)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "singleBlack" 0))) (Variable (QualIdent Nothing (Ident "a" 193)))))))))),(CondExpr (225,3) (Variable (QualIdent Nothing (Ident "blackl" 186))) (Let [(PatternDecl (226,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "col" 197)),(VariablePattern (Ident "x" 197)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 198)),(VariablePattern (Ident "y" 197)),(VariablePattern (Ident "c" 197)),(VariablePattern (Ident "b" 197))])),(VariablePattern (Ident "a" 197))]) (SimpleRhs (226,39) (Variable (QualIdent Nothing (Ident "tree" 185))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Paren (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "col" 197))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "DoublyBlack" 0)))))) (Variable (QualIdent Nothing (Ident "x" 197)))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "y" 197)))) (Variable (QualIdent Nothing (Ident "c" 197)))) (Variable (QualIdent Nothing (Ident "b" 197)))))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "singleBlack" 0))) (Variable (QualIdent Nothing (Ident "a" 197)))))))),(CondExpr (228,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Let [(PatternDecl (229,9) (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 201)),(VariablePattern (Ident "x" 200)),(ParenPattern (ConstructorPattern (QualIdent (Just "RedBlackTree") (Ident "Tree" 0)) [(VariablePattern (Ident "_" 202)),(VariablePattern (Ident "y" 200)),(VariablePattern (Ident "c" 200)),(VariablePattern (Ident "b" 200))])),(VariablePattern (Ident "a" 200))]) (SimpleRhs (229,37) (Variable (QualIdent Nothing (Ident "tree" 185))) []))] (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Black" 0)))) (Variable (QualIdent Nothing (Ident "y" 200)))) (Variable (QualIdent Nothing (Ident "c" 200)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "reviseRight" 0))) (Paren (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "RedBlackTree") (Ident "Tree" 0))) (Constructor (QualIdent (Just "RedBlackTree") (Ident "Red" 0)))) (Variable (QualIdent Nothing (Ident "x" 200)))) (Variable (QualIdent Nothing (Ident "b" 200)))) (Variable (QualIdent Nothing (Ident "a" 200))))))))))] [(PatternDecl (232,5) (VariablePattern (Ident "l" 186)) (SimpleRhs (232,9) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "left" 0))) (Variable (QualIdent Nothing (Ident "tree" 185)))) [])),(PatternDecl (233,5) (VariablePattern (Ident "blackl" 186)) (SimpleRhs (233,14) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "isBlack" 0))) (Variable (QualIdent Nothing (Ident "l" 186)))) []))]))])+]
+ src/lib/Curry/Module/.curry/RedBlackTree.efc view
@@ -0,0 +1,1 @@+Prog "RedBlackTree" ["Prelude"] [Type ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) Public [0] [Cons ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) 4 Private [FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])),FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])),FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])),TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]]],Type ((Nothing,Nothing,"RedBlackTree","Color")) Private [] [Cons ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) 0 Private [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) 0 Private [],Cons ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","DoublyBlack")) 0 Private []],Type ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) Private [0] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) 4 Private [TCons ((Nothing,Nothing,"RedBlackTree","Color")) [],TVar 0,TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0],TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]],Cons ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) 0 Private []]] [Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"RedBlackTree","empty")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)] (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isEmpty")) 1 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 0),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])),"RedBlackTree","newTreeLike")) 1 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))),"RedBlackTree","lookup")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))))),"RedBlackTree","lookupTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))))),"RedBlackTree","lookupTree")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","Nothing")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5),(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),"Prelude","Just")) [Var ((Just (TVar 0),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))))),"RedBlackTree","lookupTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))))),"RedBlackTree","lookupTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","update")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","updateTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","updateTree")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4)] (Let [((Just (TVar 184),5),Comb FuncCall ((Nothing,Just (FuncType (TVar 185) (FuncType (FuncType (TVar 185) (FuncType (TVar 185) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 185) (FuncType (TVar 185) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 185]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 185]))))),"RedBlackTree","updateTree.upd.35")) [Var ((Just (TVar 0),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4))])] (Let [((Just (TVar 0),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 186]) (TVar 186)),"RedBlackTree","updateTree._#selFP3#e2")) [Var ((Just (TVar 184),5))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 187]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 187])),"RedBlackTree","updateTree._#selFP4#l")) [Var ((Just (TVar 184),5))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 188]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 188])),"RedBlackTree","updateTree._#selFP5#r")) [Var ((Just (TVar 184),5))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),6)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))])))))),Func ((Nothing,Just (FuncType (TVar 183) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","updateTree.upd.35")) 4 Private (FuncType (TVar 183) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183]))))) (Rule [(Just (TVar 183),1),(Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 183),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),"RedBlackTree","Empty")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),"RedBlackTree","Empty")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5),(Just (TVar 183),6),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 183),1))],Var ((Just (TVar 183),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 183),1)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),7)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TVar 183),1))],Var ((Just (TVar 183),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183])),"RedBlackTree","balanceL")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 183),6)),Comb FuncCall ((Nothing,Just (FuncType (TVar 183) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","updateTree.upd.35")) [Var ((Just (TVar 183),1)),Var ((Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),7))],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183])),"RedBlackTree","balanceR")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 183),6)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),7)),Comb FuncCall ((Nothing,Just (FuncType (TVar 183) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","updateTree.upd.35")) [Var ((Just (TVar 183),1)),Var ((Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (FuncType (TVar 183) (FuncType (TVar 183) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),8))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TVar 183)),"RedBlackTree","updateTree._#selFP3#e2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183]) (TVar 183)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 183),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),5)]) (Var ((Just (TVar 183),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183])),"RedBlackTree","updateTree._#selFP4#l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 183),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),5)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183])),"RedBlackTree","updateTree._#selFP5#r")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 183])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 183) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 183),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),5)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 183]),5)))])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","delete")) 2 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [(Just (TVar 0),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delete.blackenRoot.44")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","deleteTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Var ((Just (TVar 0),1)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6))]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delete.blackenRoot.44")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5))])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","deleteTree")) 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]))))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5),(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))),"RedBlackTree","deleteTree.addColor.56")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))),"RedBlackTree","deleteTree.addColor.56")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 0),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 421]) (TVar 421)),"RedBlackTree","deleteTree.rightMost.56")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delBalanceL")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 0),9)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","deleteTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),9)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))]]))])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),3))],Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delBalanceL")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 0),6)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","deleteTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delBalanceR")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 0),6)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","deleteTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2)),Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))),"RedBlackTree","deleteTree.addColor.56")) 2 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Color")) []) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),3),(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","DoublyBlack")) [],Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6))])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TVar 0)),"RedBlackTree","deleteTree.rightMost.56")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),3))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TVar 0)),"RedBlackTree","deleteTree.rightMost.56")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"RedBlackTree","tree2list")) 1 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"RedBlackTree","tree2listTree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"RedBlackTree","tree2listTree")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"RedBlackTree","tree2listTree.t2l.77")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"RedBlackTree","tree2listTree.t2l.77")) 2 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),3),(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"RedBlackTree","tree2listTree.t2l.77")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"RedBlackTree","tree2listTree.t2l.77")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"RedBlackTree","sort")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"RedBlackTree","tree2list")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"Prelude","foldr")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","update")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"RedBlackTree","empty")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"RedBlackTree","sort._#lambda2")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])),Func ((Nothing,Just (FuncType (TVar 520) (FuncType (TVar 520) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"RedBlackTree","sort._#lambda2")) 2 Private (FuncType (TVar 520) (FuncType (TVar 520) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 520),1),(Just (TVar 520),2)] (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","setInsertEquivalence")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),5)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),6))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","rbt")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))))),"RedBlackTree","RedBlackTree")) [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),2),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),3),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isBlack")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isDoublyBlack")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","DoublyBlack")) []])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TVar 0)),"RedBlackTree","element")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Var ((Just (TVar 0),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","left")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","right")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","DoublyBlack")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),4)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","balanceL")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 91]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 91])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 89),3),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TVar 0),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 95]) (TVar 95)),"RedBlackTree","balanceL._#selFP7#z")) [Var ((Just (TVar 89),3))])] (Let [((Just (TVar 0),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 96]) (TVar 96)),"RedBlackTree","balanceL._#selFP8#y")) [Var ((Just (TVar 89),3))])] (Let [((Just (TVar 0),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 97]) (TVar 97)),"RedBlackTree","balanceL._#selFP9#x")) [Var ((Just (TVar 89),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 98]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 98])),"RedBlackTree","balanceL._#selFP10#a")) [Var ((Just (TVar 89),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 99]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 99])),"RedBlackTree","balanceL._#selFP11#b")) [Var ((Just (TVar 89),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 100]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 100])),"RedBlackTree","balanceL._#selFP12#c")) [Var ((Just (TVar 89),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 101]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 101])),"RedBlackTree","balanceL._#selFP13#d")) [Var ((Just (TVar 89),3))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),5)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),6)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),8))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10))]]))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 90),11),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TVar 0),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 108]) (TVar 108)),"RedBlackTree","balanceL._#selFP15#z")) [Var ((Just (TVar 90),11))])] (Let [((Just (TVar 0),13),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 109]) (TVar 109)),"RedBlackTree","balanceL._#selFP16#x")) [Var ((Just (TVar 90),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),14),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 110]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 110])),"RedBlackTree","balanceL._#selFP17#a")) [Var ((Just (TVar 90),11))])] (Let [((Just (TVar 0),15),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 111]) (TVar 111)),"RedBlackTree","balanceL._#selFP18#y")) [Var ((Just (TVar 90),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),16),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 112]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 112])),"RedBlackTree","balanceL._#selFP19#b")) [Var ((Just (TVar 90),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),17),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 113]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 113])),"RedBlackTree","balanceL._#selFP20#c")) [Var ((Just (TVar 90),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),18),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 114]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 114])),"RedBlackTree","balanceL._#selFP21#d")) [Var ((Just (TVar 90),11))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),15)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),13)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),14)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),16))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),12)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),17)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),18))]]))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"Prelude","failed")) [])])])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TVar 88)),"RedBlackTree","balanceL._#selFP7#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TVar 88)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TVar 88),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TVar 88)),"RedBlackTree","balanceL._#selFP8#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TVar 88)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TVar 88),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TVar 88)),"RedBlackTree","balanceL._#selFP9#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TVar 88)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TVar 88),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP10#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP11#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP12#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP13#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TVar 88)),"RedBlackTree","balanceL._#selFP15#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TVar 88)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TVar 88),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TVar 88)),"RedBlackTree","balanceL._#selFP16#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TVar 88)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TVar 88),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP17#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TVar 88)),"RedBlackTree","balanceL._#selFP18#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TVar 88)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TVar 88),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP19#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP20#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88])),"RedBlackTree","balanceL._#selFP21#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 88])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 88),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 88),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 88),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 88]),5)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","balanceR")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 134]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 134])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 132),3),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TVar 0),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 138]) (TVar 138)),"RedBlackTree","balanceR._#selFP23#x")) [Var ((Just (TVar 132),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 139]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 139])),"RedBlackTree","balanceR._#selFP24#a")) [Var ((Just (TVar 132),3))])] (Let [((Just (TVar 0),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 140]) (TVar 140)),"RedBlackTree","balanceR._#selFP25#y")) [Var ((Just (TVar 132),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 141]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 141])),"RedBlackTree","balanceR._#selFP26#b")) [Var ((Just (TVar 132),3))])] (Let [((Just (TVar 0),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 142]) (TVar 142)),"RedBlackTree","balanceR._#selFP27#z")) [Var ((Just (TVar 132),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 143]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 143])),"RedBlackTree","balanceR._#selFP28#c")) [Var ((Just (TVar 132),3))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 144]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 144])),"RedBlackTree","balanceR._#selFP29#d")) [Var ((Just (TVar 132),3))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),6)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),8)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10))]]))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 133),11),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TVar 0),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 151]) (TVar 151)),"RedBlackTree","balanceR._#selFP31#x")) [Var ((Just (TVar 133),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),13),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 152]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 152])),"RedBlackTree","balanceR._#selFP32#a")) [Var ((Just (TVar 133),11))])] (Let [((Just (TVar 0),14),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 153]) (TVar 153)),"RedBlackTree","balanceR._#selFP33#z")) [Var ((Just (TVar 133),11))])] (Let [((Just (TVar 0),15),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 154]) (TVar 154)),"RedBlackTree","balanceR._#selFP34#y")) [Var ((Just (TVar 133),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),16),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 155]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 155])),"RedBlackTree","balanceR._#selFP35#b")) [Var ((Just (TVar 133),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),17),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 156]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 156])),"RedBlackTree","balanceR._#selFP36#c")) [Var ((Just (TVar 133),11))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),18),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 157]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 157])),"RedBlackTree","balanceR._#selFP37#d")) [Var ((Just (TVar 133),11))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),15)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),12)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),13)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),16))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),14)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),17)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),18))]]))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"Prelude","failed")) [])])])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TVar 131)),"RedBlackTree","balanceR._#selFP23#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TVar 131)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TVar 131),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP24#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TVar 131)),"RedBlackTree","balanceR._#selFP25#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TVar 131)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TVar 131),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP26#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TVar 131)),"RedBlackTree","balanceR._#selFP27#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TVar 131)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TVar 131),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP28#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP29#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TVar 131)),"RedBlackTree","balanceR._#selFP31#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TVar 131)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TVar 131),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP32#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TVar 131)),"RedBlackTree","balanceR._#selFP33#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TVar 131)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TVar 131),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TVar 131)),"RedBlackTree","balanceR._#selFP34#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TVar 131)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TVar 131),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP35#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP36#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131])),"RedBlackTree","balanceR._#selFP37#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 131])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 131),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 131),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 131) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 131),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 131]),9)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delBalanceL")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isDoublyBlack")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","reviseLeft")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","reviseLeft")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 254]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 254])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 255]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 250),4),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 260]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseLeft._#selFP39#col")) [Var ((Just (TVar 250),4))])] (Let [((Just (TVar 0),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 261]) (TVar 261)),"RedBlackTree","reviseLeft._#selFP40#x")) [Var ((Just (TVar 250),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 262]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 262])),"RedBlackTree","reviseLeft._#selFP41#a")) [Var ((Just (TVar 250),4))])] (Let [((Just (TVar 0),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 263]) (TVar 263)),"RedBlackTree","reviseLeft._#selFP42#z")) [Var ((Just (TVar 250),4))])] (Let [((Just (TVar 0),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 264]) (TVar 264)),"RedBlackTree","reviseLeft._#selFP43#y")) [Var ((Just (TVar 250),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 265]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 265])),"RedBlackTree","reviseLeft._#selFP44#b")) [Var ((Just (TVar 250),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 266]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 266])),"RedBlackTree","reviseLeft._#selFP45#c")) [Var ((Just (TVar 250),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 267]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 267])),"RedBlackTree","reviseLeft._#selFP46#d")) [Var ((Just (TVar 250),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 0),9)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),6)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),7))],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),8)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),11)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),12))]])))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 251),13),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),14),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 274]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseLeft._#selFP48#col")) [Var ((Just (TVar 251),13))])] (Let [((Just (TVar 0),15),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 275]) (TVar 275)),"RedBlackTree","reviseLeft._#selFP49#x")) [Var ((Just (TVar 251),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),16),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 276]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 276])),"RedBlackTree","reviseLeft._#selFP50#a")) [Var ((Just (TVar 251),13))])] (Let [((Just (TVar 0),17),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 277]) (TVar 277)),"RedBlackTree","reviseLeft._#selFP51#y")) [Var ((Just (TVar 251),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),18),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 278]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 278])),"RedBlackTree","reviseLeft._#selFP52#b")) [Var ((Just (TVar 251),13))])] (Let [((Just (TVar 0),19),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 279]) (TVar 279)),"RedBlackTree","reviseLeft._#selFP53#z")) [Var ((Just (TVar 251),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),20),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 280]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 280])),"RedBlackTree","reviseLeft._#selFP54#c")) [Var ((Just (TVar 251),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),21),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 281]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 281])),"RedBlackTree","reviseLeft._#selFP55#d")) [Var ((Just (TVar 251),13))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),14)),Var ((Just (TVar 0),17)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),15)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),16))],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),18))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),19)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),20)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),21))]])))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 252),22),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),23),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 286]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseLeft._#selFP57#col")) [Var ((Just (TVar 252),22))])] (Let [((Just (TVar 0),24),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 287]) (TVar 287)),"RedBlackTree","reviseLeft._#selFP58#x")) [Var ((Just (TVar 252),22))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),25),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 288]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 288])),"RedBlackTree","reviseLeft._#selFP59#a")) [Var ((Just (TVar 252),22))])] (Let [((Just (TVar 0),26),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 289]) (TVar 289)),"RedBlackTree","reviseLeft._#selFP60#y")) [Var ((Just (TVar 252),22))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),27),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 290]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 290])),"RedBlackTree","reviseLeft._#selFP61#b")) [Var ((Just (TVar 252),22))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),28),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 291]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 291])),"RedBlackTree","reviseLeft._#selFP62#c")) [Var ((Just (TVar 252),22))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),23)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","DoublyBlack")) [])],Var ((Just (TVar 0),24)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),25))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),26)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),27)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),28))]])))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 253),29),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TVar 0),30),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 296]) (TVar 296)),"RedBlackTree","reviseLeft._#selFP64#x")) [Var ((Just (TVar 253),29))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),31),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 297]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 297])),"RedBlackTree","reviseLeft._#selFP65#a")) [Var ((Just (TVar 253),29))])] (Let [((Just (TVar 0),32),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 298]) (TVar 298)),"RedBlackTree","reviseLeft._#selFP66#y")) [Var ((Just (TVar 253),29))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),33),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 299]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 299])),"RedBlackTree","reviseLeft._#selFP67#b")) [Var ((Just (TVar 253),29))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),34),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 300]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 300])),"RedBlackTree","reviseLeft._#selFP68#c")) [Var ((Just (TVar 253),29))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),32)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","reviseLeft")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),30)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),31)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),33))]],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),34))]))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"Prelude","failed")) [])])])])])])))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseLeft._#selFP39#col")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Color")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP40#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TVar 249),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP41#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP42#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TVar 249),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP43#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TVar 249),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP44#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP45#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP46#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseLeft._#selFP48#col")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Color")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP49#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TVar 249),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP50#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP51#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TVar 249),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP52#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP53#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TVar 249),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP54#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP55#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 249),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseLeft._#selFP57#col")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Color")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP58#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TVar 249),3)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP59#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP60#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TVar 249),7)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP61#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP62#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP64#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TVar 249),3)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP65#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TVar 249)),"RedBlackTree","reviseLeft._#selFP66#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TVar 249)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TVar 249),7)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP67#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249])),"RedBlackTree","reviseLeft._#selFP68#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 249])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 249),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 249) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 249),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 249]),9)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","delBalanceR")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isDoublyBlack")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","reviseRight")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","reviseRight")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 332]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 332])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 333]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"RedBlackTree","Empty")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","left")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 328),4),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 338]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseRight._#selFP70#col")) [Var ((Just (TVar 328),4))])] (Let [((Just (TVar 0),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 339]) (TVar 339)),"RedBlackTree","reviseRight._#selFP71#x")) [Var ((Just (TVar 328),4))])] (Let [((Just (TVar 0),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 340]) (TVar 340)),"RedBlackTree","reviseRight._#selFP72#y")) [Var ((Just (TVar 328),4))])] (Let [((Just (TVar 0),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 341]) (TVar 341)),"RedBlackTree","reviseRight._#selFP73#z")) [Var ((Just (TVar 328),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 342]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 342])),"RedBlackTree","reviseRight._#selFP74#d")) [Var ((Just (TVar 328),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 343]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 343])),"RedBlackTree","reviseRight._#selFP75#c")) [Var ((Just (TVar 328),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 344]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 344])),"RedBlackTree","reviseRight._#selFP76#b")) [Var ((Just (TVar 328),4))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),12),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 345]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 345])),"RedBlackTree","reviseRight._#selFP77#a")) [Var ((Just (TVar 328),4))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),5)),Var ((Just (TVar 0),7)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),8)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),9)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),10))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),6)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),11)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),12))]]])))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isRed")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","right")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),2))]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 329),13),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),14),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 352]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseRight._#selFP79#col")) [Var ((Just (TVar 329),13))])] (Let [((Just (TVar 0),15),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 353]) (TVar 353)),"RedBlackTree","reviseRight._#selFP80#x")) [Var ((Just (TVar 329),13))])] (Let [((Just (TVar 0),16),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 354]) (TVar 354)),"RedBlackTree","reviseRight._#selFP81#z")) [Var ((Just (TVar 329),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),17),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 355]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 355])),"RedBlackTree","reviseRight._#selFP82#d")) [Var ((Just (TVar 329),13))])] (Let [((Just (TVar 0),18),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 356]) (TVar 356)),"RedBlackTree","reviseRight._#selFP83#y")) [Var ((Just (TVar 329),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),19),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 357]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 357])),"RedBlackTree","reviseRight._#selFP84#c")) [Var ((Just (TVar 329),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),20),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 358]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 358])),"RedBlackTree","reviseRight._#selFP85#b")) [Var ((Just (TVar 329),13))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),21),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 359]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 359])),"RedBlackTree","reviseRight._#selFP86#a")) [Var ((Just (TVar 329),13))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),14)),Var ((Just (TVar 0),18)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),16)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),17)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),19))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),15)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),20)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),21))]]])))))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","Bool") []),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 330),22),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),23),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 364]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseRight._#selFP88#col")) [Var ((Just (TVar 330),22))])] (Let [((Just (TVar 0),24),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 365]) (TVar 365)),"RedBlackTree","reviseRight._#selFP89#x")) [Var ((Just (TVar 330),22))])] (Let [((Just (TVar 0),25),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 366]) (TVar 366)),"RedBlackTree","reviseRight._#selFP90#y")) [Var ((Just (TVar 330),22))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),26),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 367]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 367])),"RedBlackTree","reviseRight._#selFP91#c")) [Var ((Just (TVar 330),22))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),27),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 368]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 368])),"RedBlackTree","reviseRight._#selFP92#b")) [Var ((Just (TVar 330),22))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),28),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 369]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 369])),"RedBlackTree","reviseRight._#selFP93#a")) [Var ((Just (TVar 330),22))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),23)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","DoublyBlack")) [])],Var ((Just (TVar 0),24)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),25)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),26)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),27))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","singleBlack")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),28))]])))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Let [((Just (TVar 331),29),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),1)))] (Let [((Just (TVar 0),30),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 374]) (TVar 374)),"RedBlackTree","reviseRight._#selFP95#x")) [Var ((Just (TVar 331),29))])] (Let [((Just (TVar 0),31),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 375]) (TVar 375)),"RedBlackTree","reviseRight._#selFP96#y")) [Var ((Just (TVar 331),29))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),32),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 376]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 376])),"RedBlackTree","reviseRight._#selFP97#c")) [Var ((Just (TVar 331),29))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),33),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 377]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 377])),"RedBlackTree","reviseRight._#selFP98#b")) [Var ((Just (TVar 331),29))])] (Let [((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),34),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 378]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 378])),"RedBlackTree","reviseRight._#selFP99#a")) [Var ((Just (TVar 331),29))])] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Black")) [],Var ((Just (TVar 0),31)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),32)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0])),"RedBlackTree","reviseRight")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]))))),"RedBlackTree","Tree")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),"RedBlackTree","Red")) [],Var ((Just (TVar 0),30)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),33)),Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),34))]]]))))))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 0]),"Prelude","failed")) [])])])])])])))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseRight._#selFP70#col")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Color")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP71#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TVar 327),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP72#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TVar 327),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP73#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TVar 327),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP74#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP75#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP76#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP77#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseRight._#selFP79#col")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Color")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP80#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TVar 327),3)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP81#z")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TVar 327),7)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP82#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP83#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TVar 327),11)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP84#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP85#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP86#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),10),(Just (TVar 327),11),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),12),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),13)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)))])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Color") [])),"RedBlackTree","reviseRight._#selFP88#col")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Color")) [])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP89#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TVar 327),3)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP90#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TVar 327),7)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP91#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP92#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP93#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP95#x")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TVar 327),3)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TVar 327)),"RedBlackTree","reviseRight._#selFP96#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TVar 327)) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TVar 327),7)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP97#c")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP98#b")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327])),"RedBlackTree","reviseRight._#selFP99#a")) 1 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327]) (TCons ((Nothing,Nothing,"RedBlackTree","Tree")) [TVar 327])) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),2),(Just (TVar 327),3),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Color") []) (FuncType (TVar 327) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]) (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]))))),"RedBlackTree","Tree")) [(Just (TCons (Nothing,Nothing,"RedBlackTree","Color") []),6),(Just (TVar 327),7),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),8),(Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),9)]) (Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","Tree") [TVar 327]),5)))])]))] []
+ src/lib/Curry/Module/.curry/RedBlackTree.fcy view
@@ -0,0 +1,1 @@+Prog "RedBlackTree" ["Prelude"] [Type ("RedBlackTree","RedBlackTree") Public [0] [Cons ("RedBlackTree","RedBlackTree") 4 Private [FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])),FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])),FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") [])),TCons ("RedBlackTree","Tree") [TVar 0]]],Type ("RedBlackTree","Color") Private [] [Cons ("RedBlackTree","Red") 0 Private [],Cons ("RedBlackTree","Black") 0 Private [],Cons ("RedBlackTree","DoublyBlack") 0 Private []],Type ("RedBlackTree","Tree") Private [0] [Cons ("RedBlackTree","Tree") 4 Private [TCons ("RedBlackTree","Color") [],TVar 0,TCons ("RedBlackTree","Tree") [TVar 0],TCons ("RedBlackTree","Tree") [TVar 0]],Cons ("RedBlackTree","Empty") 0 Private []]] [Func ("RedBlackTree","empty") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("RedBlackTree","RedBlackTree") [TVar 0])))) (Rule [1,2,3] (Comb ConsCall ("RedBlackTree","RedBlackTree") [Var 1,Var 2,Var 3,Comb ConsCall ("RedBlackTree","Empty") []])),Func ("RedBlackTree","isEmpty") 1 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","RedBlackTree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Comb ConsCall ("Prelude","False") [])])])),Func ("RedBlackTree","newTreeLike") 1 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","RedBlackTree") [2,3,4,5]) (Comb ConsCall ("RedBlackTree","RedBlackTree") [Var 2,Var 3,Var 4,Comb ConsCall ("RedBlackTree","Empty") []])])),Func ("RedBlackTree","lookup") 2 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("RedBlackTree","RedBlackTree") [3,4,5,6]) (Comb FuncCall ("RedBlackTree","lookupTree") [Var 4,Var 5,Var 1,Var 6])])),Func ("RedBlackTree","lookupTree") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("Prelude","Nothing") []),Branch (Pattern ("RedBlackTree","Tree") [5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","Just") [Var 6]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 3],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","lookupTree") [Var 1,Var 2,Var 3,Var 7]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","lookupTree") [Var 1,Var 2,Var 3,Var 8]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("RedBlackTree","update") 2 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("RedBlackTree","RedBlackTree") [3,4,5,6]) (Comb ConsCall ("RedBlackTree","RedBlackTree") [Var 3,Var 4,Var 5,Comb FuncCall ("RedBlackTree","updateTree") [Var 3,Var 5,Var 1,Var 6]])])),Func ("RedBlackTree","updateTree") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0]))))) (Rule [1,2,3,4] (Let [(5,Comb FuncCall ("RedBlackTree","updateTree.upd.35") [Var 3,Var 1,Var 2,Var 4])] (Let [(6,Comb FuncCall ("RedBlackTree","updateTree._#selFP3#e2") [Var 5])] (Let [(7,Comb FuncCall ("RedBlackTree","updateTree._#selFP4#l") [Var 5])] (Let [(8,Comb FuncCall ("RedBlackTree","updateTree._#selFP5#r") [Var 5])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 6,Var 7,Var 8])))))),Func ("RedBlackTree","updateTree.upd.35") 4 Private (FuncType (TVar 183) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 183) (FuncType (TVar 183) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("RedBlackTree","Tree") [TVar 183]) (TCons ("RedBlackTree","Tree") [TVar 183]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 1,Comb ConsCall ("RedBlackTree","Empty") [],Comb ConsCall ("RedBlackTree","Empty") []]),Branch (Pattern ("RedBlackTree","Tree") [5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 1],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 1,Var 7,Var 8]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Var 1],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","balanceL") [Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 6,Comb FuncCall ("RedBlackTree","updateTree.upd.35") [Var 1,Var 2,Var 3,Var 7],Var 8]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","balanceR") [Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 6,Var 7,Comb FuncCall ("RedBlackTree","updateTree.upd.35") [Var 1,Var 2,Var 3,Var 8]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("RedBlackTree","updateTree._#selFP3#e2") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 183]) (TVar 183)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Var 3)])),Func ("RedBlackTree","updateTree._#selFP4#l") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 183]) (TCons ("RedBlackTree","Tree") [TVar 183])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Var 4)])),Func ("RedBlackTree","updateTree._#selFP5#r") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 183]) (TCons ("RedBlackTree","Tree") [TVar 183])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Var 5)])),Func ("RedBlackTree","delete") 2 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("RedBlackTree","RedBlackTree") [3,4,5,6]) (Comb ConsCall ("RedBlackTree","RedBlackTree") [Var 3,Var 4,Var 5,Comb FuncCall ("RedBlackTree","delete.blackenRoot.44") [Comb FuncCall ("RedBlackTree","deleteTree") [Var 4,Var 5,Var 1,Var 6]]])])),Func ("RedBlackTree","delete.blackenRoot.44") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("RedBlackTree","Empty") []),Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 3,Var 4,Var 5])])),Func ("RedBlackTree","deleteTree") 4 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0]))))) (Rule [1,2,3,4] (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("RedBlackTree","Empty") []),Branch (Pattern ("RedBlackTree","Tree") [5,6,7,8]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 6]) [Branch (Pattern ("Prelude","True") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 7,Comb ConsCall ("RedBlackTree","Empty") []]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","deleteTree.addColor.56") [Var 5,Var 8]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 8,Comb ConsCall ("RedBlackTree","Empty") []]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","deleteTree.addColor.56") [Var 5,Var 7]),Branch (Pattern ("Prelude","False") []) (Let [(9,Comb FuncCall ("RedBlackTree","deleteTree.rightMost.56") [Var 7])] (Comb FuncCall ("RedBlackTree","delBalanceL") [Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 9,Comb FuncCall ("RedBlackTree","deleteTree") [Var 1,Var 2,Var 9,Var 7],Var 8]]))])]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 2,Var 3],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","delBalanceL") [Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 6,Comb FuncCall ("RedBlackTree","deleteTree") [Var 1,Var 2,Var 3,Var 7],Var 8]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","delBalanceR") [Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 6,Var 7,Comb FuncCall ("RedBlackTree","deleteTree") [Var 1,Var 2,Var 3,Var 8]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("RedBlackTree","deleteTree.addColor.56") 2 Private (FuncType (TCons ("RedBlackTree","Color") []) (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Red") []) (Var 2),Branch (Pattern ("RedBlackTree","Black") []) (Case  Flex (Var 2) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("RedBlackTree","Empty") []),Branch (Pattern ("RedBlackTree","Tree") [3,4,5,6]) (Case  Flex (Var 3) [Branch (Pattern ("RedBlackTree","Red") []) (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 4,Var 5,Var 6]),Branch (Pattern ("RedBlackTree","Black") []) (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","DoublyBlack") [],Var 4,Var 5,Var 6])])])])),Func ("RedBlackTree","deleteTree.rightMost.56") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 5,Comb ConsCall ("RedBlackTree","Empty") []]) [Branch (Pattern ("Prelude","True") []) (Var 3),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("RedBlackTree","deleteTree.rightMost.56") [Var 5])])])),Func ("RedBlackTree","tree2list") 1 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","RedBlackTree") [2,3,4,5]) (Comb FuncCall ("RedBlackTree","tree2listTree") [Var 5])])),Func ("RedBlackTree","tree2listTree") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [1] (Comb FuncCall ("RedBlackTree","tree2listTree.t2l.77") [Var 1,Comb ConsCall ("Prelude","[]") []])),Func ("RedBlackTree","tree2listTree.t2l.77") 2 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Empty") []) (Var 2),Branch (Pattern ("RedBlackTree","Tree") [3,4,5,6]) (Comb FuncCall ("RedBlackTree","tree2listTree.t2l.77") [Var 5,Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("RedBlackTree","tree2listTree.t2l.77") [Var 6,Var 2]]])])),Func ("RedBlackTree","sort") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("RedBlackTree","tree2list") [Comb FuncCall ("Prelude","foldr") [Comb (FuncPartCall 2) ("RedBlackTree","update") [],Comb FuncCall ("RedBlackTree","empty") [Comb (FuncPartCall 2) ("RedBlackTree","sort._#lambda2") [],Comb (FuncPartCall 2) ("Prelude","==") [],Var 1],Var 2]])),Func ("RedBlackTree","sort._#lambda2") 2 Private (FuncType (TVar 520) (FuncType (TVar 520) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb ConsCall ("Prelude","False") [])),Func ("RedBlackTree","setInsertEquivalence") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("RedBlackTree","RedBlackTree") [3,4,5,6]) (Comb ConsCall ("RedBlackTree","RedBlackTree") [Var 1,Var 4,Var 5,Var 6])])),Func ("RedBlackTree","rbt") 1 Private (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","RedBlackTree") [2,3,4,5]) (Var 5)])),Func ("RedBlackTree","isBlack") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("RedBlackTree","Black") []])])),Func ("RedBlackTree","isRed") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("RedBlackTree","Red") []])])),Func ("RedBlackTree","isDoublyBlack") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("RedBlackTree","DoublyBlack") []])])),Func ("RedBlackTree","element") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TVar 0)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Var 3)])),Func ("RedBlackTree","left") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Var 4)])),Func ("RedBlackTree","right") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Var 5)])),Func ("RedBlackTree","singleBlack") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Empty") []) (Comb ConsCall ("RedBlackTree","Empty") []),Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 2) [Branch (Pattern ("RedBlackTree","DoublyBlack") []) (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 3,Var 4,Var 5])])])),Func ("RedBlackTree","balanceL") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Let [(2,Comb FuncCall ("RedBlackTree","left") [Var 1])] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("RedBlackTree","isRed") [Var 2],Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","left") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(3,Var 1)] (Let [(4,Comb FuncCall ("RedBlackTree","balanceL._#selFP7#z") [Var 3])] (Let [(5,Comb FuncCall ("RedBlackTree","balanceL._#selFP8#y") [Var 3])] (Let [(6,Comb FuncCall ("RedBlackTree","balanceL._#selFP9#x") [Var 3])] (Let [(7,Comb FuncCall ("RedBlackTree","balanceL._#selFP10#a") [Var 3])] (Let [(8,Comb FuncCall ("RedBlackTree","balanceL._#selFP11#b") [Var 3])] (Let [(9,Comb FuncCall ("RedBlackTree","balanceL._#selFP12#c") [Var 3])] (Let [(10,Comb FuncCall ("RedBlackTree","balanceL._#selFP13#d") [Var 3])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 5,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 6,Var 7,Var 8],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 4,Var 9,Var 10]]))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("RedBlackTree","isRed") [Var 2],Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","right") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(11,Var 1)] (Let [(12,Comb FuncCall ("RedBlackTree","balanceL._#selFP15#z") [Var 11])] (Let [(13,Comb FuncCall ("RedBlackTree","balanceL._#selFP16#x") [Var 11])] (Let [(14,Comb FuncCall ("RedBlackTree","balanceL._#selFP17#a") [Var 11])] (Let [(15,Comb FuncCall ("RedBlackTree","balanceL._#selFP18#y") [Var 11])] (Let [(16,Comb FuncCall ("RedBlackTree","balanceL._#selFP19#b") [Var 11])] (Let [(17,Comb FuncCall ("RedBlackTree","balanceL._#selFP20#c") [Var 11])] (Let [(18,Comb FuncCall ("RedBlackTree","balanceL._#selFP21#d") [Var 11])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 15,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 13,Var 14,Var 16],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 12,Var 17,Var 18]]))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])]))),Func ("RedBlackTree","balanceL._#selFP7#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TVar 88)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","balanceL._#selFP8#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TVar 88)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","balanceL._#selFP9#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TVar 88)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","balanceL._#selFP10#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","balanceL._#selFP11#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","balanceL._#selFP12#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 9)])])])),Func ("RedBlackTree","balanceL._#selFP13#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 5)])])])),Func ("RedBlackTree","balanceL._#selFP15#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TVar 88)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","balanceL._#selFP16#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TVar 88)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","balanceL._#selFP17#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 8)])])])),Func ("RedBlackTree","balanceL._#selFP18#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TVar 88)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","balanceL._#selFP19#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","balanceL._#selFP20#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","balanceL._#selFP21#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 88]) (TCons ("RedBlackTree","Tree") [TVar 88])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 5)])])])),Func ("RedBlackTree","balanceR") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Let [(2,Comb FuncCall ("RedBlackTree","right") [Var 1])] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("RedBlackTree","isRed") [Var 2],Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","right") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(3,Var 1)] (Let [(4,Comb FuncCall ("RedBlackTree","balanceR._#selFP23#x") [Var 3])] (Let [(5,Comb FuncCall ("RedBlackTree","balanceR._#selFP24#a") [Var 3])] (Let [(6,Comb FuncCall ("RedBlackTree","balanceR._#selFP25#y") [Var 3])] (Let [(7,Comb FuncCall ("RedBlackTree","balanceR._#selFP26#b") [Var 3])] (Let [(8,Comb FuncCall ("RedBlackTree","balanceR._#selFP27#z") [Var 3])] (Let [(9,Comb FuncCall ("RedBlackTree","balanceR._#selFP28#c") [Var 3])] (Let [(10,Comb FuncCall ("RedBlackTree","balanceR._#selFP29#d") [Var 3])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 6,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 4,Var 5,Var 7],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 8,Var 9,Var 10]]))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("RedBlackTree","isRed") [Var 2],Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","left") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(11,Var 1)] (Let [(12,Comb FuncCall ("RedBlackTree","balanceR._#selFP31#x") [Var 11])] (Let [(13,Comb FuncCall ("RedBlackTree","balanceR._#selFP32#a") [Var 11])] (Let [(14,Comb FuncCall ("RedBlackTree","balanceR._#selFP33#z") [Var 11])] (Let [(15,Comb FuncCall ("RedBlackTree","balanceR._#selFP34#y") [Var 11])] (Let [(16,Comb FuncCall ("RedBlackTree","balanceR._#selFP35#b") [Var 11])] (Let [(17,Comb FuncCall ("RedBlackTree","balanceR._#selFP36#c") [Var 11])] (Let [(18,Comb FuncCall ("RedBlackTree","balanceR._#selFP37#d") [Var 11])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 15,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 12,Var 13,Var 16],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 14,Var 17,Var 18]]))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])]))),Func ("RedBlackTree","balanceR._#selFP23#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TVar 131)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","balanceR._#selFP24#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 4)])])])),Func ("RedBlackTree","balanceR._#selFP25#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TVar 131)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","balanceR._#selFP26#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 8)])])])),Func ("RedBlackTree","balanceR._#selFP27#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TVar 131)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","balanceR._#selFP28#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","balanceR._#selFP29#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","balanceR._#selFP31#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TVar 131)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","balanceR._#selFP32#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 4)])])])),Func ("RedBlackTree","balanceR._#selFP33#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TVar 131)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","balanceR._#selFP34#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TVar 131)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","balanceR._#selFP35#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","balanceR._#selFP36#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","balanceR._#selFP37#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 131]) (TCons ("RedBlackTree","Tree") [TVar 131])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 9)])])])),Func ("RedBlackTree","delBalanceL") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Rigid (Comb FuncCall ("RedBlackTree","isDoublyBlack") [Comb FuncCall ("RedBlackTree","left") [Var 1]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","reviseLeft") [Var 1]),Branch (Pattern ("Prelude","False") []) (Var 1)])),Func ("RedBlackTree","reviseLeft") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Let [(2,Comb FuncCall ("RedBlackTree","right") [Var 1])] (Let [(3,Comb FuncCall ("RedBlackTree","isBlack") [Var 2])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("RedBlackTree","Empty") []]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Var 3,Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","left") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(4,Var 1)] (Let [(5,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP39#col") [Var 4])] (Let [(6,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP40#x") [Var 4])] (Let [(7,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP41#a") [Var 4])] (Let [(8,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP42#z") [Var 4])] (Let [(9,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP43#y") [Var 4])] (Let [(10,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP44#b") [Var 4])] (Let [(11,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP45#c") [Var 4])] (Let [(12,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP46#d") [Var 4])] (Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 9,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 6,Comb FuncCall ("RedBlackTree","singleBlack") [Var 7],Var 10],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 8,Var 11,Var 12]])))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Var 3,Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","right") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(13,Var 1)] (Let [(14,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP48#col") [Var 13])] (Let [(15,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP49#x") [Var 13])] (Let [(16,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP50#a") [Var 13])] (Let [(17,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP51#y") [Var 13])] (Let [(18,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP52#b") [Var 13])] (Let [(19,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP53#z") [Var 13])] (Let [(20,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP54#c") [Var 13])] (Let [(21,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP55#d") [Var 13])] (Comb ConsCall ("RedBlackTree","Tree") [Var 14,Var 17,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 15,Comb FuncCall ("RedBlackTree","singleBlack") [Var 16],Var 18],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 19,Var 20,Var 21]])))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","True") []) (Let [(22,Var 1)] (Let [(23,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP57#col") [Var 22])] (Let [(24,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP58#x") [Var 22])] (Let [(25,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP59#a") [Var 22])] (Let [(26,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP60#y") [Var 22])] (Let [(27,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP61#b") [Var 22])] (Let [(28,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP62#c") [Var 22])] (Comb ConsCall ("RedBlackTree","Tree") [Case  Rigid (Comb FuncCall ("Prelude","==") [Var 23,Comb ConsCall ("RedBlackTree","Red") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("RedBlackTree","Black") []),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("RedBlackTree","DoublyBlack") [])],Var 24,Comb FuncCall ("RedBlackTree","singleBlack") [Var 25],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 26,Var 27,Var 28]])))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Let [(29,Var 1)] (Let [(30,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP64#x") [Var 29])] (Let [(31,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP65#a") [Var 29])] (Let [(32,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP66#y") [Var 29])] (Let [(33,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP67#b") [Var 29])] (Let [(34,Comb FuncCall ("RedBlackTree","reviseLeft._#selFP68#c") [Var 29])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 32,Comb FuncCall ("RedBlackTree","reviseLeft") [Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 30,Var 31,Var 33]],Var 34]))))))),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])])))),Func ("RedBlackTree","reviseLeft._#selFP39#col") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Color") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 2)])])])),Func ("RedBlackTree","reviseLeft._#selFP40#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","reviseLeft._#selFP41#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 4)])])])),Func ("RedBlackTree","reviseLeft._#selFP42#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","reviseLeft._#selFP43#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","reviseLeft._#selFP44#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","reviseLeft._#selFP45#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","reviseLeft._#selFP46#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 9)])])])),Func ("RedBlackTree","reviseLeft._#selFP48#col") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Color") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 2)])])])),Func ("RedBlackTree","reviseLeft._#selFP49#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","reviseLeft._#selFP50#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 4)])])])),Func ("RedBlackTree","reviseLeft._#selFP51#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","reviseLeft._#selFP52#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 8)])])])),Func ("RedBlackTree","reviseLeft._#selFP53#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","reviseLeft._#selFP54#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","reviseLeft._#selFP55#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","reviseLeft._#selFP57#col") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Color") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 2)])])),Func ("RedBlackTree","reviseLeft._#selFP58#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 3)])])),Func ("RedBlackTree","reviseLeft._#selFP59#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 4)])])),Func ("RedBlackTree","reviseLeft._#selFP60#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 7)])])),Func ("RedBlackTree","reviseLeft._#selFP61#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 8)])])),Func ("RedBlackTree","reviseLeft._#selFP62#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 9)])])),Func ("RedBlackTree","reviseLeft._#selFP64#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 3)])])),Func ("RedBlackTree","reviseLeft._#selFP65#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 4)])])),Func ("RedBlackTree","reviseLeft._#selFP66#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TVar 249)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 7)])])),Func ("RedBlackTree","reviseLeft._#selFP67#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 8)])])),Func ("RedBlackTree","reviseLeft._#selFP68#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 249]) (TCons ("RedBlackTree","Tree") [TVar 249])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 5) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 9)])])),Func ("RedBlackTree","delBalanceR") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Case  Rigid (Comb FuncCall ("RedBlackTree","isDoublyBlack") [Comb FuncCall ("RedBlackTree","right") [Var 1]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("RedBlackTree","reviseRight") [Var 1]),Branch (Pattern ("Prelude","False") []) (Var 1)])),Func ("RedBlackTree","reviseRight") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 0]) (TCons ("RedBlackTree","Tree") [TVar 0])) (Rule [1] (Let [(2,Comb FuncCall ("RedBlackTree","left") [Var 1])] (Let [(3,Comb FuncCall ("RedBlackTree","isBlack") [Var 2])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 2,Comb ConsCall ("RedBlackTree","Empty") []]) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Var 3,Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","left") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(4,Var 1)] (Let [(5,Comb FuncCall ("RedBlackTree","reviseRight._#selFP70#col") [Var 4])] (Let [(6,Comb FuncCall ("RedBlackTree","reviseRight._#selFP71#x") [Var 4])] (Let [(7,Comb FuncCall ("RedBlackTree","reviseRight._#selFP72#y") [Var 4])] (Let [(8,Comb FuncCall ("RedBlackTree","reviseRight._#selFP73#z") [Var 4])] (Let [(9,Comb FuncCall ("RedBlackTree","reviseRight._#selFP74#d") [Var 4])] (Let [(10,Comb FuncCall ("RedBlackTree","reviseRight._#selFP75#c") [Var 4])] (Let [(11,Comb FuncCall ("RedBlackTree","reviseRight._#selFP76#b") [Var 4])] (Let [(12,Comb FuncCall ("RedBlackTree","reviseRight._#selFP77#a") [Var 4])] (Comb ConsCall ("RedBlackTree","Tree") [Var 5,Var 7,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 8,Var 9,Var 10],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 6,Var 11,Comb FuncCall ("RedBlackTree","singleBlack") [Var 12]]])))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Var 3,Comb FuncCall ("RedBlackTree","isRed") [Comb FuncCall ("RedBlackTree","right") [Var 2]]]) [Branch (Pattern ("Prelude","True") []) (Let [(13,Var 1)] (Let [(14,Comb FuncCall ("RedBlackTree","reviseRight._#selFP79#col") [Var 13])] (Let [(15,Comb FuncCall ("RedBlackTree","reviseRight._#selFP80#x") [Var 13])] (Let [(16,Comb FuncCall ("RedBlackTree","reviseRight._#selFP81#z") [Var 13])] (Let [(17,Comb FuncCall ("RedBlackTree","reviseRight._#selFP82#d") [Var 13])] (Let [(18,Comb FuncCall ("RedBlackTree","reviseRight._#selFP83#y") [Var 13])] (Let [(19,Comb FuncCall ("RedBlackTree","reviseRight._#selFP84#c") [Var 13])] (Let [(20,Comb FuncCall ("RedBlackTree","reviseRight._#selFP85#b") [Var 13])] (Let [(21,Comb FuncCall ("RedBlackTree","reviseRight._#selFP86#a") [Var 13])] (Comb ConsCall ("RedBlackTree","Tree") [Var 14,Var 18,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 16,Var 17,Var 19],Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 15,Var 20,Comb FuncCall ("RedBlackTree","singleBlack") [Var 21]]])))))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","True") []) (Let [(22,Var 1)] (Let [(23,Comb FuncCall ("RedBlackTree","reviseRight._#selFP88#col") [Var 22])] (Let [(24,Comb FuncCall ("RedBlackTree","reviseRight._#selFP89#x") [Var 22])] (Let [(25,Comb FuncCall ("RedBlackTree","reviseRight._#selFP90#y") [Var 22])] (Let [(26,Comb FuncCall ("RedBlackTree","reviseRight._#selFP91#c") [Var 22])] (Let [(27,Comb FuncCall ("RedBlackTree","reviseRight._#selFP92#b") [Var 22])] (Let [(28,Comb FuncCall ("RedBlackTree","reviseRight._#selFP93#a") [Var 22])] (Comb ConsCall ("RedBlackTree","Tree") [Case  Rigid (Comb FuncCall ("Prelude","==") [Var 23,Comb ConsCall ("RedBlackTree","Red") []]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("RedBlackTree","Black") []),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("RedBlackTree","DoublyBlack") [])],Var 24,Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 25,Var 26,Var 27],Comb FuncCall ("RedBlackTree","singleBlack") [Var 28]])))))))),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Let [(29,Var 1)] (Let [(30,Comb FuncCall ("RedBlackTree","reviseRight._#selFP95#x") [Var 29])] (Let [(31,Comb FuncCall ("RedBlackTree","reviseRight._#selFP96#y") [Var 29])] (Let [(32,Comb FuncCall ("RedBlackTree","reviseRight._#selFP97#c") [Var 29])] (Let [(33,Comb FuncCall ("RedBlackTree","reviseRight._#selFP98#b") [Var 29])] (Let [(34,Comb FuncCall ("RedBlackTree","reviseRight._#selFP99#a") [Var 29])] (Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Black") [],Var 31,Var 32,Comb FuncCall ("RedBlackTree","reviseRight") [Comb ConsCall ("RedBlackTree","Tree") [Comb ConsCall ("RedBlackTree","Red") [],Var 30,Var 33,Var 34]]]))))))),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])])))),Func ("RedBlackTree","reviseRight._#selFP70#col") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Color") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 2)])])])),Func ("RedBlackTree","reviseRight._#selFP71#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","reviseRight._#selFP72#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","reviseRight._#selFP73#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","reviseRight._#selFP74#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","reviseRight._#selFP75#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","reviseRight._#selFP76#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 9)])])])),Func ("RedBlackTree","reviseRight._#selFP77#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 8) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 5)])])])),Func ("RedBlackTree","reviseRight._#selFP79#col") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Color") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 2)])])])),Func ("RedBlackTree","reviseRight._#selFP80#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 3)])])])),Func ("RedBlackTree","reviseRight._#selFP81#z") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 7)])])])),Func ("RedBlackTree","reviseRight._#selFP82#d") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 8)])])])),Func ("RedBlackTree","reviseRight._#selFP83#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 11)])])])),Func ("RedBlackTree","reviseRight._#selFP84#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 12)])])])),Func ("RedBlackTree","reviseRight._#selFP85#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 13)])])])),Func ("RedBlackTree","reviseRight._#selFP86#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Case  Flex (Var 9) [Branch (Pattern ("RedBlackTree","Tree") [10,11,12,13]) (Var 5)])])])),Func ("RedBlackTree","reviseRight._#selFP88#col") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Color") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 2)])])),Func ("RedBlackTree","reviseRight._#selFP89#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 3)])])),Func ("RedBlackTree","reviseRight._#selFP90#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 7)])])),Func ("RedBlackTree","reviseRight._#selFP91#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 8)])])),Func ("RedBlackTree","reviseRight._#selFP92#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 9)])])),Func ("RedBlackTree","reviseRight._#selFP93#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 5)])])),Func ("RedBlackTree","reviseRight._#selFP95#x") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 3)])])),Func ("RedBlackTree","reviseRight._#selFP96#y") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TVar 327)) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 7)])])),Func ("RedBlackTree","reviseRight._#selFP97#c") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 8)])])),Func ("RedBlackTree","reviseRight._#selFP98#b") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 9)])])),Func ("RedBlackTree","reviseRight._#selFP99#a") 1 Private (FuncType (TCons ("RedBlackTree","Tree") [TVar 327]) (TCons ("RedBlackTree","Tree") [TVar 327])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("RedBlackTree","Tree") [2,3,4,5]) (Case  Flex (Var 4) [Branch (Pattern ("RedBlackTree","Tree") [6,7,8,9]) (Var 5)])]))] []
+ src/lib/Curry/Module/.curry/RedBlackTree.fint view
@@ -0,0 +1,1 @@+Prog "RedBlackTree" ["Prelude"] [Type ("RedBlackTree","RedBlackTree") Public [0] []] [Func ("RedBlackTree","empty") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("RedBlackTree","RedBlackTree") [TVar 0])))) (Rule [] (Var 0)),Func ("RedBlackTree","isEmpty") 1 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("RedBlackTree","newTreeLike") 1 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0])) (Rule [] (Var 0)),Func ("RedBlackTree","lookup") 2 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","Maybe") [TVar 0]))) (Rule [] (Var 0)),Func ("RedBlackTree","update") 2 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("RedBlackTree","delete") 2 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("RedBlackTree","tree2list") 1 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("RedBlackTree","sort") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("RedBlackTree","setInsertEquivalence") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/RedBlackTree.uacy view
@@ -0,0 +1,33 @@+CurryProg "RedBlackTree"+ ["Prelude"]+ [CType ("RedBlackTree","RedBlackTree") Public [(0,"a")] [CCons ("RedBlackTree","RedBlackTree") 4 Public [CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])),CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])),CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])),CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]]],+  CType ("RedBlackTree","Color") Private [] [CCons ("RedBlackTree","Red") 0 Private [],CCons ("RedBlackTree","Black") 0 Private [],CCons ("RedBlackTree","DoublyBlack") 0 Private []],+  CType ("RedBlackTree","Tree") Private [(0,"a")] [CCons ("RedBlackTree","Tree") 4 Private [CTCons ("RedBlackTree","Color") [],CTVar (0,"a"),CTCons ("RedBlackTree","Tree") [CTVar (0,"a")],CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]],CCons ("RedBlackTree","Empty") 0 Private []]]+ [CFunc ("RedBlackTree","balanceL") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"leftTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"leftTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (2,"_"),CPVar (3,"z"),CPComb ("RedBlackTree","Tree") [CPVar (4,"_"),CPVar (5,"y"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"x"),CPVar (8,"a"),CPVar (9,"b")],CPVar (10,"c")],CPVar (11,"d")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (5,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (7,"x"))) (CVar (8,"a"))) (CVar (9,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (3,"z"))) (CVar (10,"c"))) (CVar (11,"d"))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"leftTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"leftTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (12,"_"),CPVar (13,"z"),CPComb ("RedBlackTree","Tree") [CPVar (14,"_"),CPVar (15,"x"),CPVar (16,"a"),CPComb ("RedBlackTree","Tree") [CPVar (17,"_"),CPVar (18,"y"),CPVar (19,"b"),CPVar (20,"c")]],CPVar (21,"d")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (18,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (15,"x"))) (CVar (16,"a"))) (CVar (19,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (13,"z"))) (CVar (20,"c"))) (CVar (21,"d"))))),(CSymbol ("Prelude","otherwise"),CVar (0,"tree"))] [CLocalPat (CPVar (1,"leftTree")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (0,"tree"))) []]]),+  CFunc ("RedBlackTree","balanceR") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"rightTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"rightTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (2,"_"),CPVar (3,"x"),CPVar (4,"a"),CPComb ("RedBlackTree","Tree") [CPVar (5,"_"),CPVar (6,"y"),CPVar (7,"b"),CPComb ("RedBlackTree","Tree") [CPVar (8,"_"),CPVar (9,"z"),CPVar (10,"c"),CPVar (11,"d")]]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (6,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (3,"x"))) (CVar (4,"a"))) (CVar (7,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (9,"z"))) (CVar (10,"c"))) (CVar (11,"d"))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CSymbol ("RedBlackTree","isRed")) (CVar (1,"rightTree")))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"rightTree")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (12,"_"),CPVar (13,"x"),CPVar (14,"a"),CPComb ("RedBlackTree","Tree") [CPVar (15,"_"),CPVar (16,"z"),CPComb ("RedBlackTree","Tree") [CPVar (17,"_"),CPVar (18,"y"),CPVar (19,"b"),CPVar (20,"c")],CPVar (21,"d")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (18,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (13,"x"))) (CVar (14,"a"))) (CVar (19,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (16,"z"))) (CVar (20,"c"))) (CVar (21,"d"))))),(CSymbol ("Prelude","otherwise"),CVar (0,"tree"))] [CLocalPat (CPVar (1,"rightTree")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (0,"tree"))) []]]),+  CFunc ("RedBlackTree","delBalanceL") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("RedBlackTree","isDoublyBlack")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (0,"tree"))))) (CApply (CSymbol ("RedBlackTree","reviseLeft")) (CVar (0,"tree")))) (CVar (0,"tree")))] []]),+  CFunc ("RedBlackTree","delBalanceR") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"tree")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CSymbol ("RedBlackTree","isDoublyBlack")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (0,"tree"))))) (CApply (CSymbol ("RedBlackTree","reviseRight")) (CVar (0,"tree")))) (CVar (0,"tree")))] []]),+  CFunc ("RedBlackTree","delete") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"eqIns"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (1,"eqIns"))) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CApply (CSymbol ("RedBlackTree","blackenRoot")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CVar (0,"e"))) (CVar (4,"t")))))] [CLocalFunc (CFunc ("RedBlackTree","blackenRoot") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (5,"_"),CPVar (6,"x"),CPVar (7,"l"),CPVar (8,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (6,"x"))) (CVar (7,"l"))) (CVar (8,"r")))] []]))]]),+  CFunc ("RedBlackTree","deleteTree") 4 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPVar (3,"eq"),CPVar (4,"lt"),CPVar (5,"e"),CPComb ("RedBlackTree","Tree") [CPVar (6,"c"),CPVar (7,"e2"),CPVar (8,"l"),CPVar (9,"r")]] [(CApply (CApply (CVar (3,"eq")) (CVar (5,"e"))) (CVar (7,"e2")),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (8,"l"))) (CSymbol ("RedBlackTree","Empty")))) (CApply (CApply (CSymbol ("RedBlackTree","addColor")) (CVar (6,"c"))) (CVar (9,"r")))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"r"))) (CSymbol ("RedBlackTree","Empty")))) (CApply (CApply (CSymbol ("RedBlackTree","addColor")) (CVar (6,"c"))) (CVar (8,"l")))) (CLetDecl [CLocalPat (CPVar (10,"el")) (CApply (CSymbol ("RedBlackTree","rightMost")) (CVar (8,"l"))) []] (CApply (CSymbol ("RedBlackTree","delBalanceL")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (6,"c"))) (CVar (10,"el"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (10,"el"))) (CVar (8,"l")))) (CVar (9,"r"))))))),(CApply (CApply (CVar (4,"lt")) (CVar (5,"e"))) (CVar (7,"e2")),CApply (CSymbol ("RedBlackTree","delBalanceL")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (6,"c"))) (CVar (7,"e2"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"e"))) (CVar (8,"l")))) (CVar (9,"r")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("RedBlackTree","delBalanceR")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (6,"c"))) (CVar (7,"e2"))) (CVar (8,"l"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","deleteTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"e"))) (CVar (9,"r")))))] [CLocalFunc (CFunc ("RedBlackTree","addColor") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","Red") [],CPVar (10,"tree")] [(CSymbol ("Prelude","success"),CVar (10,"tree"))] [],CRule [CPComb ("RedBlackTree","Black") [],CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPComb ("RedBlackTree","Black") [],CPComb ("RedBlackTree","Tree") [CPComb ("RedBlackTree","Red") [],CPVar (11,"x"),CPVar (12,"lx"),CPVar (13,"rx")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (11,"x"))) (CVar (12,"lx"))) (CVar (13,"rx")))] [],CRule [CPComb ("RedBlackTree","Black") [],CPComb ("RedBlackTree","Tree") [CPComb ("RedBlackTree","Black") [],CPVar (14,"x"),CPVar (15,"lx"),CPVar (16,"rx")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","DoublyBlack"))) (CVar (14,"x"))) (CVar (15,"lx"))) (CVar (16,"rx")))] []])),CLocalFunc (CFunc ("RedBlackTree","rightMost") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (10,"_"),CPVar (11,"x"),CPVar (12,"_"),CPVar (13,"rx")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (13,"rx"))) (CSymbol ("RedBlackTree","Empty")))) (CVar (11,"x"))) (CApply (CSymbol ("RedBlackTree","rightMost")) (CVar (13,"rx"))))] []]))]]),+  CFunc ("RedBlackTree","element") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"_"),CPVar (1,"e"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"e"))] []]),+  CFunc ("RedBlackTree","empty") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"eqInsert"),CPVar (1,"eqLookUp"),CPVar (2,"lessThan")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (0,"eqInsert"))) (CVar (1,"eqLookUp"))) (CVar (2,"lessThan"))) (CSymbol ("RedBlackTree","Empty")))] []]),+  CFunc ("RedBlackTree","isBlack") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"c"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("RedBlackTree","Black")))] []]),+  CFunc ("RedBlackTree","isDoublyBlack") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"c"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("RedBlackTree","DoublyBlack")))] []]),+  CFunc ("RedBlackTree","isEmpty") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("RedBlackTree","Empty") []]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"_"),CPVar (8,"_"),CPVar (9,"_")]]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] []]),+  CFunc ("RedBlackTree","isRed") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"c"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c"))) (CSymbol ("RedBlackTree","Red")))] []]),+  CFunc ("RedBlackTree","left") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"l"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"l"))] []]),+  CFunc ("RedBlackTree","lookup") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"p"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"_"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","lookupTree")) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CVar (0,"p"))) (CVar (4,"t")))] []]),+  CFunc ("RedBlackTree","lookupTree") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("Prelude","Maybe") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","Nothing"))] [],CRule [CPVar (3,"eq"),CPVar (4,"lt"),CPVar (5,"p"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"e"),CPVar (8,"l"),CPVar (9,"r")]] [(CApply (CApply (CVar (3,"eq")) (CVar (5,"p"))) (CVar (7,"e")),CApply (CSymbol ("Prelude","Just")) (CVar (7,"e"))),(CApply (CApply (CVar (4,"lt")) (CVar (5,"p"))) (CVar (7,"e")),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","lookupTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"p"))) (CVar (8,"l"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","lookupTree")) (CVar (3,"eq"))) (CVar (4,"lt"))) (CVar (5,"p"))) (CVar (9,"r")))] []]),+  CFunc ("RedBlackTree","newTreeLike") 1 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"eqIns"),CPVar (1,"eqLk"),CPVar (2,"lt"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (0,"eqIns"))) (CVar (1,"eqLk"))) (CVar (2,"lt"))) (CSymbol ("RedBlackTree","Empty")))] []]),+  CFunc ("RedBlackTree","rbt") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"t")]] [(CSymbol ("Prelude","success"),CVar (3,"t"))] []]),+  CFunc ("RedBlackTree","reviseLeft") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"r"))) (CSymbol ("RedBlackTree","Empty")),CVar (0,"tree")),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackr"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"r")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (3,"col"),CPVar (4,"x"),CPVar (5,"a"),CPComb ("RedBlackTree","Tree") [CPVar (6,"_"),CPVar (7,"z"),CPComb ("RedBlackTree","Tree") [CPVar (8,"_"),CPVar (9,"y"),CPVar (10,"b"),CPVar (11,"c")],CPVar (12,"d")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (3,"col"))) (CVar (9,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (4,"x"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (5,"a")))) (CVar (10,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (7,"z"))) (CVar (11,"c"))) (CVar (12,"d"))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackr"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"r")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (13,"col"),CPVar (14,"x"),CPVar (15,"a"),CPComb ("RedBlackTree","Tree") [CPVar (16,"_"),CPVar (17,"y"),CPVar (18,"b"),CPComb ("RedBlackTree","Tree") [CPVar (19,"_"),CPVar (20,"z"),CPVar (21,"c"),CPVar (22,"d")]]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (13,"col"))) (CVar (17,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (14,"x"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (15,"a")))) (CVar (18,"b")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (20,"z"))) (CVar (21,"c"))) (CVar (22,"d"))))),(CVar (2,"blackr"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (23,"col"),CPVar (24,"x"),CPVar (25,"a"),CPComb ("RedBlackTree","Tree") [CPVar (26,"_"),CPVar (27,"y"),CPVar (28,"b"),CPVar (29,"c")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (23,"col"))) (CSymbol ("RedBlackTree","Red")))) (CSymbol ("RedBlackTree","Black"))) (CSymbol ("RedBlackTree","DoublyBlack")))) (CVar (24,"x"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (25,"a")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (27,"y"))) (CVar (28,"b"))) (CVar (29,"c"))))),(CSymbol ("Prelude","otherwise"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (30,"_"),CPVar (31,"x"),CPVar (32,"a"),CPComb ("RedBlackTree","Tree") [CPVar (33,"_"),CPVar (34,"y"),CPVar (35,"b"),CPVar (36,"c")]]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (34,"y"))) (CApply (CSymbol ("RedBlackTree","reviseLeft")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (31,"x"))) (CVar (32,"a"))) (CVar (35,"b"))))) (CVar (36,"c"))))] [CLocalPat (CPVar (1,"r")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (0,"tree"))) [],CLocalPat (CPVar (2,"blackr")) (CApply (CSymbol ("RedBlackTree","isBlack")) (CVar (1,"r"))) []]]),+  CFunc ("RedBlackTree","reviseRight") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"tree")] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (1,"l"))) (CSymbol ("RedBlackTree","Empty")),CVar (0,"tree")),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackl"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (1,"l")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (3,"col"),CPVar (4,"x"),CPComb ("RedBlackTree","Tree") [CPVar (5,"_"),CPVar (6,"y"),CPComb ("RedBlackTree","Tree") [CPVar (7,"_"),CPVar (8,"z"),CPVar (9,"d"),CPVar (10,"c")],CPVar (11,"b")],CPVar (12,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (3,"col"))) (CVar (6,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (8,"z"))) (CVar (9,"d"))) (CVar (10,"c")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (4,"x"))) (CVar (11,"b"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (12,"a")))))),(CApply (CApply (CSymbol ("Prelude","&&")) (CVar (2,"blackl"))) (CApply (CSymbol ("RedBlackTree","isRed")) (CApply (CSymbol ("RedBlackTree","right")) (CVar (1,"l")))),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (13,"col"),CPVar (14,"x"),CPComb ("RedBlackTree","Tree") [CPVar (15,"_"),CPVar (16,"z"),CPVar (17,"d"),CPComb ("RedBlackTree","Tree") [CPVar (18,"_"),CPVar (19,"y"),CPVar (20,"c"),CPVar (21,"b")]],CPVar (22,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (13,"col"))) (CVar (19,"y"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (16,"z"))) (CVar (17,"d"))) (CVar (20,"c")))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (14,"x"))) (CVar (21,"b"))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (22,"a")))))),(CVar (2,"blackl"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (23,"col"),CPVar (24,"x"),CPComb ("RedBlackTree","Tree") [CPVar (25,"_"),CPVar (26,"y"),CPVar (27,"c"),CPVar (28,"b")],CPVar (29,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (23,"col"))) (CSymbol ("RedBlackTree","Red")))) (CSymbol ("RedBlackTree","Black"))) (CSymbol ("RedBlackTree","DoublyBlack")))) (CVar (24,"x"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (26,"y"))) (CVar (27,"c"))) (CVar (28,"b")))) (CApply (CSymbol ("RedBlackTree","singleBlack")) (CVar (29,"a"))))),(CSymbol ("Prelude","otherwise"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (30,"_"),CPVar (31,"x"),CPComb ("RedBlackTree","Tree") [CPVar (32,"_"),CPVar (33,"y"),CPVar (34,"c"),CPVar (35,"b")],CPVar (36,"a")]) (CVar (0,"tree")) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (33,"y"))) (CVar (34,"c"))) (CApply (CSymbol ("RedBlackTree","reviseRight")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (31,"x"))) (CVar (35,"b"))) (CVar (36,"a"))))))] [CLocalPat (CPVar (1,"l")) (CApply (CSymbol ("RedBlackTree","left")) (CVar (0,"tree"))) [],CLocalPat (CPVar (2,"blackl")) (CApply (CSymbol ("RedBlackTree","isBlack")) (CVar (1,"l"))) []]]),+  CFunc ("RedBlackTree","right") 1 Private (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","Tree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"r")]] [(CSymbol ("Prelude","success"),CVar (3,"r"))] []]),+  CFunc ("RedBlackTree","setInsertEquivalence") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"eqIns"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"_"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (0,"eqIns"))) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CVar (4,"t")))] []]),+  CFunc ("RedBlackTree","singleBlack") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","Empty"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPComb ("RedBlackTree","DoublyBlack") [],CPVar (0,"x"),CPVar (1,"l"),CPVar (2,"r")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (0,"x"))) (CVar (1,"l"))) (CVar (2,"r")))] []]),+  CFunc ("RedBlackTree","sort") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"cmp"),CPVar (1,"xs")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","tree2list")) (CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("RedBlackTree","update"))) (CApply (CApply (CApply (CSymbol ("RedBlackTree","empty")) (CLambda [CPVar (2,"_"),CPVar (3,"_")] (CSymbol ("Prelude","False")))) (CSymbol ("Prelude","=="))) (CVar (0,"cmp")))) (CVar (1,"xs"))))] []]),+  CFunc ("RedBlackTree","tree2list") 1 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("RedBlackTree","RedBlackTree") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"t")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","tree2listTree")) (CVar (3,"t")))] []]),+  CFunc ("RedBlackTree","tree2listTree") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (0,"tree")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","t2l")) (CVar (0,"tree"))) (CSymbol ("Prelude","[]")))] [CLocalFunc (CFunc ("RedBlackTree","t2l") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") [],CPVar (1,"es")] [(CSymbol ("Prelude","success"),CVar (1,"es"))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (2,"_"),CPVar (3,"e"),CPVar (4,"l"),CPVar (5,"r")],CPVar (6,"es")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","t2l")) (CVar (4,"l"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"e"))) (CApply (CApply (CSymbol ("RedBlackTree","t2l")) (CVar (5,"r"))) (CVar (6,"es")))))] []]))]]),+  CFunc ("RedBlackTree","update") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e"),CPComb ("RedBlackTree","RedBlackTree") [CPVar (1,"eqIns"),CPVar (2,"eqLk"),CPVar (3,"lt"),CPVar (4,"t")]] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","RedBlackTree")) (CVar (1,"eqIns"))) (CVar (2,"eqLk"))) (CVar (3,"lt"))) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","updateTree")) (CVar (1,"eqIns"))) (CVar (3,"lt"))) (CVar (0,"e"))) (CVar (4,"t"))))] []]),+  CFunc ("RedBlackTree","updateTree") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","Tree") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"eq"),CPVar (1,"lt"),CPVar (2,"e"),CPVar (3,"t")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("RedBlackTree","Tree") [CPVar (4,"_"),CPVar (5,"e2"),CPVar (6,"l"),CPVar (7,"r")]) (CApply (CSymbol ("RedBlackTree","upd")) (CVar (3,"t"))) []] (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Black"))) (CVar (5,"e2"))) (CVar (6,"l"))) (CVar (7,"r"))))] [CLocalFunc (CFunc ("RedBlackTree","upd") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("RedBlackTree","Empty") []] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CSymbol ("RedBlackTree","Red"))) (CVar (2,"e"))) (CSymbol ("RedBlackTree","Empty"))) (CSymbol ("RedBlackTree","Empty")))] [],CRule [CPComb ("RedBlackTree","Tree") [CPVar (4,"c"),CPVar (5,"e2"),CPVar (6,"l"),CPVar (7,"r")]] [(CApply (CApply (CVar (0,"eq")) (CVar (2,"e"))) (CVar (5,"e2")),CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (4,"c"))) (CVar (2,"e"))) (CVar (6,"l"))) (CVar (7,"r"))),(CApply (CApply (CVar (1,"lt")) (CVar (2,"e"))) (CVar (5,"e2")),CApply (CSymbol ("RedBlackTree","balanceL")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (4,"c"))) (CVar (5,"e2"))) (CApply (CSymbol ("RedBlackTree","upd")) (CVar (6,"l")))) (CVar (7,"r")))),(CSymbol ("Prelude","otherwise"),CApply (CSymbol ("RedBlackTree","balanceR")) (CApply (CApply (CApply (CApply (CSymbol ("RedBlackTree","Tree")) (CVar (4,"c"))) (CVar (5,"e2"))) (CVar (6,"l"))) (CApply (CSymbol ("RedBlackTree","upd")) (CVar (7,"r")))))] []]))]])]+ []
+ src/lib/Curry/Module/.curry/SetRBT.acy view
@@ -0,0 +1,13 @@+CurryProg "SetRBT"+ ["Prelude","RedBlackTree","Maybe"]+ [CTypeSyn ("SetRBT","SetRBT") Public [(0,"a")] (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])]+ [CFunc ("SetRBT","deleteRBT") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","delete"))] []]),+  CFunc ("SetRBT","elemRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","isJust"))) (CApply (CSymbol ("RedBlackTree","lookup")) (CVar (0,"e"))))] []]),+  CFunc ("SetRBT","emptySetRBT") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","empty")) (CSymbol ("Prelude","=="))) (CSymbol ("Prelude","==")))] []]),+  CFunc ("SetRBT","insertMultiRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("RedBlackTree","setInsertEquivalence")) (CSymbol ("Prelude","==")))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("RedBlackTree","update")) (CVar (0,"e")))) (CApply (CSymbol ("RedBlackTree","setInsertEquivalence")) (CLambda [CPVar (1,"_"),CPVar (2,"_")] (CSymbol ("Prelude","False"))))))] []]),+  CFunc ("SetRBT","insertRBT") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","update"))] []]),+  CFunc ("SetRBT","intersectRBT") 2 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"s1"),CPVar (1,"s2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("SetRBT","insertRBT"))) (CApply (CSymbol ("RedBlackTree","newTreeLike")) (CVar (0,"s1")))) (CApply (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (2,"e")] (CApply (CApply (CSymbol ("SetRBT","elemRBT")) (CVar (2,"e"))) (CVar (1,"s2"))))) (CApply (CSymbol ("SetRBT","setRBT2list")) (CVar (0,"s1")))))] []]),+  CFunc ("SetRBT","setRBT2list") 0 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","tree2list"))] []]),+  CFunc ("SetRBT","sortRBT") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","sort"))] []]),+  CFunc ("SetRBT","unionRBT") 2 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]) (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"s1"),CPVar (1,"s2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("SetRBT","insertRBT"))) (CVar (1,"s2"))) (CApply (CSymbol ("SetRBT","setRBT2list")) (CVar (0,"s1"))))] []])]+ []
+ src/lib/Curry/Module/.curry/SetRBT.cy view
@@ -0,0 +1,24 @@+Module "SetRBT"+Nothing+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "RedBlackTree" True (Just "RBT") Nothing)+,(ImportDecl (14,1) "Maybe" False Nothing (Just (Importing (14,14) [(Import (Ident "isJust" 0))])))+,(TypeDecl (19,1) (Ident "SetRBT" 0) [(Ident "a" 0)] (ConstructorType (QualIdent (Just "RBT") (Ident "RedBlackTree" 0)) [(VariableType (Ident "a" 0))]))+,(FunctionDecl (24,1) (Ident "emptySetRBT" 0) [(Equation (24,1) (FunLhs (Ident "emptySetRBT" 0) []) (SimpleRhs (24,15) (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "empty" 0))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0)))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0)))) []))])+,(TypeSig (30,1) [(Ident "elemRBT" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (31,1) (Ident "elemRBT" 0) [(Equation (31,1) (FunLhs (Ident "elemRBT" 0) [(VariablePattern (Ident "e" 4))]) (SimpleRhs (31,13) (InfixApply (Variable (QualIdent (Just "Maybe") (Ident "isJust" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "lookup" 0))) (Variable (QualIdent Nothing (Ident "e" 4)))))) []))])+,(TypeSig (34,1) [(Ident "insertRBT" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (35,1) (Ident "insertRBT" 0) [(Equation (35,1) (FunLhs (Ident "insertRBT" 0) []) (SimpleRhs (35,13) (Variable (QualIdent (Just "RedBlackTree") (Ident "update" 0))) []))])+,(TypeSig (41,1) [(Ident "insertMultiRBT" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (42,1) (Ident "insertMultiRBT" 0) [(Equation (42,1) (FunLhs (Ident "insertMultiRBT" 0) [(VariablePattern (Ident "e" 8))]) (SimpleRhs (42,20) (InfixApply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "setInsertEquivalence" 0))) (Variable (QualIdent (Just "Prelude") (Ident "==" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "update" 0))) (Variable (QualIdent Nothing (Ident "e" 8)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "setInsertEquivalence" 0))) (Paren (Lambda [(VariablePattern (Ident "_" 11)),(VariablePattern (Ident "_" 12))] (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))))) []))])+,(TypeSig (48,1) [(Ident "deleteRBT" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (49,1) (Ident "deleteRBT" 0) [(Equation (49,1) (FunLhs (Ident "deleteRBT" 0) []) (SimpleRhs (49,13) (Variable (QualIdent (Just "RedBlackTree") (Ident "delete" 0))) []))])+,(TypeSig (52,1) [(Ident "setRBT2list" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ListType (VariableType (Ident "a" 0)))))+,(FunctionDecl (53,1) (Ident "setRBT2list" 0) [(Equation (53,1) (FunLhs (Ident "setRBT2list" 0) []) (SimpleRhs (53,15) (Variable (QualIdent (Just "RedBlackTree") (Ident "tree2list" 0))) []))])+,(TypeSig (58,1) [(Ident "unionRBT" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (59,1) (Ident "unionRBT" 0) [(Equation (59,1) (FunLhs (Ident "unionRBT" 0) [(VariablePattern (Ident "s1" 17)),(VariablePattern (Ident "s2" 17))]) (SimpleRhs (59,18) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "SetRBT") (Ident "insertRBT" 0)))) (Variable (QualIdent Nothing (Ident "s2" 17)))) (Paren (Apply (Variable (QualIdent (Just "SetRBT") (Ident "setRBT2list" 0))) (Variable (QualIdent Nothing (Ident "s1" 17)))))) []))])+,(TypeSig (65,1) [(Ident "intersectRBT" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "SetRBT" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (66,1) (Ident "intersectRBT" 0) [(Equation (66,1) (FunLhs (Ident "intersectRBT" 0) [(VariablePattern (Ident "s1" 19)),(VariablePattern (Ident "s2" 19))]) (SimpleRhs (66,22) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "foldr" 0))) (Variable (QualIdent (Just "SetRBT") (Ident "insertRBT" 0)))) (Paren (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "newTreeLike" 0))) (Variable (QualIdent Nothing (Ident "s1" 19)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (Lambda [(VariablePattern (Ident "e" 21))] (Apply (Apply (Variable (QualIdent (Just "SetRBT") (Ident "elemRBT" 0))) (Variable (QualIdent Nothing (Ident "e" 21)))) (Variable (QualIdent Nothing (Ident "s2" 19))))))) (Paren (Apply (Variable (QualIdent (Just "SetRBT") (Ident "setRBT2list" 0))) (Variable (QualIdent Nothing (Ident "s1" 19)))))))) []))])+,(TypeSig (73,1) [(Ident "sortRBT" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (74,1) (Ident "sortRBT" 0) [(Equation (74,1) (FunLhs (Ident "sortRBT" 0) []) (SimpleRhs (74,11) (Variable (QualIdent (Just "RedBlackTree") (Ident "sort" 0))) []))])+]
+ src/lib/Curry/Module/.curry/SetRBT.efc view
@@ -0,0 +1,1 @@+Prog "SetRBT" ["Maybe","Prelude","RedBlackTree"] [TypeSyn ((Nothing,Nothing,"SetRBT","SetRBT")) Public [0] (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0])] [Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])),"SetRBT","emptySetRBT")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"RedBlackTree","empty")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) []])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"SetRBT","elemRBT")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Maybe","isJust")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]))),"RedBlackTree","lookup")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","insertRBT")) 0 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","update")) [])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","insertMultiRBT")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","setInsertEquivalence")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) []],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])) (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","update")) [Var ((Just (TVar 0),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","setInsertEquivalence")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"SetRBT","insertMultiRBT._#lambda2")) []]]])),Func ((Nothing,Just (FuncType (TVar 27) (FuncType (TVar 27) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"SetRBT","insertMultiRBT._#lambda2")) 2 Private (FuncType (TVar 27) (FuncType (TVar 27) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 27),1),(Just (TVar 27),2)] (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) [])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","deleteRBT")) 0 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"RedBlackTree","delete")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"SetRBT","setRBT2list")) 0 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"RedBlackTree","tree2list")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","unionRBT")) 2 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"Prelude","foldr")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","insertRBT")) [],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"SetRBT","setRBT2list")) [],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","intersectRBT")) 2 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1),(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])))),"Prelude","foldr")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]))),"SetRBT","insertRBT")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0])),"RedBlackTree","newTreeLike")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","filter")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"SetRBT","intersectRBT._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),"SetRBT","setRBT2list")) [],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 0]),1))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 46]) (FuncType (TVar 46) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"SetRBT","intersectRBT._#lambda3")) 2 Private (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TVar 46]) (FuncType (TVar 46) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 46]),1),(Just (TVar 46),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 46]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 46]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 46) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 46]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"SetRBT","elemRBT")) [Var ((Just (TVar 46),2))],Var ((Just (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TVar 46]),1))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"SetRBT","sortRBT")) 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"RedBlackTree","sort")) []))] []
+ src/lib/Curry/Module/.curry/SetRBT.fcy view
@@ -0,0 +1,1 @@+Prog "SetRBT" ["Maybe","Prelude","RedBlackTree"] [TypeSyn ("SetRBT","SetRBT") Public [0] (TCons ("RedBlackTree","RedBlackTree") [TVar 0])] [Func ("SetRBT","emptySetRBT") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("RedBlackTree","RedBlackTree") [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("RedBlackTree","empty") [Comb (FuncPartCall 2) ("Prelude","==") [],Comb (FuncPartCall 2) ("Prelude","==") []])),Func ("SetRBT","elemRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Maybe","isJust") [],Comb (FuncPartCall 1) ("RedBlackTree","lookup") [Var 1]])),Func ("SetRBT","insertRBT") 0 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Comb (FuncPartCall 2) ("RedBlackTree","update") [])),Func ("SetRBT","insertMultiRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("RedBlackTree","setInsertEquivalence") [Comb (FuncPartCall 2) ("Prelude","==") []],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("RedBlackTree","update") [Var 1],Comb (FuncPartCall 1) ("RedBlackTree","setInsertEquivalence") [Comb (FuncPartCall 2) ("SetRBT","insertMultiRBT._#lambda2") []]]])),Func ("SetRBT","insertMultiRBT._#lambda2") 2 Private (FuncType (TVar 27) (FuncType (TVar 27) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb ConsCall ("Prelude","False") [])),Func ("SetRBT","deleteRBT") 0 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Comb (FuncPartCall 2) ("RedBlackTree","delete") [])),Func ("SetRBT","setRBT2list") 0 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Comb (FuncPartCall 1) ("RedBlackTree","tree2list") [])),Func ("SetRBT","unionRBT") 2 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb FuncCall ("SetRBT","insertRBT") [],Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("SetRBT","setRBT2list") [],Var 1]])),Func ("SetRBT","intersectRBT") 2 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Prelude","foldr") [Comb FuncCall ("SetRBT","insertRBT") [],Comb FuncCall ("RedBlackTree","newTreeLike") [Var 1],Comb FuncCall ("Prelude","filter") [Comb (FuncPartCall 1) ("SetRBT","intersectRBT._#lambda3") [Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("SetRBT","setRBT2list") [],Var 1]]])),Func ("SetRBT","intersectRBT._#lambda3") 2 Private (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 46]) (FuncType (TVar 46) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("SetRBT","elemRBT") [Var 2],Var 1])),Func ("SetRBT","sortRBT") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Comb (FuncPartCall 2) ("RedBlackTree","sort") []))] []
+ src/lib/Curry/Module/.curry/SetRBT.fint view
@@ -0,0 +1,1 @@+Prog "SetRBT" ["Maybe","Prelude","RedBlackTree"] [TypeSyn ("SetRBT","SetRBT") Public [0] (TCons ("RedBlackTree","RedBlackTree") [TVar 0])] [Func ("SetRBT","emptySetRBT") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("RedBlackTree","RedBlackTree") [TVar 0])) (Rule [] (Var 0)),Func ("SetRBT","elemRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("SetRBT","insertRBT") 0 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("SetRBT","insertMultiRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("SetRBT","deleteRBT") 0 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("SetRBT","setRBT2list") 0 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])) (Rule [] (Var 0)),Func ("SetRBT","unionRBT") 2 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("SetRBT","intersectRBT") 2 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TVar 0]) (TCons ("RedBlackTree","RedBlackTree") [TVar 0]))) (Rule [] (Var 0)),Func ("SetRBT","sortRBT") 0 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/SetRBT.uacy view
@@ -0,0 +1,13 @@+CurryProg "SetRBT"+ ["Prelude","RedBlackTree","Maybe"]+ [CTypeSyn ("SetRBT","SetRBT") Public [(0,"a")] (CTCons ("RedBlackTree","RedBlackTree") [CTVar (0,"a")])]+ [CFunc ("SetRBT","deleteRBT") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","delete"))] []]),+  CFunc ("SetRBT","elemRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Maybe","isJust"))) (CApply (CSymbol ("RedBlackTree","lookup")) (CVar (0,"e"))))] []]),+  CFunc ("SetRBT","emptySetRBT") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("RedBlackTree","empty")) (CSymbol ("Prelude","=="))) (CSymbol ("Prelude","==")))] []]),+  CFunc ("SetRBT","insertMultiRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"e")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("RedBlackTree","setInsertEquivalence")) (CSymbol ("Prelude","==")))) (CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("RedBlackTree","update")) (CVar (0,"e")))) (CApply (CSymbol ("RedBlackTree","setInsertEquivalence")) (CLambda [CPVar (1,"_"),CPVar (2,"_")] (CSymbol ("Prelude","False"))))))] []]),+  CFunc ("SetRBT","insertRBT") 0 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","update"))] []]),+  CFunc ("SetRBT","intersectRBT") 2 Public (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"s1"),CPVar (1,"s2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("SetRBT","insertRBT"))) (CApply (CSymbol ("RedBlackTree","newTreeLike")) (CVar (0,"s1")))) (CApply (CApply (CSymbol ("Prelude","filter")) (CLambda [CPVar (2,"e")] (CApply (CApply (CSymbol ("SetRBT","elemRBT")) (CVar (2,"e"))) (CVar (1,"s2"))))) (CApply (CSymbol ("SetRBT","setRBT2list")) (CVar (0,"s1")))))] []]),+  CFunc ("SetRBT","setRBT2list") 0 Public (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","tree2list"))] []]),+  CFunc ("SetRBT","sortRBT") 0 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","sort"))] []]),+  CFunc ("SetRBT","unionRBT") 2 Public (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CFuncType (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]) (CTCons ("SetRBT","SetRBT") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"s1"),CPVar (1,"s2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","foldr")) (CSymbol ("SetRBT","insertRBT"))) (CVar (1,"s2"))) (CApply (CSymbol ("SetRBT","setRBT2list")) (CVar (0,"s1"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Socket.acy view
@@ -0,0 +1,15 @@+CurryProg "Socket"+ ["Prelude","System","IO"]+ [CType ("Socket","Socket") Public [] []]+ [CFunc ("Socket","connectToSocket") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CRules CFlex [CRule [CPVar (0,"host"),CPVar (1,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_connectToSocket"))) (CVar (0,"host")))) (CVar (1,"port")))] []]),+  CFunc ("Socket","listenOn") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Socket","Socket") []])) (CRules CFlex [CRule [CPVar (0,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Socket","prim_listenOn"))) (CVar (0,"port")))] []]),+  CFunc ("Socket","listenOnFresh") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Socket","Socket") []]]) (CExternal "listenOnFresh"),+  CFunc ("Socket","prim_connectToSocket") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CExternal "prim_connectToSocket"),+  CFunc ("Socket","prim_listenOn") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Socket","Socket") []])) (CExternal "prim_listenOn"),+  CFunc ("Socket","prim_socketAccept") 1 Private (CFuncType (CTCons ("Socket","Socket") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("IO","Handle") []]])) (CExternal "prim_socketAccept"),+  CFunc ("Socket","prim_socketListen") 2 Private (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_socketListen"),+  CFunc ("Socket","prim_waitForSocketAccept") 2 Private (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("IO","Handle") []]]]))) (CExternal "prim_waitForSocketAccept"),+  CFunc ("Socket","socketAccept") 1 Public (CFuncType (CTCons ("Socket","Socket") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("IO","Handle") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_socketAccept"))) (CVar (0,"s")))] []]),+  CFunc ("Socket","socketListen") 2 Public (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"length")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_socketListen"))) (CVar (0,"s")))) (CVar (1,"length")))] []]),+  CFunc ("Socket","waitForSocketAccept") 2 Public (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("IO","Handle") []]]]))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"timeout")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_waitForSocketAccept"))) (CVar (0,"s")))) (CVar (1,"timeout")))] []])]+ []
+ src/lib/Curry/Module/.curry/Socket.cy view
@@ -0,0 +1,29 @@+Module "Socket"+(Just (Exporting (12,14) [(Export (QualIdent Nothing (Ident "Socket" 0))),(Export (QualIdent Nothing (Ident "listenOn" 0))),(Export (QualIdent Nothing (Ident "listenOnFresh" 0))),(Export (QualIdent Nothing (Ident "socketListen" 0))),(Export (QualIdent Nothing (Ident "socketAccept" 0))),(Export (QualIdent Nothing (Ident "waitForSocketAccept" 0))),(Export (QualIdent Nothing (Ident "connectToSocket" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (16,1) "System" False Nothing Nothing)+,(ImportDecl (17,1) "IO" False Nothing (Just (Importing (17,10) [(Import (Ident "Handle" 0))])))+,(DataDecl (20,1) (Ident "Socket" 0) [] [])+,(TypeSig (26,1) [(Ident "listenOn" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Socket" 0)) [])])))+,(FunctionDecl (27,1) (Ident "listenOn" 0) [(Equation (27,1) (FunLhs (Ident "listenOn" 0) [(VariablePattern (Ident "port" 2))]) (SimpleRhs (27,17) (InfixApply (Variable (QualIdent (Just "Socket") (Ident "prim_listenOn" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "port" 2)))) []))])+,(TypeSig (29,1) [(Ident "prim_listenOn" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Socket" 0)) [])])))+,(FlatExternalDecl (30,1) [(Ident "prim_listenOn" 0)])+,(TypeSig (34,1) [(Ident "listenOnFresh" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Socket" 0)) [])])]))+,(FlatExternalDecl (35,1) [(Ident "listenOnFresh" 0)])+,(TypeSig (39,1) [(Ident "socketListen" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Socket" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (40,1) (Ident "socketListen" 0) [(Equation (40,1) (FunLhs (Ident "socketListen" 0) [(VariablePattern (Ident "s" 4)),(VariablePattern (Ident "length" 4))]) (SimpleRhs (40,25) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Socket") (Ident "prim_socketListen" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 4))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "length" 4)))) []))])+,(TypeSig (42,1) [(Ident "prim_socketListen" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Socket" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FlatExternalDecl (43,1) [(Ident "prim_socketListen" 0)])+,(TypeSig (51,1) [(Ident "socketAccept" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Socket" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])])))+,(FunctionDecl (52,1) (Ident "socketAccept" 0) [(Equation (52,1) (FunLhs (Ident "socketAccept" 0) [(VariablePattern (Ident "s" 6))]) (SimpleRhs (52,18) (InfixApply (Variable (QualIdent (Just "Socket") (Ident "prim_socketAccept" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 6)))) []))])+,(TypeSig (54,1) [(Ident "prim_socketAccept" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Socket" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])])))+,(FlatExternalDecl (55,1) [(Ident "prim_socketAccept" 0)])+,(TypeSig (66,1) [(Ident "waitForSocketAccept" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Socket" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])])]))))+,(FunctionDecl (67,1) (Ident "waitForSocketAccept" 0) [(Equation (67,1) (FunLhs (Ident "waitForSocketAccept" 0) [(VariablePattern (Ident "s" 8)),(VariablePattern (Ident "timeout" 8))]) (SimpleRhs (67,33) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Socket") (Ident "prim_waitForSocketAccept" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 8))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "timeout" 8)))) []))])+,(TypeSig (69,1) [(Ident "prim_waitForSocketAccept" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Socket" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])])])]))))+,(FlatExternalDecl (70,1) [(Ident "prim_waitForSocketAccept" 0)])+,(TypeSig (81,1) [(Ident "connectToSocket" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])]))))+,(FunctionDecl (82,1) (Ident "connectToSocket" 0) [(Equation (82,1) (FunLhs (Ident "connectToSocket" 0) [(VariablePattern (Ident "host" 10)),(VariablePattern (Ident "port" 10))]) (SimpleRhs (82,29) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Socket") (Ident "prim_connectToSocket" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "host" 10))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "port" 10)))) []))])+,(TypeSig (84,1) [(Ident "prim_connectToSocket" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Handle" 0)) [])]))))+,(FlatExternalDecl (85,1) [(Ident "prim_connectToSocket" 0)])+]
+ src/lib/Curry/Module/.curry/Socket.efc view
@@ -0,0 +1,1 @@+Prog "Socket" ["IO","Prelude","System"] [Type ((Nothing,Nothing,"Socket","Socket")) Public [] []] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Socket","Socket") []])),"Socket","listenOn")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Socket","Socket")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Socket","Socket") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Socket","Socket") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Socket","Socket") []])),"Socket","prim_listenOn")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Socket","Socket") []])),"Socket","prim_listenOn")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Socket","Socket")) []])) (External "Socket.prim_listenOn"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","Int") [],TCons (Nothing,Nothing,"Socket","Socket") []]]),"Socket","listenOnFresh")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Socket","Socket")) []]]) (External "Socket.listenOnFresh"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Socket","socketListen")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Socket","Socket")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Socket","Socket") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))) (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Socket","prim_socketListen")) [],Var ((Just (TCons (Nothing,Nothing,"Socket","Socket") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Socket","prim_socketListen")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Socket","Socket")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (External "Socket.prim_socketListen"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]])),"Socket","socketAccept")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Socket","Socket")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"IO","Handle")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Socket","Socket") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]])) (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]])),"Socket","prim_socketAccept")) [],Var ((Just (TCons (Nothing,Nothing,"Socket","Socket") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]])),"Socket","prim_socketAccept")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Socket","Socket")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"IO","Handle")) []]])) (External "Socket.prim_socketAccept"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]]))),"Socket","waitForSocketAccept")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Socket","Socket")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"IO","Handle")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Socket","Socket") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]]))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]]))) (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]]))),"Socket","prim_waitForSocketAccept")) [],Var ((Just (TCons (Nothing,Nothing,"Socket","Socket") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Socket","Socket") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"IO","Handle") []]]]))),"Socket","prim_waitForSocketAccept")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Socket","Socket")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"IO","Handle")) []]]]))) (External "Socket.prim_waitForSocketAccept"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"Socket","connectToSocket")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IO","Handle")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"Prelude","$#")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"Socket","prim_connectToSocket")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"IO","Handle") []]))),"Socket","prim_connectToSocket")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"IO","Handle")) []]))) (External "Socket.prim_connectToSocket")] []
+ src/lib/Curry/Module/.curry/Socket.fcy view
@@ -0,0 +1,1 @@+Prog "Socket" ["IO","Prelude","System"] [Type ("Socket","Socket") Public [] []] [Func ("Socket","listenOn") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Socket","Socket") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Socket","prim_listenOn") [],Var 1])),Func ("Socket","prim_listenOn") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Socket","Socket") []])) (External "Socket.prim_listenOn"),Func ("Socket","listenOnFresh") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Socket","Socket") []]]) (External "Socket.listenOnFresh"),Func ("Socket","socketListen") 2 Public (FuncType (TCons ("Socket","Socket") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Socket","prim_socketListen") [],Var 1],Var 2])),Func ("Socket","prim_socketListen") 2 Private (FuncType (TCons ("Socket","Socket") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (External "Socket.prim_socketListen"),Func ("Socket","socketAccept") 1 Public (FuncType (TCons ("Socket","Socket") []) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("IO","Handle") []]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Socket","prim_socketAccept") [],Var 1])),Func ("Socket","prim_socketAccept") 1 Private (FuncType (TCons ("Socket","Socket") []) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("IO","Handle") []]])) (External "Socket.prim_socketAccept"),Func ("Socket","waitForSocketAccept") 2 Public (FuncType (TCons ("Socket","Socket") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("IO","Handle") []]]]))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Socket","prim_waitForSocketAccept") [],Var 1],Var 2])),Func ("Socket","prim_waitForSocketAccept") 2 Private (FuncType (TCons ("Socket","Socket") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("IO","Handle") []]]]))) (External "Socket.prim_waitForSocketAccept"),Func ("Socket","connectToSocket") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("IO","Handle") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$#") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Socket","prim_connectToSocket") [],Var 1],Var 2])),Func ("Socket","prim_connectToSocket") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("IO","Handle") []]))) (External "Socket.prim_connectToSocket")] []
+ src/lib/Curry/Module/.curry/Socket.fint view
@@ -0,0 +1,1 @@+Prog "Socket" ["IO","Prelude","System"] [Type ("Socket","Socket") Public [] []] [Func ("Socket","listenOn") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Socket","Socket") []])) (Rule [] (Var 0)),Func ("Socket","listenOnFresh") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","Int") [],TCons ("Socket","Socket") []]]) (External "Socket.listenOnFresh"),Func ("Socket","socketListen") 2 Public (FuncType (TCons ("Socket","Socket") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("Socket","socketAccept") 1 Public (FuncType (TCons ("Socket","Socket") []) (TCons ("Prelude","IO") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("IO","Handle") []]])) (Rule [] (Var 0)),Func ("Socket","waitForSocketAccept") 2 Public (FuncType (TCons ("Socket","Socket") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("IO","Handle") []]]]))) (Rule [] (Var 0)),Func ("Socket","connectToSocket") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("IO","Handle") []]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Socket.uacy view
@@ -0,0 +1,15 @@+CurryProg "Socket"+ ["Prelude","System","IO"]+ [CType ("Socket","Socket") Public [] []]+ [CFunc ("Socket","connectToSocket") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CRules CFlex [CRule [CPVar (0,"host"),CPVar (1,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_connectToSocket"))) (CVar (0,"host")))) (CVar (1,"port")))] []]),+  CFunc ("Socket","listenOn") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Socket","Socket") []])) (CRules CFlex [CRule [CPVar (0,"port")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Socket","prim_listenOn"))) (CVar (0,"port")))] []]),+  CFunc ("Socket","listenOnFresh") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","Int") [],CTCons ("Socket","Socket") []]]) (CExternal "listenOnFresh"),+  CFunc ("Socket","prim_connectToSocket") 2 Private (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("IO","Handle") []]))) (CExternal "prim_connectToSocket"),+  CFunc ("Socket","prim_listenOn") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Socket","Socket") []])) (CExternal "prim_listenOn"),+  CFunc ("Socket","prim_socketAccept") 1 Private (CFuncType (CTCons ("Socket","Socket") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("IO","Handle") []]])) (CExternal "prim_socketAccept"),+  CFunc ("Socket","prim_socketListen") 2 Private (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CExternal "prim_socketListen"),+  CFunc ("Socket","prim_waitForSocketAccept") 2 Private (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("IO","Handle") []]]]))) (CExternal "prim_waitForSocketAccept"),+  CFunc ("Socket","socketAccept") 1 Public (CFuncType (CTCons ("Socket","Socket") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("IO","Handle") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_socketAccept"))) (CVar (0,"s")))] []]),+  CFunc ("Socket","socketListen") 2 Public (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"length")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_socketListen"))) (CVar (0,"s")))) (CVar (1,"length")))] []]),+  CFunc ("Socket","waitForSocketAccept") 2 Public (CFuncType (CTCons ("Socket","Socket") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("IO","Handle") []]]]))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"timeout")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Socket","prim_waitForSocketAccept"))) (CVar (0,"s")))) (CVar (1,"timeout")))] []])]+ []
+ src/lib/Curry/Module/.curry/Sort.acy view
@@ -0,0 +1,16 @@+CurryProg "Sort"+ ["Prelude","Char"]+ []+ [CFunc ("Sort","cmpChar") 2 Public (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"c1"),CPVar (1,"c2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c1"))) (CVar (1,"c2")))) (CSymbol ("Prelude","EQ"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c1")))) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c2"))))) (CSymbol ("Prelude","LT"))) (CSymbol ("Prelude","GT"))))] []]),+  CFunc ("Sort","cmpList") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Ordering") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Ordering") [])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","EQ"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPVar (4,"_"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPVar (7,"cmp"),CPComb ("Prelude",":") [CPVar (8,"x"),CPVar (9,"xs")],CPComb ("Prelude",":") [CPVar (10,"y"),CPVar (11,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CVar (7,"cmp")) (CVar (8,"x"))) (CVar (10,"y")))) (CSymbol ("Prelude","EQ")),CApply (CApply (CApply (CSymbol ("Sort","cmpList")) (CVar (7,"cmp"))) (CVar (9,"xs"))) (CVar (11,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (7,"cmp")) (CVar (8,"x"))) (CVar (10,"y")))] []]),+  CFunc ("Sort","cmpString") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","cmpList")) (CSymbol ("Sort","cmpChar")))] []]),+  CFunc ("Sort","leqChar") 2 Public (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"c1"),CPVar (1,"c2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c1")))) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c2"))))] []]),+  CFunc ("Sort","leqCharIgnoreCase") 2 Public (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"c1"),CPVar (1,"c2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CApply (CSymbol ("Char","toUpper")) (CVar (0,"c1"))))) (CApply (CSymbol ("Prelude","ord")) (CApply (CSymbol ("Char","toUpper")) (CVar (1,"c2")))))] []]),+  CFunc ("Sort","leqLexGerman") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude",":") [CPVar (5,"y"),CPVar (6,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"x'"))) (CVar (8,"y'")),CApply (CApply (CSymbol ("Sort","leqLexGerman")) (CVar (4,"xs"))) (CVar (6,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","<")) (CVar (7,"x'"))) (CVar (8,"y'")))] [CLocalPat (CPVar (7,"x'")) (CApply (CSymbol ("Sort","glex")) (CApply (CSymbol ("Prelude","ord")) (CVar (3,"x")))) [],CLocalPat (CPVar (8,"y'")) (CApply (CSymbol ("Sort","glex")) (CApply (CSymbol ("Prelude","ord")) (CVar (5,"y")))) [],CLocalFunc (CFunc ("Sort","glex") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPVar (9,"o")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (9,"o"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (9,"o"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'Z')))),CApply (CApply (CSymbol ("Prelude","+")) (CVar (9,"o"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a')))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 228)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 246)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'o'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 252)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'u'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 196)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 214)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'o'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 220)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'u'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 223)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 's'))),(CSymbol ("Prelude","otherwise"),CVar (9,"o"))] []]))]]),+  CFunc ("Sort","leqList") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"_"),CPVar (4,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPVar (5,"leq"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPComb ("Prelude",":") [CPVar (8,"y"),CPVar (9,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x"))) (CVar (8,"y")),CApply (CApply (CApply (CSymbol ("Sort","leqList")) (CVar (5,"leq"))) (CVar (7,"xs"))) (CVar (9,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (5,"leq")) (CVar (6,"x"))) (CVar (8,"y")))] []]),+  CFunc ("Sort","leqString") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqChar")))] []]),+  CFunc ("Sort","leqStringIgnoreCase") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqCharIgnoreCase")))] []]),+  CFunc ("Sort","merge") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CVar (1,"ys"))] [],CRule [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x"))) (CVar (4,"xs")))] [],CRule [CPVar (5,"leq"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPComb ("Prelude",":") [CPVar (8,"y"),CPVar (9,"ys")]] [(CApply (CApply (CVar (5,"leq")) (CVar (6,"x"))) (CVar (8,"y")),CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (5,"leq"))) (CVar (7,"xs"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (8,"y"))) (CVar (9,"ys"))))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (8,"y"))) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (5,"leq"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CVar (7,"xs")))) (CVar (9,"ys"))))] []]),+  CFunc ("Sort","mergeSort") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"leq"),CPVar (1,"zs")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","mergeLists")) (CApply (CSymbol ("Sort","genRuns")) (CVar (1,"zs"))))] [CLocalFunc (CFunc ("Sort","genRuns") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"_79")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (1,"_79")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CApply (CApply (CVar (0,"leq")) (CVar (3,"x1"))) (CVar (4,"x2")),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x1"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x2"))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Sort","genRuns")) (CVar (5,"xs")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x2"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x1"))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Sort","genRuns")) (CVar (5,"xs"))))] []])),CLocalFunc (CFunc ("Sort","mergeLists") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (1,"_79")]]) (CTCons ("Prelude","[]") [CTVar (1,"_79")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (2,"x"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","mergeLists")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (0,"leq"))) (CVar (3,"x1"))) (CVar (4,"x2")))) (CApply (CSymbol ("Sort","mergePairs")) (CVar (5,"xs")))))] []])),CLocalFunc (CFunc ("Sort","mergePairs") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (1,"_79")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTVar (1,"_79")]])) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (0,"leq"))) (CVar (3,"x1"))) (CVar (4,"x2")))) (CApply (CSymbol ("Sort","mergePairs")) (CVar (5,"xs"))))] []]))]]),+  CFunc ("Sort","quickSort") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"leq"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"l"),CPVar (5,"r")]) (CApply (CApply (CSymbol ("Sort","split")) (CVar (2,"x"))) (CVar (3,"xs"))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Sort","quickSort")) (CVar (1,"leq"))) (CVar (4,"l")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Sort","quickSort")) (CVar (1,"leq"))) (CVar (5,"r"))))))] [CLocalFunc (CFunc ("Sort","split") 2 Private (CFuncType (CTVar (1,"_8")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"_8")]) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"_8")],CTCons ("Prelude","[]") [CTVar (1,"_8")]]))) (CRules CFlex [CRule [CPVar (4,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (5,"e"),CPComb ("Prelude",":") [CPVar (6,"y"),CPVar (7,"ys")]] [(CApply (CApply (CVar (1,"leq")) (CVar (6,"y"))) (CVar (5,"e")),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"y"))) (CVar (8,"l")))) (CVar (9,"r"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (8,"l"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"y"))) (CVar (9,"r"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (8,"l"),CPVar (9,"r")]) (CApply (CApply (CSymbol ("Sort","split")) (CVar (5,"e"))) (CVar (7,"ys"))) []]]))]])]+ []
+ src/lib/Curry/Module/.curry/Sort.cy view
@@ -0,0 +1,29 @@+Module "Sort"+(Just (Exporting (9,12) [(Export (QualIdent Nothing (Ident "quickSort" 0))),(Export (QualIdent Nothing (Ident "mergeSort" 0))),(Export (QualIdent Nothing (Ident "cmpChar" 0))),(Export (QualIdent Nothing (Ident "cmpList" 0))),(Export (QualIdent Nothing (Ident "cmpString" 0))),(Export (QualIdent Nothing (Ident "leqChar" 0))),(Export (QualIdent Nothing (Ident "leqCharIgnoreCase" 0))),(Export (QualIdent Nothing (Ident "leqList" 0))),(Export (QualIdent Nothing (Ident "leqString" 0))),(Export (QualIdent Nothing (Ident "leqStringIgnoreCase" 0))),(Export (QualIdent Nothing (Ident "leqLexGerman" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (14,1) "Char" False Nothing Nothing)+,(TypeSig (17,1) [(Ident "quickSort" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (18,1) (Ident "quickSort" 0) [(Equation (18,1) (FunLhs (Ident "quickSort" 0) [(VariablePattern (Ident "_" 3)),(ListPattern [])]) (SimpleRhs (18,24) (List []) [])),(Equation (19,1) (FunLhs (Ident "quickSort" 0) [(VariablePattern (Ident "leq" 5)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 5)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 5))))]) (SimpleRhs (19,24) (Let [(PatternDecl (19,28) (TuplePattern [(VariablePattern (Ident "l" 13)),(VariablePattern (Ident "r" 13))]) (SimpleRhs (19,36) (Apply (Apply (Variable (QualIdent Nothing (Ident "split" 6))) (Variable (QualIdent Nothing (Ident "x" 5)))) (Variable (QualIdent Nothing (Ident "xs" 5)))) []))] (InfixApply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "quickSort" 0))) (Variable (QualIdent Nothing (Ident "leq" 5)))) (Variable (QualIdent Nothing (Ident "l" 13)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 5))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "quickSort" 0))) (Variable (QualIdent Nothing (Ident "leq" 5)))) (Variable (QualIdent Nothing (Ident "r" 13)))))))) [(FunctionDecl (22,3) (Ident "split" 6) [(Equation (22,3) (FunLhs (Ident "split" 6) [(VariablePattern (Ident "_" 8)),(ListPattern [])]) (SimpleRhs (22,16) (Tuple [(List []),(List [])]) [])),(Equation (23,3) (FunLhs (Ident "split" 6) [(VariablePattern (Ident "e" 10)),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 10)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 10))))]) (GuardedRhs [(CondExpr (23,18) (Apply (Apply (Variable (QualIdent Nothing (Ident "leq" 5))) (Variable (QualIdent Nothing (Ident "y" 10)))) (Variable (QualIdent Nothing (Ident "e" 10)))) (Tuple [(InfixApply (Variable (QualIdent Nothing (Ident "y" 10))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "l" 11)))),(Variable (QualIdent Nothing (Ident "r" 11)))])),(CondExpr (24,18) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "l" 11))),(InfixApply (Variable (QualIdent Nothing (Ident "y" 10))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "r" 11))))]))] [(PatternDecl (25,21) (TuplePattern [(VariablePattern (Ident "l" 11)),(VariablePattern (Ident "r" 11))]) (SimpleRhs (25,29) (Apply (Apply (Variable (QualIdent Nothing (Ident "split" 6))) (Variable (QualIdent Nothing (Ident "e" 10)))) (Variable (QualIdent Nothing (Ident "ys" 10)))) []))]))])]))])+,(TypeSig (29,1) [(Ident "mergeSort" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (30,1) (Ident "mergeSort" 0) [(Equation (30,1) (FunLhs (Ident "mergeSort" 0) [(VariablePattern (Ident "leq" 15)),(VariablePattern (Ident "zs" 15))]) (SimpleRhs (30,21) (Apply (Variable (QualIdent Nothing (Ident "mergeLists" 16))) (Paren (Apply (Variable (QualIdent Nothing (Ident "genRuns" 16))) (Variable (QualIdent Nothing (Ident "zs" 15)))))) [(FunctionDecl (33,3) (Ident "genRuns" 16) [(Equation (33,3) (FunLhs (Ident "genRuns" 16) [(ListPattern [])]) (SimpleRhs (33,31) (List []) [])),(Equation (34,3) (FunLhs (Ident "genRuns" 16) [(ListPattern [(VariablePattern (Ident "x" 19))])]) (SimpleRhs (34,31) (List [(List [(Variable (QualIdent Nothing (Ident "x" 19)))])]) [])),(Equation (35,3) (FunLhs (Ident "genRuns" 16) [(ParenPattern (InfixPattern (VariablePattern (Ident "x1" 21)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x2" 21)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 21)))))]) (GuardedRhs [(CondExpr (35,22) (Apply (Apply (Variable (QualIdent Nothing (Ident "leq" 15))) (Variable (QualIdent Nothing (Ident "x1" 21)))) (Variable (QualIdent Nothing (Ident "x2" 21)))) (InfixApply (List [(Variable (QualIdent Nothing (Ident "x1" 21))),(Variable (QualIdent Nothing (Ident "x2" 21)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "genRuns" 16))) (Variable (QualIdent Nothing (Ident "xs" 21)))))),(CondExpr (36,22) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (List [(Variable (QualIdent Nothing (Ident "x2" 21))),(Variable (QualIdent Nothing (Ident "x1" 21)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "genRuns" 16))) (Variable (QualIdent Nothing (Ident "xs" 21))))))] []))]),(FunctionDecl (39,3) (Ident "mergeLists" 16) [(Equation (39,3) (FunLhs (Ident "mergeLists" 16) [(ListPattern [])]) (SimpleRhs (39,28) (List []) [])),(Equation (40,3) (FunLhs (Ident "mergeLists" 16) [(ListPattern [(VariablePattern (Ident "x" 25))])]) (SimpleRhs (40,28) (Variable (QualIdent Nothing (Ident "x" 25))) [])),(Equation (41,3) (FunLhs (Ident "mergeLists" 16) [(ParenPattern (InfixPattern (VariablePattern (Ident "x1" 27)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x2" 27)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 27)))))]) (SimpleRhs (41,28) (Apply (Variable (QualIdent Nothing (Ident "mergeLists" 16))) (Paren (InfixApply (Apply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "merge" 0))) (Variable (QualIdent Nothing (Ident "leq" 15)))) (Variable (QualIdent Nothing (Ident "x1" 27)))) (Variable (QualIdent Nothing (Ident "x2" 27)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "mergePairs" 16))) (Variable (QualIdent Nothing (Ident "xs" 27))))))) []))]),(FunctionDecl (43,3) (Ident "mergePairs" 16) [(Equation (43,3) (FunLhs (Ident "mergePairs" 16) [(ListPattern [])]) (SimpleRhs (43,28) (List []) [])),(Equation (44,3) (FunLhs (Ident "mergePairs" 16) [(ListPattern [(VariablePattern (Ident "x" 31))])]) (SimpleRhs (44,28) (List [(Variable (QualIdent Nothing (Ident "x" 31)))]) [])),(Equation (45,3) (FunLhs (Ident "mergePairs" 16) [(ParenPattern (InfixPattern (VariablePattern (Ident "x1" 33)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "x2" 33)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 33)))))]) (SimpleRhs (45,28) (InfixApply (Apply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "merge" 0))) (Variable (QualIdent Nothing (Ident "leq" 15)))) (Variable (QualIdent Nothing (Ident "x1" 33)))) (Variable (QualIdent Nothing (Ident "x2" 33)))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Variable (QualIdent Nothing (Ident "mergePairs" 16))) (Variable (QualIdent Nothing (Ident "xs" 33))))) []))])]))])+,(TypeSig (50,1) [(Ident "merge" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))))+,(FunctionDecl (51,1) (Ident "merge" 0) [(Equation (51,1) (FunLhs (Ident "merge" 0) [(VariablePattern (Ident "_" 36)),(ListPattern []),(VariablePattern (Ident "ys" 35))]) (SimpleRhs (51,23) (Variable (QualIdent Nothing (Ident "ys" 35))) [])),(Equation (52,1) (FunLhs (Ident "merge" 0) [(VariablePattern (Ident "_" 39)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 38)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 38)))),(ListPattern [])]) (SimpleRhs (52,23) (InfixApply (Variable (QualIdent Nothing (Ident "x" 38))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 38)))) [])),(Equation (53,1) (FunLhs (Ident "merge" 0) [(VariablePattern (Ident "leq" 41)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 41)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 41)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 41)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 41))))]) (GuardedRhs [(CondExpr (53,25) (Apply (Apply (Variable (QualIdent Nothing (Ident "leq" 41))) (Variable (QualIdent Nothing (Ident "x" 41)))) (Variable (QualIdent Nothing (Ident "y" 41)))) (InfixApply (Variable (QualIdent Nothing (Ident "x" 41))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "merge" 0))) (Variable (QualIdent Nothing (Ident "leq" 41)))) (Variable (QualIdent Nothing (Ident "xs" 41)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 41))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "ys" 41)))))))),(CondExpr (54,25) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "y" 41))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "merge" 0))) (Variable (QualIdent Nothing (Ident "leq" 41)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "x" 41))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "xs" 41)))))) (Variable (QualIdent Nothing (Ident "ys" 41))))))] []))])+,(TypeSig (61,1) [(Ident "leqList" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))))+,(FunctionDecl (62,1) (Ident "leqList" 0) [(Equation (62,1) (FunLhs (Ident "leqList" 0) [(VariablePattern (Ident "_" 44)),(ListPattern []),(VariablePattern (Ident "_" 45))]) (SimpleRhs (62,29) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (63,1) (FunLhs (Ident "leqList" 0) [(VariablePattern (Ident "_" 48)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 49)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 50)))),(ListPattern [])]) (SimpleRhs (63,29) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (64,1) (FunLhs (Ident "leqList" 0) [(VariablePattern (Ident "leq" 52)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 52)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 52)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 52)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 52))))]) (GuardedRhs [(CondExpr (64,27) (InfixApply (Variable (QualIdent Nothing (Ident "x" 52))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "y" 52)))) (Apply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "leqList" 0))) (Variable (QualIdent Nothing (Ident "leq" 52)))) (Variable (QualIdent Nothing (Ident "xs" 52)))) (Variable (QualIdent Nothing (Ident "ys" 52))))),(CondExpr (65,27) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "leq" 52))) (Variable (QualIdent Nothing (Ident "x" 52)))) (Variable (QualIdent Nothing (Ident "y" 52)))))] []))])+,(TypeSig (68,1) [(Ident "cmpList" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ArrowType (ListType (VariableType (Ident "a" 0))) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) [])))))+,(FunctionDecl (69,1) (Ident "cmpList" 0) [(Equation (69,1) (FunLhs (Ident "cmpList" 0) [(VariablePattern (Ident "_" 55)),(ListPattern []),(ListPattern [])]) (SimpleRhs (69,29) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0))) [])),(Equation (70,1) (FunLhs (Ident "cmpList" 0) [(VariablePattern (Ident "_" 58)),(ListPattern []),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 59)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 60))))]) (SimpleRhs (70,29) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) [])),(Equation (71,1) (FunLhs (Ident "cmpList" 0) [(VariablePattern (Ident "_" 63)),(ParenPattern (InfixPattern (VariablePattern (Ident "_" 64)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 65)))),(ListPattern [])]) (SimpleRhs (71,29) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))) [])),(Equation (72,1) (FunLhs (Ident "cmpList" 0) [(VariablePattern (Ident "cmp" 67)),(ParenPattern (InfixPattern (VariablePattern (Ident "x" 67)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 67)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 67)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 67))))]) (GuardedRhs [(CondExpr (72,27) (InfixApply (Apply (Apply (Variable (QualIdent Nothing (Ident "cmp" 67))) (Variable (QualIdent Nothing (Ident "x" 67)))) (Variable (QualIdent Nothing (Ident "y" 67)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0)))) (Apply (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "cmpList" 0))) (Variable (QualIdent Nothing (Ident "cmp" 67)))) (Variable (QualIdent Nothing (Ident "xs" 67)))) (Variable (QualIdent Nothing (Ident "ys" 67))))),(CondExpr (73,27) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "cmp" 67))) (Variable (QualIdent Nothing (Ident "x" 67)))) (Variable (QualIdent Nothing (Ident "y" 67)))))] []))])+,(TypeSig (76,1) [(Ident "leqChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (77,1) (Ident "leqChar" 0) [(Equation (77,1) (FunLhs (Ident "leqChar" 0) [(VariablePattern (Ident "c1" 69)),(VariablePattern (Ident "c2" 69))]) (SimpleRhs (77,17) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c1" 69)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c2" 69))))) []))])+,(TypeSig (80,1) [(Ident "cmpChar" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (81,1) (Ident "cmpChar" 0) [(Equation (81,1) (FunLhs (Ident "cmpChar" 0) [(VariablePattern (Ident "c1" 71)),(VariablePattern (Ident "c2" 71))]) (SimpleRhs (81,17) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "c1" 71))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "c2" 71)))) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0))) (IfThenElse (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c1" 71)))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "c2" 71))))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0))))) []))])+,(TypeSig (84,1) [(Ident "leqCharIgnoreCase" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (85,1) (Ident "leqCharIgnoreCase" 0) [(Equation (85,1) (FunLhs (Ident "leqCharIgnoreCase" 0) [(VariablePattern (Ident "c1" 73)),(VariablePattern (Ident "c2" 73))]) (SimpleRhs (85,27) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Paren (Apply (Variable (QualIdent (Just "Char") (Ident "toUpper" 0))) (Variable (QualIdent Nothing (Ident "c1" 73)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Paren (Apply (Variable (QualIdent (Just "Char") (Ident "toUpper" 0))) (Variable (QualIdent Nothing (Ident "c2" 73))))))) []))])+,(TypeSig (88,1) [(Ident "leqString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (89,1) (Ident "leqString" 0) [(Equation (89,1) (FunLhs (Ident "leqString" 0) []) (SimpleRhs (89,13) (Apply (Variable (QualIdent (Just "Sort") (Ident "leqList" 0))) (Variable (QualIdent (Just "Sort") (Ident "leqChar" 0)))) []))])+,(TypeSig (92,1) [(Ident "cmpString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (93,1) (Ident "cmpString" 0) [(Equation (93,1) (FunLhs (Ident "cmpString" 0) []) (SimpleRhs (93,13) (Apply (Variable (QualIdent (Just "Sort") (Ident "cmpList" 0))) (Variable (QualIdent (Just "Sort") (Ident "cmpChar" 0)))) []))])+,(TypeSig (96,1) [(Ident "leqStringIgnoreCase" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (97,1) (Ident "leqStringIgnoreCase" 0) [(Equation (97,1) (FunLhs (Ident "leqStringIgnoreCase" 0) []) (SimpleRhs (97,23) (Apply (Variable (QualIdent (Just "Sort") (Ident "leqList" 0))) (Variable (QualIdent (Just "Sort") (Ident "leqCharIgnoreCase" 0)))) []))])+,(TypeSig (102,1) [(Ident "leqLexGerman" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (103,1) (Ident "leqLexGerman" 0) [(Equation (103,1) (FunLhs (Ident "leqLexGerman" 0) [(ListPattern []),(VariablePattern (Ident "_" 82))]) (SimpleRhs (103,25) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0))) [])),(Equation (104,1) (FunLhs (Ident "leqLexGerman" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "_" 85)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "_" 86)))),(ListPattern [])]) (SimpleRhs (104,25) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0))) [])),(Equation (105,1) (FunLhs (Ident "leqLexGerman" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 88)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 88)))),(ParenPattern (InfixPattern (VariablePattern (Ident "y" 88)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "ys" 88))))]) (GuardedRhs [(CondExpr (105,28) (InfixApply (Variable (QualIdent Nothing (Ident "x'" 89))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Variable (QualIdent Nothing (Ident "y'" 89)))) (Apply (Apply (Variable (QualIdent (Just "Sort") (Ident "leqLexGerman" 0))) (Variable (QualIdent Nothing (Ident "xs" 88)))) (Variable (QualIdent Nothing (Ident "ys" 88))))),(CondExpr (106,28) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "x'" 89))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "y'" 89)))))] [(PatternDecl (108,5) (VariablePattern (Ident "x'" 89)) (SimpleRhs (108,10) (Apply (Variable (QualIdent Nothing (Ident "glex" 89))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "x" 88)))))) [])),(PatternDecl (109,5) (VariablePattern (Ident "y'" 89)) (SimpleRhs (109,10) (Apply (Variable (QualIdent Nothing (Ident "glex" 89))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "y" 88)))))) [])),(FunctionDecl (111,5) (Ident "glex" 89) [(Equation (111,5) (FunLhs (Ident "glex" 89) [(VariablePattern (Ident "o" 92))]) (GuardedRhs [(CondExpr (111,12) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident ">=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A')))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'Z'))))) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a'))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'A'))))))),(CondExpr (112,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 94) 228))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))),(CondExpr (113,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 95) 246))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'o')))),(CondExpr (114,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 96) 252))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'u')))),(CondExpr (115,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 97) 196))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'a')))),(CondExpr (116,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 98) 214))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'o')))),(CondExpr (117,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 99) 220))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 'u')))),(CondExpr (118,12) (InfixApply (Variable (QualIdent Nothing (Ident "o" 92))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 100) 223))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char 's')))),(CondExpr (119,12) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Variable (QualIdent Nothing (Ident "o" 92))))] []))])]))])+]
+ src/lib/Curry/Module/.curry/Sort.efc view
@@ -0,0 +1,1 @@+Prog "Sort" ["Char","Prelude"] [] [Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Sort","quickSort")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4)]) (Let [((Just (TVar 13),5),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 15) (FuncType (TVar 15) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 15) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 15],TCons (Nothing,Nothing,"Prelude","[]") [TVar 15]])))),"Sort","quickSort.split.6")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),4))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 16],TCons (Nothing,Nothing,"Prelude","[]") [TVar 16]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 16])),"Sort","quickSort._#selFP6#l")) [Var ((Just (TVar 13),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 17],TCons (Nothing,Nothing,"Prelude","[]") [TVar 17]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 17])),"Sort","quickSort._#selFP7#r")) [Var ((Just (TVar 13),5))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Sort","quickSort")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),6))],Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Sort","quickSort")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]]]))))])),Func ((Nothing,Just (FuncType (FuncType (TVar 8) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 8) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]])))),"Sort","quickSort.split.6")) 3 Private (FuncType (FuncType (TVar 8) (FuncType (TVar 8) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TVar 8) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8]) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8]])))) (Rule [(Just (FuncType (TVar 8) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TVar 8),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 18) (FuncType (TVar 19) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 18),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TVar 19),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 8) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]))),"Prelude",":")) [(Just (TVar 8),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),5)]) (Let [((Just (TVar 15),6),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 21) (FuncType (TVar 21) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 21) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 21]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 21],TCons (Nothing,Nothing,"Prelude","[]") [TVar 21]])))),"Sort","quickSort.split.6")) [Var ((Just (FuncType (TVar 8) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 8),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),5))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 22],TCons (Nothing,Nothing,"Prelude","[]") [TVar 22]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 22])),"Sort","quickSort.split.6._#selFP3#l")) [Var ((Just (TVar 15),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 23],TCons (Nothing,Nothing,"Prelude","[]") [TVar 23]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 23])),"Sort","quickSort.split.6._#selFP4#r")) [Var ((Just (TVar 15),6))])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 8) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 8) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 8) (FuncType (TVar 8) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 8),4))],Var ((Just (TVar 8),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 8) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]))),"Prelude",":")) [Var ((Just (TVar 8),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),7))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),7)),Comb ConsCall ((Nothing,Just (FuncType (TVar 8) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]))),"Prelude",":")) [Var ((Just (TVar 8),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),8))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),"Prelude","failed")) [])])]))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8])),"Sort","quickSort.split.6._#selFP3#l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (FuncType (TVar 11) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),2),(Just (TVar 11),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8])),"Sort","quickSort.split.6._#selFP4#r")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 10) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [(Just (TVar 10),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8])),"Sort","quickSort._#selFP6#l")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (FuncType (TVar 11) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),2),(Just (TVar 11),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8])),"Sort","quickSort._#selFP7#r")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 8])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 10) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 8],TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]]))),"Prelude","(,)")) [(Just (TVar 10),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 8]),3)))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Sort","mergeSort")) 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Sort","mergeSort.mergeLists.16")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]))),"Sort","mergeSort.genRuns.16")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Sort","mergeSort.genRuns.16")) 2 Private (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 79]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 79]]))) (Rule [(Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [(Just (TVar 79),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Var ((Just (TVar 79),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),"Prelude","[]")) []],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [(Just (TVar 79),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),6)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 79),3))],Var ((Just (TVar 79),5))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Var ((Just (TVar 79),3)),Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Var ((Just (TVar 79),5)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Sort","mergeSort.genRuns.16")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),6))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Var ((Just (TVar 79),5)),Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Var ((Just (TVar 79),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Sort","mergeSort.genRuns.16")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),6))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Sort","mergeSort.mergePairs.16")) 2 Private (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 79]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 79]]))) (Rule [(Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),6)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79])))),"Sort","merge")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),5))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Sort","mergeSort.mergePairs.16")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),6))]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Sort","mergeSort.mergeLists.16")) 2 Private (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 79]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 79]))) (Rule [(Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),"Prelude","[]")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),3))),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),6)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Sort","mergeSort.mergeLists.16")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79])))),"Sort","merge")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]),5))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]))),"Sort","mergeSort.mergePairs.16")) [Var ((Just (FuncType (TVar 79) (FuncType (TVar 79) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]]),6))]]])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Sort","merge")) 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),4))],Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Sort","merge")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),6)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Sort","merge")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Sort","leqList")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TVar 0),4)),Var ((Just (TVar 0),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Sort","leqList")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Var ((Just (TVar 0),4))],Var ((Just (TVar 0),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Ordering") [])))),"Sort","cmpList")) 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","Ordering")) [])))) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),5)]) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) [])]),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Ordering") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1)),Var ((Just (TVar 0),6))],Var ((Just (TVar 0),8))],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","Ordering") [])))),"Sort","cmpList")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),9))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),1)),Var ((Just (TVar 0),6))],Var ((Just (TVar 0),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","failed")) [])])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqChar")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Sort","cmpChar")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) [])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqCharIgnoreCase")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Char") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Char","toUpper")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Char","toUpper")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqString")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Sort","leqList")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Sort","cmpString")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Ordering") [])))),"Sort","cmpList")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Sort","cmpChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqStringIgnoreCase")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Sort","leqList")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqCharIgnoreCase")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqLexGerman")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Sort","leqLexGerman.glex.89")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),3))]])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Sort","leqLexGerman.glex.89")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),5))]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Sort","leqLexGerman")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","failed")) [])])])))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Sort","leqLexGerman.glex.89")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'Z')]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'A')]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  228)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  246)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'o')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  252)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'u')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  196)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'a')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  214)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'o')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  220)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  'u')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  223)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  's')]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Int") []),"Prelude","failed")) [])])])])])])])])])]))] []
+ src/lib/Curry/Module/.curry/Sort.fcy view
@@ -0,0 +1,1 @@+Prog "Sort" ["Char","Prelude"] [] [Func ("Sort","quickSort") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Let [(5,Comb FuncCall ("Sort","quickSort.split.6") [Var 1,Var 3,Var 4])] (Let [(6,Comb FuncCall ("Sort","quickSort._#selFP6#l") [Var 5])] (Let [(7,Comb FuncCall ("Sort","quickSort._#selFP7#r") [Var 5])] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Sort","quickSort") [Var 1,Var 6],Comb ConsCall ("Prelude",":") [Var 3,Comb FuncCall ("Sort","quickSort") [Var 1,Var 7]]]))))])),Func ("Sort","quickSort.split.6") 3 Private (FuncType (FuncType (TVar 8) (FuncType (TVar 8) (TCons ("Prelude","Bool") []))) (FuncType (TVar 8) (FuncType (TCons ("Prelude","[]") [TVar 8]) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 8],TCons ("Prelude","[]") [TVar 8]])))) (Rule [1,2,3] (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [4,5]) (Let [(6,Comb FuncCall ("Sort","quickSort.split.6") [Var 1,Var 2,Var 5])] (Let [(7,Comb FuncCall ("Sort","quickSort.split.6._#selFP3#l") [Var 6])] (Let [(8,Comb FuncCall ("Sort","quickSort.split.6._#selFP4#r") [Var 6])] (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude",":") [Var 4,Var 7],Var 8]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","(,)") [Var 7,Comb ConsCall ("Prelude",":") [Var 4,Var 8]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])]))))])),Func ("Sort","quickSort.split.6._#selFP3#l") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 8],TCons ("Prelude","[]") [TVar 8]]) (TCons ("Prelude","[]") [TVar 8])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Sort","quickSort.split.6._#selFP4#r") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 8],TCons ("Prelude","[]") [TVar 8]]) (TCons ("Prelude","[]") [TVar 8])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Sort","quickSort._#selFP6#l") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 8],TCons ("Prelude","[]") [TVar 8]]) (TCons ("Prelude","[]") [TVar 8])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("Sort","quickSort._#selFP7#r") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 8],TCons ("Prelude","[]") [TVar 8]]) (TCons ("Prelude","[]") [TVar 8])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("Sort","mergeSort") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Sort","mergeSort.mergeLists.16") [Var 1,Comb FuncCall ("Sort","mergeSort.genRuns.16") [Var 1,Var 2]])),Func ("Sort","mergeSort.genRuns.16") 2 Private (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 79]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 79]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []],Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [5,6]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Var 5]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude",":") [Var 5,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Sort","mergeSort.genRuns.16") [Var 1,Var 6]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Var 5,Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Sort","mergeSort.genRuns.16") [Var 1,Var 6]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Sort","mergeSort.mergePairs.16") 2 Private (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 79]]) (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 79]]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Var 3,Comb ConsCall ("Prelude","[]") []]),Branch (Pattern ("Prelude",":") [5,6]) (Comb ConsCall ("Prelude",":") [Comb FuncCall ("Sort","merge") [Var 1,Var 3,Var 5],Comb FuncCall ("Sort","mergeSort.mergePairs.16") [Var 1,Var 6]])])])),Func ("Sort","mergeSort.mergeLists.16") 2 Private (FuncType (FuncType (TVar 79) (FuncType (TVar 79) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TVar 79]]) (TCons ("Prelude","[]") [TVar 79]))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","[]") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 4) [Branch (Pattern ("Prelude","[]") []) (Var 3),Branch (Pattern ("Prelude",":") [5,6]) (Comb FuncCall ("Sort","mergeSort.mergeLists.16") [Var 1,Comb ConsCall ("Prelude",":") [Comb FuncCall ("Sort","merge") [Var 1,Var 3,Var 5],Comb FuncCall ("Sort","mergeSort.mergePairs.16") [Var 1,Var 6]]])])])),Func ("Sort","merge") 3 Private (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Var 3),Branch (Pattern ("Prelude",":") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude",":") [Var 4,Var 5]),Branch (Pattern ("Prelude",":") [6,7]) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 4,Comb FuncCall ("Sort","merge") [Var 1,Var 5,Comb ConsCall ("Prelude",":") [Var 6,Var 7]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Var 6,Comb FuncCall ("Sort","merge") [Var 1,Comb ConsCall ("Prelude",":") [Var 4,Var 5],Var 7]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Sort","leqList") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude",":") [4,5]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude",":") [6,7]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 4,Var 6]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Sort","leqList") [Var 1,Var 5,Var 7]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 4],Var 6]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Sort","cmpList") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Ordering") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Ordering") [])))) (Rule [1,2,3] (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude",":") [4,5]) (Comb ConsCall ("Prelude","LT") [])]),Branch (Pattern ("Prelude",":") [6,7]) (Case  Flex (Var 3) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude",":") [8,9]) (Case  Rigid (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 6],Var 8],Comb ConsCall ("Prelude","EQ") []]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Sort","cmpList") [Var 1,Var 7,Var 9]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Var 6],Var 8]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])),Func ("Sort","leqChar") 2 Public (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Var 2]])),Func ("Sort","cmpChar") 2 Public (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Var 2]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Comb FuncCall ("Prelude","ord") [Var 1],Comb FuncCall ("Prelude","ord") [Var 2]]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","False") []) (Comb ConsCall ("Prelude","GT") [])])])),Func ("Sort","leqCharIgnoreCase") 2 Public (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","<=") [Comb FuncCall ("Prelude","ord") [Comb FuncCall ("Char","toUpper") [Var 1]],Comb FuncCall ("Prelude","ord") [Comb FuncCall ("Char","toUpper") [Var 2]]])),Func ("Sort","leqString") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") []))) (Rule [] (Comb (FuncPartCall 2) ("Sort","leqList") [Comb (FuncPartCall 2) ("Sort","leqChar") []])),Func ("Sort","cmpString") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Ordering") []))) (Rule [] (Comb (FuncPartCall 2) ("Sort","cmpList") [Comb (FuncPartCall 2) ("Sort","cmpChar") []])),Func ("Sort","leqStringIgnoreCase") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") []))) (Rule [] (Comb (FuncPartCall 2) ("Sort","leqList") [Comb (FuncPartCall 2) ("Sort","leqCharIgnoreCase") []])),Func ("Sort","leqLexGerman") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","True") []),Branch (Pattern ("Prelude",":") [3,4]) (Case  Flex (Var 2) [Branch (Pattern ("Prelude","[]") []) (Comb ConsCall ("Prelude","False") []),Branch (Pattern ("Prelude",":") [5,6]) (Let [(7,Comb FuncCall ("Sort","leqLexGerman.glex.89") [Comb FuncCall ("Prelude","ord") [Var 3]])] (Let [(8,Comb FuncCall ("Sort","leqLexGerman.glex.89") [Comb FuncCall ("Prelude","ord") [Var 5]])] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 7,Var 8]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Sort","leqLexGerman") [Var 4,Var 6]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","<") [Var 7,Var 8]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])))])])),Func ("Sort","leqLexGerman.glex.89") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">=") [Var 1,Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]],Comb FuncCall ("Prelude","<=") [Var 1,Comb FuncCall ("Prelude","ord") [Lit (Charc  'Z')]]]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","+") [Var 1,Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')],Comb FuncCall ("Prelude","ord") [Lit (Charc  'A')]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  228)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  246)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  'o')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  252)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  'u')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  196)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  'a')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  214)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  'o')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  220)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  'u')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  223)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","ord") [Lit (Charc  's')]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Var 1),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])])])])])]))] []
+ src/lib/Curry/Module/.curry/Sort.fint view
@@ -0,0 +1,1 @@+Prog "Sort" ["Char","Prelude"] [] [Func ("Sort","quickSort") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Sort","mergeSort") 2 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Sort","leqList") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Bool") [])))) (Rule [] (Var 0)),Func ("Sort","cmpList") 3 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Ordering") []))) (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","Ordering") [])))) (Rule [] (Var 0)),Func ("Sort","leqChar") 2 Public (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Sort","cmpChar") 2 Public (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Sort","leqCharIgnoreCase") 2 Public (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Sort","leqString") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Sort","cmpString") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Sort","leqStringIgnoreCase") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Sort","leqLexGerman") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Sort.uacy view
@@ -0,0 +1,16 @@+CurryProg "Sort"+ ["Prelude","Char"]+ []+ [CFunc ("Sort","cmpChar") 2 Public (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"c1"),CPVar (1,"c2")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"c1"))) (CVar (1,"c2")))) (CSymbol ("Prelude","EQ"))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c1")))) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c2"))))) (CSymbol ("Prelude","LT"))) (CSymbol ("Prelude","GT"))))] []]),+  CFunc ("Sort","cmpList") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Ordering") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Ordering") [])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","EQ"))] [],CRule [CPVar (1,"_"),CPComb ("Prelude","[]") [],CPComb ("Prelude",":") [CPVar (2,"_"),CPVar (3,"_")]] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","LT"))] [],CRule [CPVar (4,"_"),CPComb ("Prelude",":") [CPVar (5,"_"),CPVar (6,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","GT"))] [],CRule [CPVar (7,"cmp"),CPComb ("Prelude",":") [CPVar (8,"x"),CPVar (9,"xs")],CPComb ("Prelude",":") [CPVar (10,"y"),CPVar (11,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CVar (7,"cmp")) (CVar (8,"x"))) (CVar (10,"y")))) (CSymbol ("Prelude","EQ")),CApply (CApply (CApply (CSymbol ("Sort","cmpList")) (CVar (7,"cmp"))) (CVar (9,"xs"))) (CVar (11,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (7,"cmp")) (CVar (8,"x"))) (CVar (10,"y")))] []]),+  CFunc ("Sort","cmpString") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","cmpList")) (CSymbol ("Sort","cmpChar")))] []]),+  CFunc ("Sort","leqChar") 2 Public (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"c1"),CPVar (1,"c2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"c1")))) (CApply (CSymbol ("Prelude","ord")) (CVar (1,"c2"))))] []]),+  CFunc ("Sort","leqCharIgnoreCase") 2 Public (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"c1"),CPVar (1,"c2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","<=")) (CApply (CSymbol ("Prelude","ord")) (CApply (CSymbol ("Char","toUpper")) (CVar (0,"c1"))))) (CApply (CSymbol ("Prelude","ord")) (CApply (CSymbol ("Char","toUpper")) (CVar (1,"c2")))))] []]),+  CFunc ("Sort","leqLexGerman") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"_"),CPVar (2,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude",":") [CPVar (5,"y"),CPVar (6,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (7,"x'"))) (CVar (8,"y'")),CApply (CApply (CSymbol ("Sort","leqLexGerman")) (CVar (4,"xs"))) (CVar (6,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","<")) (CVar (7,"x'"))) (CVar (8,"y'")))] [CLocalPat (CPVar (7,"x'")) (CApply (CSymbol ("Sort","glex")) (CApply (CSymbol ("Prelude","ord")) (CVar (3,"x")))) [],CLocalPat (CPVar (8,"y'")) (CApply (CSymbol ("Sort","glex")) (CApply (CSymbol ("Prelude","ord")) (CVar (5,"y")))) [],CLocalFunc (CFunc ("Sort","glex") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (9,"o")] [(CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">=")) (CVar (9,"o"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (9,"o"))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'Z')))),CApply (CApply (CSymbol ("Prelude","+")) (CVar (9,"o"))) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a')))) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'A'))))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 228)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 246)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'o'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 252)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'u'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 196)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'a'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 214)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'o'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 220)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 'u'))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (9,"o"))) (CLit (CIntc 223)),CApply (CSymbol ("Prelude","ord")) (CLit (CCharc 's'))),(CSymbol ("Prelude","otherwise"),CVar (9,"o"))] []]))]]),+  CFunc ("Sort","leqList") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"_")] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","True"))] [],CRule [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"_"),CPVar (4,"_")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","False"))] [],CRule [CPVar (5,"leq"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPComb ("Prelude",":") [CPVar (8,"y"),CPVar (9,"ys")]] [(CApply (CApply (CSymbol ("Prelude","==")) (CVar (6,"x"))) (CVar (8,"y")),CApply (CApply (CApply (CSymbol ("Sort","leqList")) (CVar (5,"leq"))) (CVar (7,"xs"))) (CVar (9,"ys"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CVar (5,"leq")) (CVar (6,"x"))) (CVar (8,"y")))] []]),+  CFunc ("Sort","leqString") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqChar")))] []]),+  CFunc ("Sort","leqStringIgnoreCase") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","leqList")) (CSymbol ("Sort","leqCharIgnoreCase")))] []]),+  CFunc ("Sort","merge") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") [],CPVar (1,"ys")] [(CSymbol ("Prelude","success"),CVar (1,"ys"))] [],CRule [CPVar (2,"_"),CPComb ("Prelude",":") [CPVar (3,"x"),CPVar (4,"xs")],CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x"))) (CVar (4,"xs")))] [],CRule [CPVar (5,"leq"),CPComb ("Prelude",":") [CPVar (6,"x"),CPVar (7,"xs")],CPComb ("Prelude",":") [CPVar (8,"y"),CPVar (9,"ys")]] [(CApply (CApply (CVar (5,"leq")) (CVar (6,"x"))) (CVar (8,"y")),CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (5,"leq"))) (CVar (7,"xs"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (8,"y"))) (CVar (9,"ys"))))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (8,"y"))) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (5,"leq"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"x"))) (CVar (7,"xs")))) (CVar (9,"ys"))))] []]),+  CFunc ("Sort","mergeSort") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"leq"),CPVar (1,"zs")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","mergeLists")) (CApply (CSymbol ("Sort","genRuns")) (CVar (1,"zs"))))] [CLocalFunc (CFunc ("Sort","genRuns") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CApply (CApply (CVar (0,"leq")) (CVar (3,"x1"))) (CVar (4,"x2")),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x1"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x2"))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Sort","genRuns")) (CVar (5,"xs")))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (4,"x2"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (3,"x1"))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Sort","genRuns")) (CVar (5,"xs"))))] []])),CLocalFunc (CFunc ("Sort","mergeLists") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CVar (2,"x"))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Sort","mergeLists")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (0,"leq"))) (CVar (3,"x1"))) (CVar (4,"x2")))) (CApply (CSymbol ("Sort","mergePairs")) (CVar (5,"xs")))))] []])),CLocalFunc (CFunc ("Sort","mergePairs") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPComb ("Prelude",":") [CPVar (2,"x"),CPComb ("Prelude","[]") []]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))] [],CRule [CPComb ("Prelude",":") [CPVar (3,"x1"),CPComb ("Prelude",":") [CPVar (4,"x2"),CPVar (5,"xs")]]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Sort","merge")) (CVar (0,"leq"))) (CVar (3,"x1"))) (CVar (4,"x2")))) (CApply (CSymbol ("Sort","mergePairs")) (CVar (5,"xs"))))] []]))]]),+  CFunc ("Sort","quickSort") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CSymbol ("Prelude","[]"))] [],CRule [CPVar (1,"leq"),CPComb ("Prelude",":") [CPVar (2,"x"),CPVar (3,"xs")]] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Prelude","(,)") [CPVar (4,"l"),CPVar (5,"r")]) (CApply (CApply (CSymbol ("Sort","split")) (CVar (2,"x"))) (CVar (3,"xs"))) []] (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Sort","quickSort")) (CVar (1,"leq"))) (CVar (4,"l")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Sort","quickSort")) (CVar (1,"leq"))) (CVar (5,"r"))))))] [CLocalFunc (CFunc ("Sort","split") 2 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (4,"_"),CPComb ("Prelude","[]") []] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CSymbol ("Prelude","[]")))] [],CRule [CPVar (5,"e"),CPComb ("Prelude",":") [CPVar (6,"y"),CPVar (7,"ys")]] [(CApply (CApply (CVar (1,"leq")) (CVar (6,"y"))) (CVar (5,"e")),CApply (CApply (CSymbol ("Prelude","(,)")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"y"))) (CVar (8,"l")))) (CVar (9,"r"))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (8,"l"))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (6,"y"))) (CVar (9,"r"))))] [CLocalPat (CPComb ("Prelude","(,)") [CPVar (8,"l"),CPVar (9,"r")]) (CApply (CApply (CSymbol ("Sort","split")) (CVar (5,"e"))) (CVar (7,"ys"))) []]]))]])]+ []
+ src/lib/Curry/Module/.curry/StyledText.acy view
@@ -0,0 +1,85 @@+CurryProg "StyledText"+ ["Prelude","Char","Pretty","AnsiCodes"]+ [CTypeSyn ("StyledText","ShowS") Public [] (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") []))]+ [CFunc ("StyledText","bgBlack") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgBlackChar")))] []]),+  CFunc ("StyledText","bgBlackChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 24)))] []]),+  CFunc ("StyledText","bgBlackDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgBlackChar")))] []]),+  CFunc ("StyledText","bgBlackS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgBlackChar")))] []]),+  CFunc ("StyledText","bgBlue") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgBlueChar")))] []]),+  CFunc ("StyledText","bgBlueChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 25)))] []]),+  CFunc ("StyledText","bgBlueDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgBlueChar")))] []]),+  CFunc ("StyledText","bgBlueS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgBlueChar")))] []]),+  CFunc ("StyledText","bgCyan") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgCyanChar")))] []]),+  CFunc ("StyledText","bgCyanChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 26)))] []]),+  CFunc ("StyledText","bgCyanDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgCyanChar")))] []]),+  CFunc ("StyledText","bgCyanS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgCyanChar")))] []]),+  CFunc ("StyledText","bgGreen") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgGreenChar")))] []]),+  CFunc ("StyledText","bgGreenChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 27)))] []]),+  CFunc ("StyledText","bgGreenDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgGreenChar")))] []]),+  CFunc ("StyledText","bgGreenS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgGreenChar")))] []]),+  CFunc ("StyledText","bgMagenta") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgMagentaChar")))] []]),+  CFunc ("StyledText","bgMagentaChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 28)))] []]),+  CFunc ("StyledText","bgMagentaDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgMagentaChar")))] []]),+  CFunc ("StyledText","bgMagentaS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgMagentaChar")))] []]),+  CFunc ("StyledText","bgRed") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgRedChar")))] []]),+  CFunc ("StyledText","bgRedChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 29)))] []]),+  CFunc ("StyledText","bgRedDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgRedChar")))] []]),+  CFunc ("StyledText","bgRedS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgRedChar")))] []]),+  CFunc ("StyledText","bgWhite") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgWhiteChar")))] []]),+  CFunc ("StyledText","bgWhiteChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 30)))] []]),+  CFunc ("StyledText","bgWhiteDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgWhiteChar")))] []]),+  CFunc ("StyledText","bgWhiteS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgWhiteChar")))] []]),+  CFunc ("StyledText","bgYellow") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgYellowChar")))] []]),+  CFunc ("StyledText","bgYellowChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 31)))] []]),+  CFunc ("StyledText","bgYellowDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgYellowChar")))] []]),+  CFunc ("StyledText","bgYellowS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgYellowChar")))] []]),+  CFunc ("StyledText","black") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","blackChar")))] []]),+  CFunc ("StyledText","blackChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 16)))] []]),+  CFunc ("StyledText","blackDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","blackChar")))] []]),+  CFunc ("StyledText","blackS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","blackChar")))] []]),+  CFunc ("StyledText","blue") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","blueChar")))] []]),+  CFunc ("StyledText","blueChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 17)))] []]),+  CFunc ("StyledText","blueDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","blueChar")))] []]),+  CFunc ("StyledText","blueS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","blueChar")))] []]),+  CFunc ("StyledText","bold") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","boldChar")))] []]),+  CFunc ("StyledText","boldChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 5)))] []]),+  CFunc ("StyledText","boldDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","boldChar")))] []]),+  CFunc ("StyledText","boldS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","boldChar")))] []]),+  CFunc ("StyledText","cyan") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","cyanChar")))] []]),+  CFunc ("StyledText","cyanChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 18)))] []]),+  CFunc ("StyledText","cyanDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","cyanChar")))] []]),+  CFunc ("StyledText","cyanS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","cyanChar")))] []]),+  CFunc ("StyledText","encl") 2 Private (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"s"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("StyledText","endChar"))) (CSymbol ("Prelude","[]")))))] []]),+  CFunc ("StyledText","enclDoc") 1 Private (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CApply (CSymbol ("Pretty","char")) (CVar (0,"c")))) (CApply (CSymbol ("Pretty","char")) (CSymbol ("StyledText","endChar"))))] []]),+  CFunc ("StyledText","enclS") 2 Private (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CVar (2,"x0"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (1,"s"))) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("StyledText","endChar"))) (CVar (3,"x0"))))))] []]),+  CFunc ("StyledText","endChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 7)))] []]),+  CFunc ("StyledText","green") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","greenChar")))] []]),+  CFunc ("StyledText","greenChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 19)))] []]),+  CFunc ("StyledText","greenDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","greenChar")))] []]),+  CFunc ("StyledText","greenS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","greenChar")))] []]),+  CFunc ("StyledText","interpret") 6 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTVar (1,"b")) (CTVar (1,"b")))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (1,"b")))) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"a"),CTVar (0,"a"),CTVar (0,"a")]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (1,"b")))))))) (CRules CFlex [CRule [CPAs (3,"convs") (CPComb ("Prelude",":") [CPVar (0,"b"),CPComb ("Prelude",":") [CPVar (1,"ul"),CPVar (2,"cs")]]),CPVar (4,"combine"),CPVar (5,"cst"),CPVar (6,"ast"),CPComb ("Prelude",":") [CPAs (10,"t") (CPComb ("Prelude","(,,)") [CPVar (7,"st"),CPVar (8,"fg"),CPVar (9,"bg")]),CPVar (11,"fs")],CPVar (12,"s")] [(CApply (CSymbol ("Prelude","null")) (CVar (15,"ys")),CApply (CVar (13,"f")) (CVar (14,"xs"))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (16,"code"))) (CLit (CIntc 5)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (0,"b"))) (CVar (8,"fg"))) (CVar (9,"bg")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (16,"code"))) (CLit (CIntc 6)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"ul"))) (CVar (8,"fg"))) (CVar (9,"bg")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (16,"code"))) (CLit (CIntc 7)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CVar (11,"fs"))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CApply (CApply (CSymbol ("Prelude","<")) (CVar (16,"code"))) (CLit (CIntc 24)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (7,"st"))) (CVar (17,"g"))) (CVar (9,"bg")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (7,"st"))) (CVar (8,"fg"))) (CVar (17,"g")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys")))))] [CLocalPat (CPVar (13,"f")) (CApply (CApply (CSymbol ("Prelude","$")) (CVar (6,"ast"))) (CApply (CApply (CVar (5,"cst")) (CVar (7,"st"))) (CApply (CApply (CVar (5,"cst")) (CVar (8,"fg"))) (CVar (9,"bg"))))) [],CLocalPat (CPComb ("Prelude","(,)") [CPVar (14,"xs"),CPVar (15,"ys")]) (CApply (CApply (CSymbol ("Prelude","break")) (CSymbol ("StyledText","special"))) (CVar (12,"s"))) [],CLocalPat (CPVar (16,"code")) (CApply (CSymbol ("Prelude","ord")) (CApply (CSymbol ("Prelude","head")) (CVar (15,"ys")))) [],CLocalPat (CPVar (17,"g")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (2,"cs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (16,"code"))) (CLit (CIntc 16)))) []]]),+  CFunc ("StyledText","magenta") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","magentaChar")))] []]),+  CFunc ("StyledText","magentaChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 20)))] []]),+  CFunc ("StyledText","magentaDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","magentaChar")))] []]),+  CFunc ("StyledText","magentaS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","magentaChar")))] []]),+  CFunc ("StyledText","plainText") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CSymbol ("StyledText","special"))))] []]),+  CFunc ("StyledText","printStyledText") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","putStrLn"))) (CSymbol ("StyledText","toAnsiString")))] []]),+  CFunc ("StyledText","red") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","redChar")))] []]),+  CFunc ("StyledText","redChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 21)))] []]),+  CFunc ("StyledText","redDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","redChar")))] []]),+  CFunc ("StyledText","redS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","redChar")))] []]),+  CFunc ("StyledText","special") 1 Private (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","elem")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 5))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 6))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 7))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CLit (CIntc 16))) (CLit (CIntc 31)))))] []]),+  CFunc ("StyledText","toAnsiString") 0 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bold"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","underline"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","black"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","blue"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","cyan"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","green"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","magenta"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","red"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","white"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","yellow"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgBlack"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgBlue"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgCyan"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgGreen"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgMagenta"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgRed"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgWhite"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgYellow"))) (CSymbol ("Prelude","[]"))))))))))))))))))))) (CSymbol ("Prelude","++"))) (CSymbol ("Prelude","."))) (CSymbol ("Prelude","id"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CSymbol ("Prelude","id"))) (CSymbol ("Prelude","id"))) (CSymbol ("Prelude","id")))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("StyledText","underline") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","underlineChar")))] []]),+  CFunc ("StyledText","underlineChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 6)))] []]),+  CFunc ("StyledText","underlineDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","underlineChar")))] []]),+  CFunc ("StyledText","underlineS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","underlineChar")))] []]),+  CFunc ("StyledText","white") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","whiteChar")))] []]),+  CFunc ("StyledText","whiteChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 22)))] []]),+  CFunc ("StyledText","whiteDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","whiteChar")))] []]),+  CFunc ("StyledText","whiteS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","whiteChar")))] []]),+  CFunc ("StyledText","yellow") 0 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","yellowChar")))] []]),+  CFunc ("StyledText","yellowChar") 0 Private (CTCons ("Prelude","Char") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 23)))] []]),+  CFunc ("StyledText","yellowDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","yellowChar")))] []]),+  CFunc ("StyledText","yellowS") 0 Public (CFuncType (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","yellowChar")))] []])]+ []
+ src/lib/Curry/Module/.curry/StyledText.cy view
@@ -0,0 +1,100 @@+Module "StyledText"+(Just (Exporting (1,19) [(Export (QualIdent Nothing (Ident "bold" 0))),(Export (QualIdent Nothing (Ident "underline" 0))),(Export (QualIdent Nothing (Ident "black" 0))),(Export (QualIdent Nothing (Ident "blue" 0))),(Export (QualIdent Nothing (Ident "cyan" 0))),(Export (QualIdent Nothing (Ident "green" 0))),(Export (QualIdent Nothing (Ident "magenta" 0))),(Export (QualIdent Nothing (Ident "red" 0))),(Export (QualIdent Nothing (Ident "white" 0))),(Export (QualIdent Nothing (Ident "yellow" 0))),(Export (QualIdent Nothing (Ident "bgBlack" 0))),(Export (QualIdent Nothing (Ident "bgBlue" 0))),(Export (QualIdent Nothing (Ident "bgCyan" 0))),(Export (QualIdent Nothing (Ident "bgGreen" 0))),(Export (QualIdent Nothing (Ident "bgMagenta" 0))),(Export (QualIdent Nothing (Ident "bgRed" 0))),(Export (QualIdent Nothing (Ident "bgWhite" 0))),(Export (QualIdent Nothing (Ident "bgYellow" 0))),(Export (QualIdent Nothing (Ident "ShowS" 0))),(Export (QualIdent Nothing (Ident "boldS" 0))),(Export (QualIdent Nothing (Ident "underlineS" 0))),(Export (QualIdent Nothing (Ident "blackS" 0))),(Export (QualIdent Nothing (Ident "blueS" 0))),(Export (QualIdent Nothing (Ident "cyanS" 0))),(Export (QualIdent Nothing (Ident "greenS" 0))),(Export (QualIdent Nothing (Ident "magentaS" 0))),(Export (QualIdent Nothing (Ident "redS" 0))),(Export (QualIdent Nothing (Ident "whiteS" 0))),(Export (QualIdent Nothing (Ident "yellowS" 0))),(Export (QualIdent Nothing (Ident "bgBlackS" 0))),(Export (QualIdent Nothing (Ident "bgBlueS" 0))),(Export (QualIdent Nothing (Ident "bgCyanS" 0))),(Export (QualIdent Nothing (Ident "bgGreenS" 0))),(Export (QualIdent Nothing (Ident "bgMagentaS" 0))),(Export (QualIdent Nothing (Ident "bgRedS" 0))),(Export (QualIdent Nothing (Ident "bgWhiteS" 0))),(Export (QualIdent Nothing (Ident "bgYellowS" 0))),(Export (QualIdent Nothing (Ident "Doc" 0))),(Export (QualIdent Nothing (Ident "boldDoc" 0))),(Export (QualIdent Nothing (Ident "underlineDoc" 0))),(Export (QualIdent Nothing (Ident "blackDoc" 0))),(Export (QualIdent Nothing (Ident "blueDoc" 0))),(Export (QualIdent Nothing (Ident "cyanDoc" 0))),(Export (QualIdent Nothing (Ident "greenDoc" 0))),(Export (QualIdent Nothing (Ident "magentaDoc" 0))),(Export (QualIdent Nothing (Ident "redDoc" 0))),(Export (QualIdent Nothing (Ident "whiteDoc" 0))),(Export (QualIdent Nothing (Ident "yellowDoc" 0))),(Export (QualIdent Nothing (Ident "bgBlackDoc" 0))),(Export (QualIdent Nothing (Ident "bgBlueDoc" 0))),(Export (QualIdent Nothing (Ident "bgCyanDoc" 0))),(Export (QualIdent Nothing (Ident "bgGreenDoc" 0))),(Export (QualIdent Nothing (Ident "bgMagentaDoc" 0))),(Export (QualIdent Nothing (Ident "bgRedDoc" 0))),(Export (QualIdent Nothing (Ident "bgWhiteDoc" 0))),(Export (QualIdent Nothing (Ident "bgYellowDoc" 0))),(Export (QualIdent Nothing (Ident "plainText" 0))),(Export (QualIdent Nothing (Ident "printStyledText" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (22,1) "Char" False Nothing Nothing)+,(ImportDecl (23,1) "Pretty" False Nothing Nothing)+,(ImportDecl (24,1) "AnsiCodes" False (Just "Ansi") Nothing)+,(TypeDecl (75,1) (Ident "ShowS" 0) [] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (28,1) (Ident "boldChar" 0) [(Equation (28,1) (FunLhs (Ident "boldChar" 0) []) (SimpleRhs (28,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 4) 5))) []))])+,(FunctionDecl (29,1) (Ident "underlineChar" 0) [(Equation (29,1) (FunLhs (Ident "underlineChar" 0) []) (SimpleRhs (29,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 7) 6))) []))])+,(FunctionDecl (30,1) (Ident "endChar" 0) [(Equation (30,1) (FunLhs (Ident "endChar" 0) []) (SimpleRhs (30,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 10) 7))) []))])+,(FunctionDecl (31,1) (Ident "blackChar" 0) [(Equation (31,1) (FunLhs (Ident "blackChar" 0) []) (SimpleRhs (31,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 13) 16))) []))])+,(FunctionDecl (32,1) (Ident "blueChar" 0) [(Equation (32,1) (FunLhs (Ident "blueChar" 0) []) (SimpleRhs (32,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 16) 17))) []))])+,(FunctionDecl (33,1) (Ident "cyanChar" 0) [(Equation (33,1) (FunLhs (Ident "cyanChar" 0) []) (SimpleRhs (33,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 19) 18))) []))])+,(FunctionDecl (34,1) (Ident "greenChar" 0) [(Equation (34,1) (FunLhs (Ident "greenChar" 0) []) (SimpleRhs (34,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 22) 19))) []))])+,(FunctionDecl (35,1) (Ident "magentaChar" 0) [(Equation (35,1) (FunLhs (Ident "magentaChar" 0) []) (SimpleRhs (35,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 25) 20))) []))])+,(FunctionDecl (36,1) (Ident "redChar" 0) [(Equation (36,1) (FunLhs (Ident "redChar" 0) []) (SimpleRhs (36,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 28) 21))) []))])+,(FunctionDecl (37,1) (Ident "whiteChar" 0) [(Equation (37,1) (FunLhs (Ident "whiteChar" 0) []) (SimpleRhs (37,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 31) 22))) []))])+,(FunctionDecl (38,1) (Ident "yellowChar" 0) [(Equation (38,1) (FunLhs (Ident "yellowChar" 0) []) (SimpleRhs (38,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 34) 23))) []))])+,(FunctionDecl (39,1) (Ident "bgBlackChar" 0) [(Equation (39,1) (FunLhs (Ident "bgBlackChar" 0) []) (SimpleRhs (39,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 37) 24))) []))])+,(FunctionDecl (40,1) (Ident "bgBlueChar" 0) [(Equation (40,1) (FunLhs (Ident "bgBlueChar" 0) []) (SimpleRhs (40,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 40) 25))) []))])+,(FunctionDecl (41,1) (Ident "bgCyanChar" 0) [(Equation (41,1) (FunLhs (Ident "bgCyanChar" 0) []) (SimpleRhs (41,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 43) 26))) []))])+,(FunctionDecl (42,1) (Ident "bgGreenChar" 0) [(Equation (42,1) (FunLhs (Ident "bgGreenChar" 0) []) (SimpleRhs (42,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 46) 27))) []))])+,(FunctionDecl (43,1) (Ident "bgMagentaChar" 0) [(Equation (43,1) (FunLhs (Ident "bgMagentaChar" 0) []) (SimpleRhs (43,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 49) 28))) []))])+,(FunctionDecl (44,1) (Ident "bgRedChar" 0) [(Equation (44,1) (FunLhs (Ident "bgRedChar" 0) []) (SimpleRhs (44,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 52) 29))) []))])+,(FunctionDecl (45,1) (Ident "bgWhiteChar" 0) [(Equation (45,1) (FunLhs (Ident "bgWhiteChar" 0) []) (SimpleRhs (45,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 55) 30))) []))])+,(FunctionDecl (46,1) (Ident "bgYellowChar" 0) [(Equation (46,1) (FunLhs (Ident "bgYellowChar" 0) []) (SimpleRhs (46,17) (Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Literal (Int (Ident "_" 58) 31))) []))])+,(TypeSig (48,1) [(Ident "bold" 0),(Ident "underline" 0),(Ident "black" 0),(Ident "blue" 0),(Ident "cyan" 0),(Ident "green" 0),(Ident "magenta" 0),(Ident "red" 0),(Ident "white" 0),(Ident "yellow" 0),(Ident "bgBlack" 0),(Ident "bgBlue" 0),(Ident "bgCyan" 0),(Ident "bgGreen" 0),(Ident "bgMagenta" 0),(Ident "bgRed" 0),(Ident "bgWhite" 0),(Ident "bgYellow" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (52,1) (Ident "bold" 0) [(Equation (52,1) (FunLhs (Ident "bold" 0) []) (SimpleRhs (52,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "boldChar" 0)))) []))])+,(FunctionDecl (53,1) (Ident "underline" 0) [(Equation (53,1) (FunLhs (Ident "underline" 0) []) (SimpleRhs (53,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "underlineChar" 0)))) []))])+,(FunctionDecl (54,1) (Ident "black" 0) [(Equation (54,1) (FunLhs (Ident "black" 0) []) (SimpleRhs (54,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "blackChar" 0)))) []))])+,(FunctionDecl (55,1) (Ident "blue" 0) [(Equation (55,1) (FunLhs (Ident "blue" 0) []) (SimpleRhs (55,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "blueChar" 0)))) []))])+,(FunctionDecl (56,1) (Ident "cyan" 0) [(Equation (56,1) (FunLhs (Ident "cyan" 0) []) (SimpleRhs (56,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "cyanChar" 0)))) []))])+,(FunctionDecl (57,1) (Ident "green" 0) [(Equation (57,1) (FunLhs (Ident "green" 0) []) (SimpleRhs (57,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "greenChar" 0)))) []))])+,(FunctionDecl (58,1) (Ident "magenta" 0) [(Equation (58,1) (FunLhs (Ident "magenta" 0) []) (SimpleRhs (58,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "magentaChar" 0)))) []))])+,(FunctionDecl (59,1) (Ident "red" 0) [(Equation (59,1) (FunLhs (Ident "red" 0) []) (SimpleRhs (59,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "redChar" 0)))) []))])+,(FunctionDecl (60,1) (Ident "white" 0) [(Equation (60,1) (FunLhs (Ident "white" 0) []) (SimpleRhs (60,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "whiteChar" 0)))) []))])+,(FunctionDecl (61,1) (Ident "yellow" 0) [(Equation (61,1) (FunLhs (Ident "yellow" 0) []) (SimpleRhs (61,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "yellowChar" 0)))) []))])+,(FunctionDecl (62,1) (Ident "bgBlack" 0) [(Equation (62,1) (FunLhs (Ident "bgBlack" 0) []) (SimpleRhs (62,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgBlackChar" 0)))) []))])+,(FunctionDecl (63,1) (Ident "bgBlue" 0) [(Equation (63,1) (FunLhs (Ident "bgBlue" 0) []) (SimpleRhs (63,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgBlueChar" 0)))) []))])+,(FunctionDecl (64,1) (Ident "bgCyan" 0) [(Equation (64,1) (FunLhs (Ident "bgCyan" 0) []) (SimpleRhs (64,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgCyanChar" 0)))) []))])+,(FunctionDecl (65,1) (Ident "bgGreen" 0) [(Equation (65,1) (FunLhs (Ident "bgGreen" 0) []) (SimpleRhs (65,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgGreenChar" 0)))) []))])+,(FunctionDecl (66,1) (Ident "bgMagenta" 0) [(Equation (66,1) (FunLhs (Ident "bgMagenta" 0) []) (SimpleRhs (66,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgMagentaChar" 0)))) []))])+,(FunctionDecl (67,1) (Ident "bgRed" 0) [(Equation (67,1) (FunLhs (Ident "bgRed" 0) []) (SimpleRhs (67,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgRedChar" 0)))) []))])+,(FunctionDecl (68,1) (Ident "bgWhite" 0) [(Equation (68,1) (FunLhs (Ident "bgWhite" 0) []) (SimpleRhs (68,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgWhiteChar" 0)))) []))])+,(FunctionDecl (69,1) (Ident "bgYellow" 0) [(Equation (69,1) (FunLhs (Ident "bgYellow" 0) []) (SimpleRhs (69,13) (Apply (Variable (QualIdent (Just "StyledText") (Ident "encl" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgYellowChar" 0)))) []))])+,(TypeSig (71,1) [(Ident "encl" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))))+,(FunctionDecl (72,1) (Ident "encl" 0) [(Equation (72,1) (FunLhs (Ident "encl" 0) [(VariablePattern (Ident "c" 95)),(VariablePattern (Ident "s" 95))]) (SimpleRhs (72,12) (InfixApply (Variable (QualIdent Nothing (Ident "c" 95))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 95))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (List [(Variable (QualIdent (Just "StyledText") (Ident "endChar" 0)))]))) []))])+,(TypeSig (77,1) [(Ident "boldS" 0),(Ident "underlineS" 0),(Ident "blackS" 0),(Ident "blueS" 0),(Ident "cyanS" 0),(Ident "greenS" 0),(Ident "magentaS" 0),(Ident "redS" 0),(Ident "whiteS" 0),(Ident "yellowS" 0),(Ident "bgBlackS" 0),(Ident "bgBlueS" 0),(Ident "bgCyanS" 0),(Ident "bgGreenS" 0),(Ident "bgMagentaS" 0),(Ident "bgRedS" 0),(Ident "bgWhiteS" 0),(Ident "bgYellowS" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ShowS" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ShowS" 0)) [])))+,(FunctionDecl (81,1) (Ident "boldS" 0) [(Equation (81,1) (FunLhs (Ident "boldS" 0) []) (SimpleRhs (81,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "boldChar" 0)))) []))])+,(FunctionDecl (82,1) (Ident "underlineS" 0) [(Equation (82,1) (FunLhs (Ident "underlineS" 0) []) (SimpleRhs (82,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "underlineChar" 0)))) []))])+,(FunctionDecl (83,1) (Ident "blackS" 0) [(Equation (83,1) (FunLhs (Ident "blackS" 0) []) (SimpleRhs (83,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "blackChar" 0)))) []))])+,(FunctionDecl (84,1) (Ident "blueS" 0) [(Equation (84,1) (FunLhs (Ident "blueS" 0) []) (SimpleRhs (84,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "blueChar" 0)))) []))])+,(FunctionDecl (85,1) (Ident "cyanS" 0) [(Equation (85,1) (FunLhs (Ident "cyanS" 0) []) (SimpleRhs (85,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "cyanChar" 0)))) []))])+,(FunctionDecl (86,1) (Ident "greenS" 0) [(Equation (86,1) (FunLhs (Ident "greenS" 0) []) (SimpleRhs (86,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "greenChar" 0)))) []))])+,(FunctionDecl (87,1) (Ident "magentaS" 0) [(Equation (87,1) (FunLhs (Ident "magentaS" 0) []) (SimpleRhs (87,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "magentaChar" 0)))) []))])+,(FunctionDecl (88,1) (Ident "redS" 0) [(Equation (88,1) (FunLhs (Ident "redS" 0) []) (SimpleRhs (88,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "redChar" 0)))) []))])+,(FunctionDecl (89,1) (Ident "whiteS" 0) [(Equation (89,1) (FunLhs (Ident "whiteS" 0) []) (SimpleRhs (89,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "whiteChar" 0)))) []))])+,(FunctionDecl (90,1) (Ident "yellowS" 0) [(Equation (90,1) (FunLhs (Ident "yellowS" 0) []) (SimpleRhs (90,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "yellowChar" 0)))) []))])+,(FunctionDecl (91,1) (Ident "bgBlackS" 0) [(Equation (91,1) (FunLhs (Ident "bgBlackS" 0) []) (SimpleRhs (91,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgBlackChar" 0)))) []))])+,(FunctionDecl (92,1) (Ident "bgBlueS" 0) [(Equation (92,1) (FunLhs (Ident "bgBlueS" 0) []) (SimpleRhs (92,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgBlueChar" 0)))) []))])+,(FunctionDecl (93,1) (Ident "bgCyanS" 0) [(Equation (93,1) (FunLhs (Ident "bgCyanS" 0) []) (SimpleRhs (93,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgCyanChar" 0)))) []))])+,(FunctionDecl (94,1) (Ident "bgGreenS" 0) [(Equation (94,1) (FunLhs (Ident "bgGreenS" 0) []) (SimpleRhs (94,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgGreenChar" 0)))) []))])+,(FunctionDecl (95,1) (Ident "bgMagentaS" 0) [(Equation (95,1) (FunLhs (Ident "bgMagentaS" 0) []) (SimpleRhs (95,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgMagentaChar" 0)))) []))])+,(FunctionDecl (96,1) (Ident "bgRedS" 0) [(Equation (96,1) (FunLhs (Ident "bgRedS" 0) []) (SimpleRhs (96,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgRedChar" 0)))) []))])+,(FunctionDecl (97,1) (Ident "bgWhiteS" 0) [(Equation (97,1) (FunLhs (Ident "bgWhiteS" 0) []) (SimpleRhs (97,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgWhiteChar" 0)))) []))])+,(FunctionDecl (98,1) (Ident "bgYellowS" 0) [(Equation (98,1) (FunLhs (Ident "bgYellowS" 0) []) (SimpleRhs (98,14) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclS" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgYellowChar" 0)))) []))])+,(TypeSig (100,1) [(Ident "enclS" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ShowS" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ShowS" 0)) []))))+,(FunctionDecl (101,1) (Ident "enclS" 0) [(Equation (101,1) (FunLhs (Ident "enclS" 0) [(VariablePattern (Ident "c" 133)),(VariablePattern (Ident "s" 133))]) (SimpleRhs (101,13) (InfixApply (LeftSection (Variable (QualIdent Nothing (Ident "c" 133))) (InfixConstr (QualIdent Nothing (Ident ":" 0)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (InfixApply (Variable (QualIdent Nothing (Ident "s" 133))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (LeftSection (Variable (QualIdent (Just "StyledText") (Ident "endChar" 0))) (InfixConstr (QualIdent Nothing (Ident ":" 0)))))) []))])+,(TypeSig (104,1) [(Ident "boldDoc" 0),(Ident "underlineDoc" 0),(Ident "blackDoc" 0),(Ident "blueDoc" 0),(Ident "cyanDoc" 0),(Ident "greenDoc" 0),(Ident "magentaDoc" 0),(Ident "redDoc" 0),(Ident "whiteDoc" 0),(Ident "yellowDoc" 0),(Ident "bgBlackDoc" 0),(Ident "bgBlueDoc" 0),(Ident "bgCyanDoc" 0),(Ident "bgGreenDoc" 0),(Ident "bgMagentaDoc" 0),(Ident "bgRedDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) [])))+,(FunctionDecl (108,1) (Ident "boldDoc" 0) [(Equation (108,1) (FunLhs (Ident "boldDoc" 0) []) (SimpleRhs (108,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "boldChar" 0)))) []))])+,(FunctionDecl (109,1) (Ident "underlineDoc" 0) [(Equation (109,1) (FunLhs (Ident "underlineDoc" 0) []) (SimpleRhs (109,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "underlineChar" 0)))) []))])+,(FunctionDecl (110,1) (Ident "blackDoc" 0) [(Equation (110,1) (FunLhs (Ident "blackDoc" 0) []) (SimpleRhs (110,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "blackChar" 0)))) []))])+,(FunctionDecl (111,1) (Ident "blueDoc" 0) [(Equation (111,1) (FunLhs (Ident "blueDoc" 0) []) (SimpleRhs (111,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "blueChar" 0)))) []))])+,(FunctionDecl (112,1) (Ident "cyanDoc" 0) [(Equation (112,1) (FunLhs (Ident "cyanDoc" 0) []) (SimpleRhs (112,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "cyanChar" 0)))) []))])+,(FunctionDecl (113,1) (Ident "greenDoc" 0) [(Equation (113,1) (FunLhs (Ident "greenDoc" 0) []) (SimpleRhs (113,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "greenChar" 0)))) []))])+,(FunctionDecl (114,1) (Ident "magentaDoc" 0) [(Equation (114,1) (FunLhs (Ident "magentaDoc" 0) []) (SimpleRhs (114,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "magentaChar" 0)))) []))])+,(FunctionDecl (115,1) (Ident "redDoc" 0) [(Equation (115,1) (FunLhs (Ident "redDoc" 0) []) (SimpleRhs (115,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "redChar" 0)))) []))])+,(FunctionDecl (116,1) (Ident "whiteDoc" 0) [(Equation (116,1) (FunLhs (Ident "whiteDoc" 0) []) (SimpleRhs (116,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "whiteChar" 0)))) []))])+,(FunctionDecl (117,1) (Ident "yellowDoc" 0) [(Equation (117,1) (FunLhs (Ident "yellowDoc" 0) []) (SimpleRhs (117,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "yellowChar" 0)))) []))])+,(FunctionDecl (118,1) (Ident "bgBlackDoc" 0) [(Equation (118,1) (FunLhs (Ident "bgBlackDoc" 0) []) (SimpleRhs (118,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgBlackChar" 0)))) []))])+,(FunctionDecl (119,1) (Ident "bgBlueDoc" 0) [(Equation (119,1) (FunLhs (Ident "bgBlueDoc" 0) []) (SimpleRhs (119,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgBlueChar" 0)))) []))])+,(FunctionDecl (120,1) (Ident "bgCyanDoc" 0) [(Equation (120,1) (FunLhs (Ident "bgCyanDoc" 0) []) (SimpleRhs (120,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgCyanChar" 0)))) []))])+,(FunctionDecl (121,1) (Ident "bgGreenDoc" 0) [(Equation (121,1) (FunLhs (Ident "bgGreenDoc" 0) []) (SimpleRhs (121,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgGreenChar" 0)))) []))])+,(FunctionDecl (122,1) (Ident "bgMagentaDoc" 0) [(Equation (122,1) (FunLhs (Ident "bgMagentaDoc" 0) []) (SimpleRhs (122,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgMagentaChar" 0)))) []))])+,(FunctionDecl (123,1) (Ident "bgRedDoc" 0) [(Equation (123,1) (FunLhs (Ident "bgRedDoc" 0) []) (SimpleRhs (123,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgRedChar" 0)))) []))])+,(FunctionDecl (124,1) (Ident "bgWhiteDoc" 0) [(Equation (124,1) (FunLhs (Ident "bgWhiteDoc" 0) []) (SimpleRhs (124,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgWhiteChar" 0)))) []))])+,(FunctionDecl (125,1) (Ident "bgYellowDoc" 0) [(Equation (125,1) (FunLhs (Ident "bgYellowDoc" 0) []) (SimpleRhs (125,16) (Apply (Variable (QualIdent (Just "StyledText") (Ident "enclDoc" 0))) (Variable (QualIdent (Just "StyledText") (Ident "bgYellowChar" 0)))) []))])+,(TypeSig (127,1) [(Ident "enclDoc" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Doc" 0)) []))))+,(FunctionDecl (128,1) (Ident "enclDoc" 0) [(Equation (128,1) (FunLhs (Ident "enclDoc" 0) [(VariablePattern (Ident "c" 171))]) (SimpleRhs (128,13) (Apply (Apply (Variable (QualIdent (Just "Pretty") (Ident "enclose" 0))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Variable (QualIdent Nothing (Ident "c" 171)))))) (Paren (Apply (Variable (QualIdent (Just "Pretty") (Ident "char" 0))) (Variable (QualIdent (Just "StyledText") (Ident "endChar" 0)))))) []))])+,(TypeSig (131,1) [(Ident "plainText" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (132,1) (Ident "plainText" 0) [(Equation (132,1) (FunLhs (Ident "plainText" 0) []) (SimpleRhs (132,13) (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "not" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "StyledText") (Ident "special" 0)))))) []))])+,(TypeSig (134,1) [(Ident "special" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Char" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (135,1) (Ident "special" 0) [(Equation (135,1) (FunLhs (Ident "special" 0) [(VariablePattern (Ident "n" 175))]) (SimpleRhs (135,13) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Variable (QualIdent Nothing (Ident "n" 175)))) (InfixOp (QualIdent (Just "Prelude") (Ident "elem" 0))) (Paren (InfixApply (List [(Literal (Int (Ident "_" 177) 5)),(Literal (Int (Ident "_" 178) 6)),(Literal (Int (Ident "_" 179) 7))]) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (EnumFromTo (Literal (Int (Ident "_" 180) 16)) (Literal (Int (Ident "_" 181) 31)))))) []))])+,(TypeSig (138,1) [(Ident "interpret" 0)] (ArrowType (ListType (VariableType (Ident "b" 0))) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0)))) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "a" 0)))) (ArrowType (ListType (TupleType [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "a" 0)))))))))+,(FunctionDecl (141,1) (Ident "interpret" 0) [(Equation (141,1) (FunLhs (Ident "interpret" 0) [(AsPattern (Ident "convs" 182) (ParenPattern (InfixPattern (VariablePattern (Ident "b" 182)) (QualIdent Nothing (Ident ":" 0)) (InfixPattern (VariablePattern (Ident "ul" 182)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "cs" 182)))))),(VariablePattern (Ident "combine" 182)),(VariablePattern (Ident "cst" 182)),(VariablePattern (Ident "ast" 182)),(ParenPattern (InfixPattern (AsPattern (Ident "t" 182) (TuplePattern [(VariablePattern (Ident "st" 182)),(VariablePattern (Ident "fg" 182)),(VariablePattern (Ident "bg" 182))])) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "fs" 182)))),(VariablePattern (Ident "s" 182))]) (GuardedRhs [(CondExpr (142,3) (Apply (Variable (QualIdent (Just "Prelude") (Ident "null" 0))) (Variable (QualIdent Nothing (Ident "ys" 183)))) (Apply (Variable (QualIdent Nothing (Ident "f" 183))) (Variable (QualIdent Nothing (Ident "xs" 183))))),(CondExpr (143,3) (InfixApply (Variable (QualIdent Nothing (Ident "code" 183))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 189) 5))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "combine" 182))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 183))) (Variable (QualIdent Nothing (Ident "xs" 183)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "StyledText") (Ident "interpret" 0))) (Variable (QualIdent Nothing (Ident "convs" 182)))) (Variable (QualIdent Nothing (Ident "combine" 182)))) (Variable (QualIdent Nothing (Ident "cst" 182)))) (Variable (QualIdent Nothing (Ident "ast" 182)))) (Paren (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "b" 182))),(Variable (QualIdent Nothing (Ident "fg" 182))),(Variable (QualIdent Nothing (Ident "bg" 182)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "t" 182))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "fs" 182))))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ys" 183)))))))),(CondExpr (145,3) (InfixApply (Variable (QualIdent Nothing (Ident "code" 183))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 190) 6))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "combine" 182))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 183))) (Variable (QualIdent Nothing (Ident "xs" 183)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "StyledText") (Ident "interpret" 0))) (Variable (QualIdent Nothing (Ident "convs" 182)))) (Variable (QualIdent Nothing (Ident "combine" 182)))) (Variable (QualIdent Nothing (Ident "cst" 182)))) (Variable (QualIdent Nothing (Ident "ast" 182)))) (Paren (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "ul" 182))),(Variable (QualIdent Nothing (Ident "fg" 182))),(Variable (QualIdent Nothing (Ident "bg" 182)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "t" 182))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "fs" 182))))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ys" 183)))))))),(CondExpr (147,3) (InfixApply (Variable (QualIdent Nothing (Ident "code" 183))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 191) 7))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "combine" 182))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 183))) (Variable (QualIdent Nothing (Ident "xs" 183)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "StyledText") (Ident "interpret" 0))) (Variable (QualIdent Nothing (Ident "convs" 182)))) (Variable (QualIdent Nothing (Ident "combine" 182)))) (Variable (QualIdent Nothing (Ident "cst" 182)))) (Variable (QualIdent Nothing (Ident "ast" 182)))) (Variable (QualIdent Nothing (Ident "fs" 182)))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ys" 183)))))))),(CondExpr (149,3) (InfixApply (Variable (QualIdent Nothing (Ident "code" 183))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 192) 24))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "combine" 182))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 183))) (Variable (QualIdent Nothing (Ident "xs" 183)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "StyledText") (Ident "interpret" 0))) (Variable (QualIdent Nothing (Ident "convs" 182)))) (Variable (QualIdent Nothing (Ident "combine" 182)))) (Variable (QualIdent Nothing (Ident "cst" 182)))) (Variable (QualIdent Nothing (Ident "ast" 182)))) (Paren (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "st" 182))),(Variable (QualIdent Nothing (Ident "g" 183))),(Variable (QualIdent Nothing (Ident "bg" 182)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "t" 182))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "fs" 182))))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ys" 183)))))))),(CondExpr (151,3) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "combine" 182))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 183))) (Variable (QualIdent Nothing (Ident "xs" 183)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "StyledText") (Ident "interpret" 0))) (Variable (QualIdent Nothing (Ident "convs" 182)))) (Variable (QualIdent Nothing (Ident "combine" 182)))) (Variable (QualIdent Nothing (Ident "cst" 182)))) (Variable (QualIdent Nothing (Ident "ast" 182)))) (Paren (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "st" 182))),(Variable (QualIdent Nothing (Ident "fg" 182))),(Variable (QualIdent Nothing (Ident "g" 183)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "t" 182))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "fs" 182))))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "tail" 0))) (Variable (QualIdent Nothing (Ident "ys" 183))))))))] [(PatternDecl (154,3) (VariablePattern (Ident "f" 183)) (SimpleRhs (154,7) (InfixApply (Variable (QualIdent Nothing (Ident "ast" 182))) (InfixOp (QualIdent (Just "Prelude") (Ident "$" 0))) (Apply (Apply (Variable (QualIdent Nothing (Ident "cst" 182))) (Variable (QualIdent Nothing (Ident "st" 182)))) (Paren (Apply (Apply (Variable (QualIdent Nothing (Ident "cst" 182))) (Variable (QualIdent Nothing (Ident "fg" 182)))) (Variable (QualIdent Nothing (Ident "bg" 182))))))) [])),(PatternDecl (155,3) (TuplePattern [(VariablePattern (Ident "xs" 183)),(VariablePattern (Ident "ys" 183))]) (SimpleRhs (155,13) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "break" 0))) (Variable (QualIdent (Just "StyledText") (Ident "special" 0)))) (Variable (QualIdent Nothing (Ident "s" 182)))) [])),(PatternDecl (156,3) (VariablePattern (Ident "code" 183)) (SimpleRhs (156,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "head" 0))) (Variable (QualIdent Nothing (Ident "ys" 183)))))) [])),(PatternDecl (157,3) (VariablePattern (Ident "g" 183)) (SimpleRhs (157,7) (InfixApply (Variable (QualIdent Nothing (Ident "cs" 182))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "code" 183))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 188) 16))))) []))]))])+,(TypeSig (160,1) [(Ident "printStyledText" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (161,1) (Ident "printStyledText" 0) [(Equation (161,1) (FunLhs (Ident "printStyledText" 0) []) (SimpleRhs (161,19) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "putStrLn" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "StyledText") (Ident "toAnsiString" 0)))) []))])+,(TypeSig (163,1) [(Ident "toAnsiString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (164,1) (Ident "toAnsiString" 0) [(Equation (164,1) (FunLhs (Ident "toAnsiString" 0) []) (SimpleRhs (165,5) (Apply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "StyledText") (Ident "interpret" 0))) (List [(Variable (QualIdent (Just "AnsiCodes") (Ident "bold" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "underline" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "black" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "blue" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "cyan" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "green" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "magenta" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "red" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "white" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "yellow" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgBlack" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgBlue" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgCyan" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgGreen" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgMagenta" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgRed" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgWhite" 0))),(Variable (QualIdent (Just "AnsiCodes") (Ident "bgYellow" 0)))])) (Variable (QualIdent (Just "Prelude") (Ident "++" 0)))) (Variable (QualIdent (Just "Prelude") (Ident "." 0)))) (Variable (QualIdent (Just "Prelude") (Ident "id" 0)))) (List [(Tuple [(Variable (QualIdent (Just "Prelude") (Ident "id" 0))),(Variable (QualIdent (Just "Prelude") (Ident "id" 0))),(Variable (QualIdent (Just "Prelude") (Ident "id" 0)))])])) []))])+]
+ src/lib/Curry/Module/.curry/StyledText.efc view
@@ -0,0 +1,1 @@+Prog "StyledText" ["AnsiCodes","Prelude","Pretty","Char"] [TypeSyn ((Nothing,Nothing,"StyledText","ShowS")) Public [] (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","boldChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  5)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","underlineChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  6)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","endChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  7)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blackChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  16)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blueChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  17)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","cyanChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  18)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","greenChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  19)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","magentaChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  20)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","redChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  21)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","whiteChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  22)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","yellowChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  23)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlackChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  24)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlueChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  25)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgCyanChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  26)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgGreenChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  27)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgMagentaChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  28)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgRedChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  29)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgWhiteChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  30)])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgYellowChar")) 0 Private (TCons ((Nothing,Nothing,"Prelude","Char")) []) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Lit (Intc  31)])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bold")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","boldChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","underline")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","underlineChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","black")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blackChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","blue")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blueChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","cyan")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","cyanChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","green")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","greenChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","magenta")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","magentaChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","red")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","redChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","white")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","whiteChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","yellow")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","yellowChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgBlack")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlackChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgBlue")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlueChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgCyan")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgCyanChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgGreen")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgGreenChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgMagenta")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgMagentaChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgRed")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgRedChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgWhite")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgWhiteChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","bgYellow")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgYellowChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","encl")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","endChar")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","boldS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","boldChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","underlineS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","underlineChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","blackS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blackChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","blueS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blueChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","cyanS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","cyanChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","greenS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","greenChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","magentaS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","magentaChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","redS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","redChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","whiteS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","whiteChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","yellowS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","yellowChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgBlackS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlackChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgBlueS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlueChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgCyanS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgCyanChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgGreenS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgGreenChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgMagentaS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgMagentaChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgRedS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgRedChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgWhiteS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgWhiteChar")) []])),Func ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"StyledText","bgYellowS")) 0 Public (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]))) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgYellowChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"StyledText","enclS")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1),(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),2)),Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","endChar")) []]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","boldDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","boldChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","underlineDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","underlineChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","blackDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blackChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","blueDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","blueChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","cyanDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","cyanChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","greenDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","greenChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","magentaDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","magentaChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","redDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","redChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","whiteDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","whiteChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","yellowDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","yellowChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgBlackDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlackChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgBlueDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgBlueChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgCyanDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgCyanChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgGreenDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgGreenChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgMagentaDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgMagentaChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgRedDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgRedChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgWhiteDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgWhiteChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"StyledText","bgYellowDoc")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) [])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","bgYellowChar")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") []))),"StyledText","enclDoc")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (FuncType (TCons ((Nothing,Nothing,"Pretty","Doc")) []) (TCons ((Nothing,Nothing,"Pretty","Doc")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (FuncType (TCons (Nothing,Nothing,"Pretty","Doc") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])))),"Pretty","enclose")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Pretty","Doc") [])),"Pretty","char")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Char") []),"StyledText","endChar")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","plainText")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","not")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"StyledText","special")) []]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"StyledText","special")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Char")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Char") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","elem")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Char") []),1))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  5),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  6),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  7),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","enumFromTo")) [Lit (Intc  16),Lit (Intc  31)]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))))))),"StyledText","interpret")) 6 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 1))) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,,)")) [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 1))))))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1),(Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2),(Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3),(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),8)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),8))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [(Just (TVar 0),9),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),10)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),5))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]),11),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),12)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]),11))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 115) (FuncType (TVar 116) (FuncType (TVar 117) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0])))),"Prelude","(,,)")) [(Just (TVar 115),13),(Just (TVar 116),14),(Just (TVar 117),15)]) (Let [((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 131) (TVar 132)) (FuncType (TVar 131) (TVar 132))),"Prelude","$")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 129) (TVar 130)) (FuncType (TVar 129) (TVar 130))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 123) (TVar 124)) (FuncType (TVar 123) (TVar 124))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (TVar 115),13))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 127) (TVar 128)) (FuncType (TVar 127) (TVar 128))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 125) (TVar 126)) (FuncType (TVar 125) (TVar 126))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (TVar 116),14))],Var ((Just (TVar 117),15))]]])] (Let [((Just (TVar 118),17),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 134) (TVar 135)) (FuncType (TVar 134) (TVar 135))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 133) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 133]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 133],TCons (Nothing,Nothing,"Prelude","[]") [TVar 133]]))),"Prelude","break")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"StyledText","special")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","interpret._#selFP3#xs")) [Var ((Just (TVar 118),17))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","interpret._#selFP4#ys")) [Var ((Just (TVar 118),17))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 136]) (TVar 136)),"Prelude","head")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]])] (Let [((Just (TVar 85),21),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 137]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TVar 137))),"Prelude","!!")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),10)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20)),Lit (Intc  16)]])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Prelude","null")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18))]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20)),Lit (Intc  5)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))))))),"StyledText","interpret")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 116) (FuncType (TVar 117) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0])))),"Prelude","(,,)")) [Var ((Just (TVar 0),7)),Var ((Just (TVar 116),14)),Var ((Just (TVar 117),15))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),12))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20)),Lit (Intc  6)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))))))),"StyledText","interpret")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 116) (FuncType (TVar 117) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0])))),"Prelude","(,,)")) [Var ((Just (TVar 0),9)),Var ((Just (TVar 116),14)),Var ((Just (TVar 117),15))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),12))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20)),Lit (Intc  7)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))))))),"StyledText","interpret")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),12)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),20)),Lit (Intc  24)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))))))),"StyledText","interpret")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 115) (FuncType (TVar 85) (FuncType (TVar 117) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0])))),"Prelude","(,,)")) [Var ((Just (TVar 115),13)),Var ((Just (TVar 85),21)),Var ((Just (TVar 117),15))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),12))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))),"Prelude","$")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1)),16)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),18))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))))))),"StyledText","interpret")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),1)),Var ((Just (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))),3)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 1))),4)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 115) (FuncType (TVar 116) (FuncType (TVar 85) (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0])))),"Prelude","(,,)")) [Var ((Just (TVar 115),13)),Var ((Just (TVar 116),14)),Var ((Just (TVar 85),21))],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]),12))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","tail")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),19))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TVar 1),"Prelude","failed")) [])])])])])])])))))))])])])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","interpret._#selFP3#xs")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 2) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TVar 2),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","interpret._#selFP4#ys")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 1),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"StyledText","printStyledText")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStrLn")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","toAnsiString")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"StyledText","toAnsiString")) 0 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))) (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))))))),"StyledText","interpret")) [Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bold")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","underline")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","black")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","blue")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","cyan")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","green")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","magenta")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","red")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","white")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","yellow")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgBlack")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgBlue")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgCyan")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgGreen")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgMagenta")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgRed")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgWhite")) [],Comb ConsCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"AnsiCodes","bgYellow")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])))),"Prelude",".")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","id")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,,)") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (FuncType (TVar 30) (TVar 30)) (FuncType (FuncType (TVar 31) (TVar 31)) (FuncType (FuncType (TVar 32) (TVar 32)) (TCons (Nothing,Nothing,"Prelude","(,,)") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])])))),"Prelude","(,,)")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 30) (TVar 30)),"Prelude","id")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 31) (TVar 31)),"Prelude","id")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 32) (TVar 32)),"Prelude","id")) []],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,,)") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])]]),"Prelude","[]")) []]]))] []
+ src/lib/Curry/Module/.curry/StyledText.fcy view
@@ -0,0 +1,1 @@+Prog "StyledText" ["AnsiCodes","Prelude","Pretty","Char"] [TypeSyn ("StyledText","ShowS") Public [] (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))] [Func ("StyledText","boldChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  5)])),Func ("StyledText","underlineChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  6)])),Func ("StyledText","endChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  7)])),Func ("StyledText","blackChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  16)])),Func ("StyledText","blueChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  17)])),Func ("StyledText","cyanChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  18)])),Func ("StyledText","greenChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  19)])),Func ("StyledText","magentaChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  20)])),Func ("StyledText","redChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  21)])),Func ("StyledText","whiteChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  22)])),Func ("StyledText","yellowChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  23)])),Func ("StyledText","bgBlackChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  24)])),Func ("StyledText","bgBlueChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  25)])),Func ("StyledText","bgCyanChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  26)])),Func ("StyledText","bgGreenChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  27)])),Func ("StyledText","bgMagentaChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  28)])),Func ("StyledText","bgRedChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  29)])),Func ("StyledText","bgWhiteChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  30)])),Func ("StyledText","bgYellowChar") 0 Private (TCons ("Prelude","Char") []) (Rule [] (Comb FuncCall ("Prelude","chr") [Lit (Intc  31)])),Func ("StyledText","bold") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","boldChar") []])),Func ("StyledText","underline") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","underlineChar") []])),Func ("StyledText","black") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","blackChar") []])),Func ("StyledText","blue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","blueChar") []])),Func ("StyledText","cyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","cyanChar") []])),Func ("StyledText","green") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","greenChar") []])),Func ("StyledText","magenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","magentaChar") []])),Func ("StyledText","red") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","redChar") []])),Func ("StyledText","white") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","whiteChar") []])),Func ("StyledText","yellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","yellowChar") []])),Func ("StyledText","bgBlack") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgBlackChar") []])),Func ("StyledText","bgBlue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgBlueChar") []])),Func ("StyledText","bgCyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgCyanChar") []])),Func ("StyledText","bgGreen") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgGreenChar") []])),Func ("StyledText","bgMagenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgMagentaChar") []])),Func ("StyledText","bgRed") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgRedChar") []])),Func ("StyledText","bgWhite") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgWhiteChar") []])),Func ("StyledText","bgYellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","encl") [Comb FuncCall ("StyledText","bgYellowChar") []])),Func ("StyledText","encl") 2 Private (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [1,2] (Comb ConsCall ("Prelude",":") [Var 1,Comb FuncCall ("Prelude","++") [Var 2,Comb ConsCall ("Prelude",":") [Comb FuncCall ("StyledText","endChar") [],Comb ConsCall ("Prelude","[]") []]]])),Func ("StyledText","boldS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","boldChar") []])),Func ("StyledText","underlineS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","underlineChar") []])),Func ("StyledText","blackS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","blackChar") []])),Func ("StyledText","blueS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","blueChar") []])),Func ("StyledText","cyanS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","cyanChar") []])),Func ("StyledText","greenS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","greenChar") []])),Func ("StyledText","magentaS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","magentaChar") []])),Func ("StyledText","redS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","redChar") []])),Func ("StyledText","whiteS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","whiteChar") []])),Func ("StyledText","yellowS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","yellowChar") []])),Func ("StyledText","bgBlackS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgBlackChar") []])),Func ("StyledText","bgBlueS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgBlueChar") []])),Func ("StyledText","bgCyanS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgCyanChar") []])),Func ("StyledText","bgGreenS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgGreenChar") []])),Func ("StyledText","bgMagentaS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgMagentaChar") []])),Func ("StyledText","bgRedS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgRedChar") []])),Func ("StyledText","bgWhiteS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgWhiteChar") []])),Func ("StyledText","bgYellowS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Comb (FuncPartCall 1) ("StyledText","enclS") [Comb FuncCall ("StyledText","bgYellowChar") []])),Func ("StyledText","enclS") 2 Private (FuncType (TCons ("Prelude","Char") []) (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])))) (Rule [1,2] (Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Prelude",":") [Var 1],Comb FuncCall ("Prelude",".") [Var 2,Comb (ConsPartCall 1) ("Prelude",":") [Comb FuncCall ("StyledText","endChar") []]]])),Func ("StyledText","boldDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","boldChar") []])),Func ("StyledText","underlineDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","underlineChar") []])),Func ("StyledText","blackDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","blackChar") []])),Func ("StyledText","blueDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","blueChar") []])),Func ("StyledText","cyanDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","cyanChar") []])),Func ("StyledText","greenDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","greenChar") []])),Func ("StyledText","magentaDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","magentaChar") []])),Func ("StyledText","redDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","redChar") []])),Func ("StyledText","whiteDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","whiteChar") []])),Func ("StyledText","yellowDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","yellowChar") []])),Func ("StyledText","bgBlackDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgBlackChar") []])),Func ("StyledText","bgBlueDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgBlueChar") []])),Func ("StyledText","bgCyanDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgCyanChar") []])),Func ("StyledText","bgGreenDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgGreenChar") []])),Func ("StyledText","bgMagentaDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgMagentaChar") []])),Func ("StyledText","bgRedDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgRedChar") []])),Func ("StyledText","bgWhiteDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgWhiteChar") []])),Func ("StyledText","bgYellowDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Comb FuncCall ("StyledText","enclDoc") [Comb FuncCall ("StyledText","bgYellowChar") []])),Func ("StyledText","enclDoc") 1 Private (FuncType (TCons ("Prelude","Char") []) (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") []))) (Rule [1] (Comb (FuncPartCall 1) ("Pretty","enclose") [Comb FuncCall ("Pretty","char") [Var 1],Comb FuncCall ("Pretty","char") [Comb FuncCall ("StyledText","endChar") []]])),Func ("StyledText","plainText") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","not") [],Comb (FuncPartCall 1) ("StyledText","special") []]])),Func ("StyledText","special") 1 Private (FuncType (TCons ("Prelude","Char") []) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","elem") [Comb FuncCall ("Prelude","ord") [Var 1]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Intc  5),Comb ConsCall ("Prelude",":") [Lit (Intc  6),Comb ConsCall ("Prelude",":") [Lit (Intc  7),Comb ConsCall ("Prelude","[]") []]]],Comb FuncCall ("Prelude","enumFromTo") [Lit (Intc  16),Lit (Intc  31)]]])),Func ("StyledText","interpret") 6 Private (FuncType (TCons ("Prelude","[]") [TVar 0]) (FuncType (FuncType (TVar 1) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 1))) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,,)") [TVar 0,TVar 0,TVar 0]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 1))))))) (Rule [1,2,3,4,5,6] (Case  Flex (Var 1) [Branch (Pattern ("Prelude",":") [7,8]) (Case  Flex (Var 8) [Branch (Pattern ("Prelude",":") [9,10]) (Case  Flex (Var 5) [Branch (Pattern ("Prelude",":") [11,12]) (Case  Flex (Var 11) [Branch (Pattern ("Prelude","(,,)") [13,14,15]) (Let [(16,Comb FuncCall ("Prelude","$") [Var 4,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Var 13],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Var 14],Var 15]]])] (Let [(17,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","break") [Comb (FuncPartCall 1) ("StyledText","special") []],Var 6])] (Let [(18,Comb FuncCall ("StyledText","interpret._#selFP3#xs") [Var 17])] (Let [(19,Comb FuncCall ("StyledText","interpret._#selFP4#ys") [Var 17])] (Let [(20,Comb FuncCall ("Prelude","ord") [Comb FuncCall ("Prelude","head") [Var 19]])] (Let [(21,Comb FuncCall ("Prelude","!!") [Var 10,Comb FuncCall ("Prelude","-") [Var 20,Lit (Intc  16)]])] (Case  Rigid (Comb FuncCall ("Prelude","null") [Var 19]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","apply") [Var 16,Var 18]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 20,Lit (Intc  5)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","apply") [Var 16,Var 18]],Comb FuncCall ("StyledText","interpret") [Var 1,Var 2,Var 3,Var 4,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,,)") [Var 7,Var 14,Var 15],Comb ConsCall ("Prelude",":") [Var 11,Var 12]],Comb FuncCall ("Prelude","tail") [Var 19]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 20,Lit (Intc  6)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","apply") [Var 16,Var 18]],Comb FuncCall ("StyledText","interpret") [Var 1,Var 2,Var 3,Var 4,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,,)") [Var 9,Var 14,Var 15],Comb ConsCall ("Prelude",":") [Var 11,Var 12]],Comb FuncCall ("Prelude","tail") [Var 19]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 20,Lit (Intc  7)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","apply") [Var 16,Var 18]],Comb FuncCall ("StyledText","interpret") [Var 1,Var 2,Var 3,Var 4,Var 12,Comb FuncCall ("Prelude","tail") [Var 19]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 20,Lit (Intc  24)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","apply") [Var 16,Var 18]],Comb FuncCall ("StyledText","interpret") [Var 1,Var 2,Var 3,Var 4,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,,)") [Var 13,Var 21,Var 15],Comb ConsCall ("Prelude",":") [Var 11,Var 12]],Comb FuncCall ("Prelude","tail") [Var 19]]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","$") [Comb FuncCall ("Prelude","apply") [Var 2,Comb FuncCall ("Prelude","apply") [Var 16,Var 18]],Comb FuncCall ("StyledText","interpret") [Var 1,Var 2,Var 3,Var 4,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,,)") [Var 13,Var 14,Var 21],Comb ConsCall ("Prelude",":") [Var 11,Var 12]],Comb FuncCall ("Prelude","tail") [Var 19]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])])])))))))])])])])),Func ("StyledText","interpret._#selFP3#xs") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 2)])),Func ("StyledText","interpret._#selFP4#ys") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Var 3)])),Func ("StyledText","printStyledText") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","putStrLn") [],Comb FuncCall ("StyledText","toAnsiString") []])),Func ("StyledText","toAnsiString") 0 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Comb (FuncPartCall 1) ("StyledText","interpret") [Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bold") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","underline") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","black") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","blue") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","cyan") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","green") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","magenta") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","red") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","white") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","yellow") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgBlack") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgBlue") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgCyan") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgGreen") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgMagenta") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgRed") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgWhite") [],Comb ConsCall ("Prelude",":") [Comb FuncCall ("AnsiCodes","bgYellow") [],Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]],Comb (FuncPartCall 2) ("Prelude","++") [],Comb (FuncPartCall 2) ("Prelude",".") [],Comb (FuncPartCall 1) ("Prelude","id") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,,)") [Comb (FuncPartCall 1) ("Prelude","id") [],Comb (FuncPartCall 1) ("Prelude","id") [],Comb (FuncPartCall 1) ("Prelude","id") []],Comb ConsCall ("Prelude","[]") []]]))] []
+ src/lib/Curry/Module/.curry/StyledText.fint view
@@ -0,0 +1,1 @@+Prog "StyledText" ["AnsiCodes","Prelude","Pretty","Char"] [Type ("Pretty","Doc") Public [] [],TypeSyn ("StyledText","ShowS") Public [] (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))] [Func ("StyledText","bold") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","underline") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","black") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","blue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","cyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","green") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","magenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","red") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","white") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","yellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgBlack") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgBlue") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgCyan") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgGreen") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgMagenta") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgRed") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgWhite") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","bgYellow") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","boldS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","underlineS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","blackS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","blueS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","cyanS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","greenS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","magentaS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","redS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","whiteS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","yellowS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgBlackS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgBlueS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgCyanS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgGreenS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgMagentaS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgRedS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgWhiteS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","bgYellowS") 0 Public (FuncType (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]))) (Rule [] (Var 0)),Func ("StyledText","boldDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","underlineDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","blackDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","blueDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","cyanDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","greenDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","magentaDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","redDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","whiteDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","yellowDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgBlackDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgBlueDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgCyanDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgGreenDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgMagentaDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgRedDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgWhiteDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","bgYellowDoc") 0 Public (FuncType (TCons ("Pretty","Doc") []) (TCons ("Pretty","Doc") [])) (Rule [] (Var 0)),Func ("StyledText","plainText") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("StyledText","printStyledText") 0 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/StyledText.uacy view
@@ -0,0 +1,85 @@+CurryProg "StyledText"+ ["Prelude","Char","Pretty","AnsiCodes"]+ [CTypeSyn ("StyledText","ShowS") Public [] (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") []))]+ [CFunc ("StyledText","bgBlack") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgBlackChar")))] []]),+  CFunc ("StyledText","bgBlackChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 24)))] []]),+  CFunc ("StyledText","bgBlackDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgBlackChar")))] []]),+  CFunc ("StyledText","bgBlackS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgBlackChar")))] []]),+  CFunc ("StyledText","bgBlue") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgBlueChar")))] []]),+  CFunc ("StyledText","bgBlueChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 25)))] []]),+  CFunc ("StyledText","bgBlueDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgBlueChar")))] []]),+  CFunc ("StyledText","bgBlueS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgBlueChar")))] []]),+  CFunc ("StyledText","bgCyan") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgCyanChar")))] []]),+  CFunc ("StyledText","bgCyanChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 26)))] []]),+  CFunc ("StyledText","bgCyanDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgCyanChar")))] []]),+  CFunc ("StyledText","bgCyanS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgCyanChar")))] []]),+  CFunc ("StyledText","bgGreen") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgGreenChar")))] []]),+  CFunc ("StyledText","bgGreenChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 27)))] []]),+  CFunc ("StyledText","bgGreenDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgGreenChar")))] []]),+  CFunc ("StyledText","bgGreenS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgGreenChar")))] []]),+  CFunc ("StyledText","bgMagenta") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgMagentaChar")))] []]),+  CFunc ("StyledText","bgMagentaChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 28)))] []]),+  CFunc ("StyledText","bgMagentaDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgMagentaChar")))] []]),+  CFunc ("StyledText","bgMagentaS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgMagentaChar")))] []]),+  CFunc ("StyledText","bgRed") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgRedChar")))] []]),+  CFunc ("StyledText","bgRedChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 29)))] []]),+  CFunc ("StyledText","bgRedDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgRedChar")))] []]),+  CFunc ("StyledText","bgRedS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgRedChar")))] []]),+  CFunc ("StyledText","bgWhite") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgWhiteChar")))] []]),+  CFunc ("StyledText","bgWhiteChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 30)))] []]),+  CFunc ("StyledText","bgWhiteDoc") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgWhiteChar")))] []]),+  CFunc ("StyledText","bgWhiteS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgWhiteChar")))] []]),+  CFunc ("StyledText","bgYellow") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","bgYellowChar")))] []]),+  CFunc ("StyledText","bgYellowChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 31)))] []]),+  CFunc ("StyledText","bgYellowDoc") 0 Public (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","bgYellowChar")))] []]),+  CFunc ("StyledText","bgYellowS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","bgYellowChar")))] []]),+  CFunc ("StyledText","black") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","blackChar")))] []]),+  CFunc ("StyledText","blackChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 16)))] []]),+  CFunc ("StyledText","blackDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","blackChar")))] []]),+  CFunc ("StyledText","blackS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","blackChar")))] []]),+  CFunc ("StyledText","blue") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","blueChar")))] []]),+  CFunc ("StyledText","blueChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 17)))] []]),+  CFunc ("StyledText","blueDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","blueChar")))] []]),+  CFunc ("StyledText","blueS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","blueChar")))] []]),+  CFunc ("StyledText","bold") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","boldChar")))] []]),+  CFunc ("StyledText","boldChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 5)))] []]),+  CFunc ("StyledText","boldDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","boldChar")))] []]),+  CFunc ("StyledText","boldS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","boldChar")))] []]),+  CFunc ("StyledText","cyan") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","cyanChar")))] []]),+  CFunc ("StyledText","cyanChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 18)))] []]),+  CFunc ("StyledText","cyanDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","cyanChar")))] []]),+  CFunc ("StyledText","cyanS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","cyanChar")))] []]),+  CFunc ("StyledText","encl") 2 Private (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") []))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"s"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("StyledText","endChar"))) (CSymbol ("Prelude","[]")))))] []]),+  CFunc ("StyledText","enclDoc") 1 Private (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") []))) (CRules CFlex [CRule [CPVar (0,"c")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Pretty","enclose")) (CApply (CSymbol ("Pretty","char")) (CVar (0,"c")))) (CApply (CSymbol ("Pretty","char")) (CSymbol ("StyledText","endChar"))))] []]),+  CFunc ("StyledText","enclS") 2 Private (CFuncType (CTCons ("Prelude","Char") []) (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") []))) (CRules CFlex [CRule [CPVar (0,"c"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CVar (0,"c"))) (CVar (2,"x0"))))) (CApply (CApply (CSymbol ("Prelude",".")) (CVar (1,"s"))) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("StyledText","endChar"))) (CVar (3,"x0"))))))] []]),+  CFunc ("StyledText","endChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 7)))] []]),+  CFunc ("StyledText","green") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","greenChar")))] []]),+  CFunc ("StyledText","greenChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 19)))] []]),+  CFunc ("StyledText","greenDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","greenChar")))] []]),+  CFunc ("StyledText","greenS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","greenChar")))] []]),+  CFunc ("StyledText","interpret") 6 Private (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"b")]) (CFuncType (CFuncType (CTVar (1,"a")) (CFuncType (CTVar (1,"a")) (CTVar (1,"a")))) (CFuncType (CFuncType (CTVar (0,"b")) (CFuncType (CTVar (0,"b")) (CTVar (0,"b")))) (CFuncType (CFuncType (CTVar (0,"b")) (CFuncType (CTCons ("Prelude","String") []) (CTVar (1,"a")))) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","(,,)") [CTVar (0,"b"),CTVar (0,"b"),CTVar (0,"b")]]) (CFuncType (CTCons ("Prelude","String") []) (CTVar (1,"a")))))))) (CRules CFlex [CRule [CPAs (3,"convs") (CPComb ("Prelude",":") [CPVar (0,"b"),CPComb ("Prelude",":") [CPVar (1,"ul"),CPVar (2,"cs")]]),CPVar (4,"combine"),CPVar (5,"cst"),CPVar (6,"ast"),CPComb ("Prelude",":") [CPAs (10,"t") (CPComb ("Prelude","(,,)") [CPVar (7,"st"),CPVar (8,"fg"),CPVar (9,"bg")]),CPVar (11,"fs")],CPVar (12,"s")] [(CApply (CSymbol ("Prelude","null")) (CVar (15,"ys")),CApply (CVar (13,"f")) (CVar (14,"xs"))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (16,"code"))) (CLit (CIntc 5)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (0,"b"))) (CVar (8,"fg"))) (CVar (9,"bg")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (16,"code"))) (CLit (CIntc 6)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (1,"ul"))) (CVar (8,"fg"))) (CVar (9,"bg")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CApply (CApply (CSymbol ("Prelude","==")) (CVar (16,"code"))) (CLit (CIntc 7)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CVar (11,"fs"))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CApply (CApply (CSymbol ("Prelude","<")) (CVar (16,"code"))) (CLit (CIntc 24)),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (7,"st"))) (CVar (17,"g"))) (CVar (9,"bg")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys"))))),(CSymbol ("Prelude","otherwise"),CApply (CApply (CSymbol ("Prelude","$")) (CApply (CVar (4,"combine")) (CApply (CVar (13,"f")) (CVar (14,"xs"))))) (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CVar (3,"convs"))) (CVar (4,"combine"))) (CVar (5,"cst"))) (CVar (6,"ast"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CVar (7,"st"))) (CVar (8,"fg"))) (CVar (17,"g")))) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (10,"t"))) (CVar (11,"fs"))))) (CApply (CSymbol ("Prelude","tail")) (CVar (15,"ys")))))] [CLocalPat (CPVar (13,"f")) (CApply (CApply (CSymbol ("Prelude","$")) (CVar (6,"ast"))) (CApply (CApply (CVar (5,"cst")) (CVar (7,"st"))) (CApply (CApply (CVar (5,"cst")) (CVar (8,"fg"))) (CVar (9,"bg"))))) [],CLocalPat (CPComb ("Prelude","(,)") [CPVar (14,"xs"),CPVar (15,"ys")]) (CApply (CApply (CSymbol ("Prelude","break")) (CSymbol ("StyledText","special"))) (CVar (12,"s"))) [],CLocalPat (CPVar (16,"code")) (CApply (CSymbol ("Prelude","ord")) (CApply (CSymbol ("Prelude","head")) (CVar (15,"ys")))) [],CLocalPat (CPVar (17,"g")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (2,"cs"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (16,"code"))) (CLit (CIntc 16)))) []]]),+  CFunc ("StyledText","magenta") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","magentaChar")))] []]),+  CFunc ("StyledText","magentaChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 20)))] []]),+  CFunc ("StyledText","magentaDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","magentaChar")))] []]),+  CFunc ("StyledText","magentaS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","magentaChar")))] []]),+  CFunc ("StyledText","plainText") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","not"))) (CSymbol ("StyledText","special"))))] []]),+  CFunc ("StyledText","printStyledText") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","putStrLn"))) (CSymbol ("StyledText","toAnsiString")))] []]),+  CFunc ("StyledText","red") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","redChar")))] []]),+  CFunc ("StyledText","redChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 21)))] []]),+  CFunc ("StyledText","redDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","redChar")))] []]),+  CFunc ("StyledText","redS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","redChar")))] []]),+  CFunc ("StyledText","special") 1 Private (CFuncType (CTCons ("Prelude","Char") []) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","elem")) (CApply (CSymbol ("Prelude","ord")) (CVar (0,"n")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 5))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 6))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 7))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude","enumFromTo")) (CLit (CIntc 16))) (CLit (CIntc 31)))))] []]),+  CFunc ("StyledText","toAnsiString") 0 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CApply (CSymbol ("StyledText","interpret")) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bold"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","underline"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","black"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","blue"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","cyan"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","green"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","magenta"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","red"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","white"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","yellow"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgBlack"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgBlue"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgCyan"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgGreen"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgMagenta"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgRed"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgWhite"))) (CApply (CApply (CSymbol ("Prelude",":")) (CSymbol ("AnsiCodes","bgYellow"))) (CSymbol ("Prelude","[]"))))))))))))))))))))) (CSymbol ("Prelude","++"))) (CSymbol ("Prelude","."))) (CSymbol ("Prelude","id"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CApply (CSymbol ("Prelude","(,,)")) (CSymbol ("Prelude","id"))) (CSymbol ("Prelude","id"))) (CSymbol ("Prelude","id")))) (CSymbol ("Prelude","[]"))))] []]),+  CFunc ("StyledText","underline") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","underlineChar")))] []]),+  CFunc ("StyledText","underlineChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 6)))] []]),+  CFunc ("StyledText","underlineDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","underlineChar")))] []]),+  CFunc ("StyledText","underlineS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","underlineChar")))] []]),+  CFunc ("StyledText","white") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","whiteChar")))] []]),+  CFunc ("StyledText","whiteChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 22)))] []]),+  CFunc ("StyledText","whiteDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","whiteChar")))] []]),+  CFunc ("StyledText","whiteS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","whiteChar")))] []]),+  CFunc ("StyledText","yellow") 0 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","encl")) (CSymbol ("StyledText","yellowChar")))] []]),+  CFunc ("StyledText","yellowChar") 0 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","chr")) (CLit (CIntc 23)))] []]),+  CFunc ("StyledText","yellowDoc") 0 Public (CFuncType (CTCons ("Pretty","Doc") []) (CTCons ("Pretty","Doc") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclDoc")) (CSymbol ("StyledText","yellowChar")))] []]),+  CFunc ("StyledText","yellowS") 0 Public (CFuncType (CTCons ("StyledText","ShowS") []) (CTCons ("StyledText","ShowS") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CSymbol ("StyledText","enclS")) (CSymbol ("StyledText","yellowChar")))] []])]+ []
+ src/lib/Curry/Module/.curry/System.acy view
@@ -0,0 +1,21 @@+CurryProg "System"+ ["Prelude","Global"]+ []+ [CFunc ("System","environ") 0 Private (CTCons ("Global","Global") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Global","global")) (CSymbol ("Prelude","[]"))) (CSymbol ("Global","Temporary")))] []]),+  CFunc ("System","exitWith") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CRules CFlex [CRule [CPVar (0,"exitcode")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("System","prim_exitWith"))) (CVar (0,"exitcode")))] []]),+  CFunc ("System","getArgs") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]) (CExternal "getArgs"),+  CFunc ("System","getCPUTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getCPUTime"),+  CFunc ("System","getElapsedTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getElapsedTime"),+  CFunc ("System","getEnviron") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CRules CFlex [CRule [CPVar (0,"evar")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("System","prim_getEnviron"))) (CVar (0,"evar")))) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (0,"evar"))) (CVar (1,"envs"))))])] []]),+  CFunc ("System","getHostname") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CExternal "getHostname"),+  CFunc ("System","getPID") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getPID"),+  CFunc ("System","getProgName") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CExternal "getProgName"),+  CFunc ("System","prim_exitWith") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CExternal "prim_exitWith"),+  CFunc ("System","prim_getEnviron") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]])) (CExternal "prim_getEnviron"),+  CFunc ("System","prim_sleep") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_sleep"),+  CFunc ("System","prim_system") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CExternal "prim_system"),+  CFunc ("System","setEnviron") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"evar"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Global","writeGlobal")) (CSymbol ("System","environ"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"evar"))) (CVar (1,"val")))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (3,"x0"))) (CVar (0,"evar"))))) (CSymbol ("Prelude","fst")))) (CVar (2,"envs")))))])] []]),+  CFunc ("System","sleep") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("System","prim_sleep"))) (CVar (0,"n")))] []]),+  CFunc ("System","system") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("System","prim_system"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("System","set"))) (CVar (1,"envs")))) (CVar (0,"cmd"))))])] [CLocalFunc (CFunc ("System","set") 1 Private (CFuncType (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []],CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (1,"var"),CPVar (2,"val")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"var"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"val"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))] []]))]]),+  CFunc ("System","unsetEnviron") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"evar")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Global","writeGlobal")) (CSymbol ("System","environ"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (2,"x0"))) (CVar (0,"evar"))))) (CSymbol ("Prelude","fst")))) (CVar (1,"envs"))))])] []])]+ []
+ src/lib/Curry/Module/.curry/System.cy view
@@ -0,0 +1,39 @@+Module "System"+(Just (Exporting (8,14) [(Export (QualIdent Nothing (Ident "getCPUTime" 0))),(Export (QualIdent Nothing (Ident "getElapsedTime" 0))),(Export (QualIdent Nothing (Ident "getArgs" 0))),(Export (QualIdent Nothing (Ident "getEnviron" 0))),(Export (QualIdent Nothing (Ident "setEnviron" 0))),(Export (QualIdent Nothing (Ident "unsetEnviron" 0))),(Export (QualIdent Nothing (Ident "getHostname" 0))),(Export (QualIdent Nothing (Ident "getPID" 0))),(Export (QualIdent Nothing (Ident "getProgName" 0))),(Export (QualIdent Nothing (Ident "system" 0))),(Export (QualIdent Nothing (Ident "exitWith" 0))),(Export (QualIdent Nothing (Ident "sleep" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (13,1) "Global" False Nothing Nothing)+,(TypeSig (17,1) [(Ident "getCPUTime" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))+,(FlatExternalDecl (18,1) [(Ident "getCPUTime" 0)])+,(TypeSig (22,1) [(Ident "getElapsedTime" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))+,(FlatExternalDecl (23,1) [(Ident "getElapsedTime" 0)])+,(TypeSig (28,1) [(Ident "getArgs" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []))]))+,(FlatExternalDecl (29,1) [(Ident "getArgs" 0)])+,(TypeSig (34,1) [(Ident "getEnviron" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FunctionDecl (35,1) (Ident "getEnviron" 0) [(Equation (35,1) (FunLhs (Ident "getEnviron" 0) [(VariablePattern (Ident "evar" 2))]) (SimpleRhs (35,19) (Do [(StmtBind (VariablePattern (Ident "envs" 4)) (Apply (Variable (QualIdent (Just "Global") (Ident "readGlobal" 0))) (Variable (QualIdent (Just "System") (Ident "environ" 0)))))] (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Paren (InfixApply (Variable (QualIdent (Just "System") (Ident "prim_getEnviron" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "evar" 2)))))) (Variable (QualIdent (Just "Prelude") (Ident "return" 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "lookup" 0))) (Variable (QualIdent Nothing (Ident "evar" 2)))) (Variable (QualIdent Nothing (Ident "envs" 4))))))) []))])+,(TypeSig (39,1) [(Ident "prim_getEnviron" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))+,(FlatExternalDecl (40,1) [(Ident "prim_getEnviron" 0)])+,(TypeSig (43,1) [(Ident "environ" 0)] (ConstructorType (QualIdent Nothing (Ident "Global" 0)) [(ListType (TupleType [(ConstructorType (QualIdent Nothing (Ident "String" 0)) []),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))]))+,(FunctionDecl (44,1) (Ident "environ" 0) [(Equation (44,1) (FunLhs (Ident "environ" 0) []) (SimpleRhs (44,11) (Apply (Apply (Variable (QualIdent (Just "Global") (Ident "global" 0))) (List [])) (Constructor (QualIdent (Just "Global") (Ident "Temporary" 0)))) []))])+,(TypeSig (52,1) [(Ident "setEnviron" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])]))))+,(FunctionDecl (53,1) (Ident "setEnviron" 0) [(Equation (53,1) (FunLhs (Ident "setEnviron" 0) [(VariablePattern (Ident "evar" 7)),(VariablePattern (Ident "val" 7))]) (SimpleRhs (53,23) (Do [(StmtBind (VariablePattern (Ident "envs" 9)) (Apply (Variable (QualIdent (Just "Global") (Ident "readGlobal" 0))) (Variable (QualIdent (Just "System") (Ident "environ" 0)))))] (Apply (Apply (Variable (QualIdent (Just "Global") (Ident "writeGlobal" 0))) (Variable (QualIdent (Just "System") (Ident "environ" 0)))) (Paren (InfixApply (Tuple [(Variable (QualIdent Nothing (Ident "evar" 7))),(Variable (QualIdent Nothing (Ident "val" 7)))]) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "evar" 7)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "fst" 0)))))) (Variable (QualIdent Nothing (Ident "envs" 9)))))))) []))])+,(TypeSig (60,1) [(Ident "unsetEnviron" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (61,1) (Ident "unsetEnviron" 0) [(Equation (61,1) (FunLhs (Ident "unsetEnviron" 0) [(VariablePattern (Ident "evar" 10))]) (SimpleRhs (61,21) (Do [(StmtBind (VariablePattern (Ident "envs" 12)) (Apply (Variable (QualIdent (Just "Global") (Ident "readGlobal" 0))) (Variable (QualIdent (Just "System") (Ident "environ" 0)))))] (Apply (Apply (Variable (QualIdent (Just "Global") (Ident "writeGlobal" 0))) (Variable (QualIdent (Just "System") (Ident "environ" 0)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "filter" 0))) (Paren (InfixApply (RightSection (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Variable (QualIdent Nothing (Ident "evar" 10)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "fst" 0)))))) (Variable (QualIdent Nothing (Ident "envs" 12))))))) []))])+,(TypeSig (67,1) [(Ident "getHostname" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))+,(FlatExternalDecl (68,1) [(Ident "getHostname" 0)])+,(TypeSig (72,1) [(Ident "getPID" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))+,(FlatExternalDecl (73,1) [(Ident "getPID" 0)])+,(TypeSig (79,1) [(Ident "getProgName" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))+,(FlatExternalDecl (80,1) [(Ident "getProgName" 0)])+,(TypeSig (86,1) [(Ident "system" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])))+,(FunctionDecl (87,1) (Ident "system" 0) [(Equation (87,1) (FunLhs (Ident "system" 0) [(VariablePattern (Ident "cmd" 13))]) (SimpleRhs (87,14) (Do [(StmtBind (VariablePattern (Ident "envs" 17)) (Apply (Variable (QualIdent (Just "Global") (Ident "readGlobal" 0))) (Variable (QualIdent (Just "System") (Ident "environ" 0)))))] (InfixApply (Variable (QualIdent (Just "System") (Ident "prim_system" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Paren (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "concatMap" 0))) (Variable (QualIdent Nothing (Ident "set" 14)))) (Variable (QualIdent Nothing (Ident "envs" 17)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "cmd" 13))))))) [(FunctionDecl (91,4) (Ident "set" 14) [(Equation (91,4) (FunLhs (Ident "set" 14) [(TuplePattern [(VariablePattern (Ident "var" 15)),(VariablePattern (Ident "val" 15))])]) (SimpleRhs (91,20) (InfixApply (Literal (String "export ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "var" 15))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String "=")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "val" 15))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Literal (String "; ")))))) []))])]))])+,(TypeSig (93,1) [(Ident "prim_system" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])))+,(FlatExternalDecl (94,1) [(Ident "prim_system" 0)])+,(TypeSig (101,1) [(Ident "exitWith" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "_" 0))])))+,(FunctionDecl (102,1) (Ident "exitWith" 0) [(Equation (102,1) (FunLhs (Ident "exitWith" 0) [(VariablePattern (Ident "exitcode" 18))]) (SimpleRhs (102,21) (InfixApply (Variable (QualIdent (Just "System") (Ident "prim_exitWith" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "exitcode" 18)))) []))])+,(TypeSig (104,1) [(Ident "prim_exitWith" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "_" 0))])))+,(FlatExternalDecl (105,1) [(Ident "prim_exitWith" 0)])+,(TypeSig (111,1) [(Ident "sleep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FunctionDecl (112,1) (Ident "sleep" 0) [(Equation (112,1) (FunLhs (Ident "sleep" 0) [(VariablePattern (Ident "n" 20))]) (SimpleRhs (112,11) (InfixApply (Variable (QualIdent (Just "System") (Ident "prim_sleep" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "n" 20)))) []))])+,(TypeSig (114,1) [(Ident "prim_sleep" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(TupleType [])])))+,(FlatExternalDecl (115,1) [(Ident "prim_sleep" 0)])+]
+ src/lib/Curry/Module/.curry/System.efc view
@@ -0,0 +1,1 @@+Prog "System" ["Global","Prelude"] [] [Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"System","getCPUTime")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (External "System.getCPUTime"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"System","getElapsedTime")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (External "System.getElapsedTime"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"System","getArgs")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (External "System.getArgs"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"System","getEnviron")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Global","readGlobal")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"System","getEnviron._#lambda2")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"System","getEnviron._#lambda2")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])))),"Prelude","maybe")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"System","prim_getEnviron")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"Prelude","return")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","lookup")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]])),"System","prim_getEnviron")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]])) (External "System.prim_getEnviron"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) 0 Private (TCons ((Nothing,Nothing,"Global","Global")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (FuncType (TCons (Nothing,Nothing,"Global","GlobalSpec") []) (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]))),"Global","global")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) [],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","GlobalSpec") []),"Global","Temporary")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"System","setEnviron")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Global","readGlobal")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"System","setEnviron._#lambda3")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])))),"System","setEnviron._#lambda3")) 3 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Global","writeGlobal")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) [],Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","fst")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),3))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"System","unsetEnviron")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Global","readGlobal")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"System","unsetEnviron._#lambda4")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"System","unsetEnviron._#lambda4")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Global","writeGlobal")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","filter")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","flip")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","fst")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))]])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"System","getHostname")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (External "System.getHostname"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"System","getPID")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (External "System.getPID"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"System","getProgName")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (External "System.getProgName"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"System","system")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]])),"Global","readGlobal")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Global","Global") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]]),"System","environ")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"System","system._#lambda5")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"System","system.set.14")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '='),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ';'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"System","system._#lambda5")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []],TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"System","prim_system")) [],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","concatMap")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"System","system.set.14")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []],TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []])),"System","prim_system")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []])) (External "System.prim_system"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"System","exitWith")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"System","prim_exitWith")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"System","prim_exitWith")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (External "System.prim_exitWith"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"System","sleep")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"System","prim_sleep")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"System","prim_sleep")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","()")) []])) (External "System.prim_sleep")] []
+ src/lib/Curry/Module/.curry/System.fcy view
@@ -0,0 +1,1 @@+Prog "System" ["Global","Prelude"] [] [Func ("System","getCPUTime") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "System.getCPUTime"),Func ("System","getElapsedTime") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "System.getElapsedTime"),Func ("System","getArgs") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (External "System.getArgs"),Func ("System","getEnviron") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Global","readGlobal") [Comb FuncCall ("System","environ") []],Comb (FuncPartCall 1) ("System","getEnviron._#lambda2") [Var 1]])),Func ("System","getEnviron._#lambda2") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]))) (Rule [1,2] (Comb FuncCall ("Prelude","maybe") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("System","prim_getEnviron") [],Var 1],Comb (FuncPartCall 1) ("Prelude","return") [],Comb FuncCall ("Prelude","lookup") [Var 1,Var 2]])),Func ("System","prim_getEnviron") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (External "System.prim_getEnviron"),Func ("System","environ") 0 Private (TCons ("Global","Global") [TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]]) (Rule [] (Comb FuncCall ("Global","global") [Comb ConsCall ("Prelude","[]") [],Comb ConsCall ("Global","Temporary") []])),Func ("System","setEnviron") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Global","readGlobal") [Comb FuncCall ("System","environ") []],Comb (FuncPartCall 1) ("System","setEnviron._#lambda3") [Var 1,Var 2]])),Func ("System","setEnviron._#lambda3") 3 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])))) (Rule [1,2,3] (Comb FuncCall ("Global","writeGlobal") [Comb FuncCall ("System","environ") [],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude","(,)") [Var 1,Var 2],Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 1],Comb (FuncPartCall 1) ("Prelude","fst") []],Var 3]]])),Func ("System","unsetEnviron") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Global","readGlobal") [Comb FuncCall ("System","environ") []],Comb (FuncPartCall 1) ("System","unsetEnviron._#lambda4") [Var 1]])),Func ("System","unsetEnviron._#lambda4") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [1,2] (Comb FuncCall ("Global","writeGlobal") [Comb FuncCall ("System","environ") [],Comb FuncCall ("Prelude","filter") [Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","flip") [Comb (FuncPartCall 2) ("Prelude","/=") [],Var 1],Comb (FuncPartCall 1) ("Prelude","fst") []],Var 2]])),Func ("System","getHostname") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (External "System.getHostname"),Func ("System","getPID") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "System.getPID"),Func ("System","getProgName") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (External "System.getProgName"),Func ("System","system") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (Rule [1] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Global","readGlobal") [Comb FuncCall ("System","environ") []],Comb (FuncPartCall 1) ("System","system._#lambda5") [Var 1]])),Func ("System","system.set.14") 1 Private (FuncType (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","(,)") [2,3]) (Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]],Comb FuncCall ("Prelude","++") [Var 2,Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  '='),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Var 3,Comb ConsCall ("Prelude",":") [Lit (Charc  ';'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]])])),Func ("System","system._#lambda5") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []],TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("System","prim_system") [],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","concatMap") [Comb (FuncPartCall 1) ("System","system.set.14") []],Var 2],Var 1]])),Func ("System","prim_system") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (External "System.prim_system"),Func ("System","exitWith") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TVar 0])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("System","prim_exitWith") [],Var 1])),Func ("System","prim_exitWith") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TVar 0])) (External "System.prim_exitWith"),Func ("System","sleep") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("System","prim_sleep") [],Var 1])),Func ("System","prim_sleep") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (External "System.prim_sleep")] []
+ src/lib/Curry/Module/.curry/System.fint view
@@ -0,0 +1,1 @@+Prog "System" ["Global","Prelude"] [] [Func ("System","getCPUTime") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "System.getCPUTime"),Func ("System","getElapsedTime") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "System.getElapsedTime"),Func ("System","getArgs") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]) (External "System.getArgs"),Func ("System","getEnviron") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]])) (Rule [] (Var 0)),Func ("System","setEnviron") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []]))) (Rule [] (Var 0)),Func ("System","unsetEnviron") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0)),Func ("System","getHostname") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (External "System.getHostname"),Func ("System","getPID") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "System.getPID"),Func ("System","getProgName") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (External "System.getProgName"),Func ("System","system") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","IO") [TCons ("Prelude","Int") []])) (Rule [] (Var 0)),Func ("System","exitWith") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TVar 0])) (Rule [] (Var 0)),Func ("System","sleep") 1 Public (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","IO") [TCons ("Prelude","()") []])) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/System.uacy view
@@ -0,0 +1,21 @@+CurryProg "System"+ ["Prelude","Global"]+ []+ [CFunc ("System","environ") 0 Private (CTCons ("Global","Global") [CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTCons ("Prelude","String") [],CTCons ("Prelude","String") []]]]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Global","global")) (CSymbol ("Prelude","[]"))) (CSymbol ("Global","Temporary")))] []]),+  CFunc ("System","exitWith") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTVar (0,"_")])) (CRules CFlex [CRule [CPVar (0,"exitcode")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("System","prim_exitWith"))) (CVar (0,"exitcode")))] []]),+  CFunc ("System","getArgs") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]]) (CExternal "getArgs"),+  CFunc ("System","getCPUTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getCPUTime"),+  CFunc ("System","getElapsedTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getElapsedTime"),+  CFunc ("System","getEnviron") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CRules CFlex [CRule [CPVar (0,"evar")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("System","prim_getEnviron"))) (CVar (0,"evar")))) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","lookup")) (CVar (0,"evar"))) (CVar (1,"envs"))))])] []]),+  CFunc ("System","getHostname") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CExternal "getHostname"),+  CFunc ("System","getPID") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "getPID"),+  CFunc ("System","getProgName") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []]) (CExternal "getProgName"),+  CFunc ("System","prim_exitWith") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTVar (0,"_")])) (CExternal "prim_exitWith"),+  CFunc ("System","prim_getEnviron") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","String") []])) (CExternal "prim_getEnviron"),+  CFunc ("System","prim_sleep") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CExternal "prim_sleep"),+  CFunc ("System","prim_system") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CExternal "prim_system"),+  CFunc ("System","setEnviron") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []]))) (CRules CFlex [CRule [CPVar (0,"evar"),CPVar (1,"val")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (2,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Global","writeGlobal")) (CSymbol ("System","environ"))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"evar"))) (CVar (1,"val")))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (3,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (3,"x0"))) (CVar (0,"evar"))))) (CSymbol ("Prelude","fst")))) (CVar (2,"envs")))))])] []]),+  CFunc ("System","sleep") 1 Public (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("System","prim_sleep"))) (CVar (0,"n")))] []]),+  CFunc ("System","system") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []])) (CRules CFlex [CRule [CPVar (0,"cmd")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("System","prim_system"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","concatMap")) (CSymbol ("System","set"))) (CVar (1,"envs")))) (CVar (0,"cmd"))))])] [CLocalFunc (CFunc ("System","set") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPComb ("Prelude","(,)") [CPVar (1,"var"),CPVar (2,"val")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (1,"var"))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '='))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CVar (2,"val"))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ';'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))] []]))]]),+  CFunc ("System","unsetEnviron") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","IO") [CTCons ("Prelude","()") []])) (CRules CFlex [CRule [CPVar (0,"evar")] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (1,"envs")) (CApply (CSymbol ("Global","readGlobal")) (CSymbol ("System","environ"))),CSExpr (CApply (CApply (CSymbol ("Global","writeGlobal")) (CSymbol ("System","environ"))) (CApply (CApply (CSymbol ("Prelude","filter")) (CApply (CApply (CSymbol ("Prelude",".")) (CLambda [CPVar (2,"x0")] (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (2,"x0"))) (CVar (0,"evar"))))) (CSymbol ("Prelude","fst")))) (CVar (1,"envs"))))])] []])]+ []
+ src/lib/Curry/Module/.curry/TableRBT.acy view
@@ -0,0 +1,10 @@+CurryProg "TableRBT"+ ["Prelude","RedBlackTree"]+ [CTypeSyn ("TableRBT","TableRBT") Public [(0,"key"),(1,"a")] (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"a")]])]+ [CFunc ("TableRBT","deleteRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]))) (CRules CFlex [CRule [CPVar (0,"key")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","delete")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"key"))) (CSymbol ("Prelude","failed"))))] []]),+  CFunc ("TableRBT","emptyTableRBT") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [CPVar (0,"lt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("RedBlackTree","empty")) (CLambda [CPVar (1,"x"),CPVar (2,"y")] (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("Prelude","fst")) (CVar (1,"x")))) (CApply (CSymbol ("Prelude","fst")) (CVar (2,"y")))))) (CLambda [CPVar (3,"x"),CPVar (4,"y")] (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("Prelude","fst")) (CVar (3,"x")))) (CApply (CSymbol ("Prelude","fst")) (CVar (4,"y")))))) (CLambda [CPVar (5,"x"),CPVar (6,"y")] (CApply (CApply (CVar (0,"lt")) (CApply (CSymbol ("Prelude","fst")) (CVar (5,"x")))) (CApply (CSymbol ("Prelude","fst")) (CVar (6,"y"))))))] []]),+  CFunc ("TableRBT","isEmptyTable") 0 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","isEmpty"))] []]),+  CFunc ("TableRBT","lookupRBT") 1 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","Maybe") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"k")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CApply (CSymbol ("Prelude","maybe")) (CSymbol ("Prelude","Nothing"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","Just"))) (CSymbol ("Prelude","snd"))))) (CApply (CSymbol ("RedBlackTree","lookup")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CSymbol ("Prelude","failed")))))] []]),+  CFunc ("TableRBT","tableRBT2list") 0 Public (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","tree2list"))] []]),+  CFunc ("TableRBT","updateRBT") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]]) (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTVar (1,"b")]])))) (CRules CFlex [CRule [CPVar (0,"k"),CPVar (1,"e")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","update")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CVar (1,"e"))))] []])]+ []
+ src/lib/Curry/Module/.curry/TableRBT.cy view
@@ -0,0 +1,18 @@+Module "TableRBT"+Nothing+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (15,1) "RedBlackTree" True (Just "RBT") Nothing)+,(TypeDecl (20,1) (Ident "TableRBT" 0) [(Ident "key" 0),(Ident "a" 0)] (ConstructorType (QualIdent (Just "RBT") (Ident "RedBlackTree" 0)) [(TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))])]))+,(TypeSig (23,1) [(Ident "emptyTableRBT" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))) (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "_" 0))])))+,(FunctionDecl (24,1) (Ident "emptyTableRBT" 0) [(Equation (24,1) (FunLhs (Ident "emptyTableRBT" 0) [(VariablePattern (Ident "lt" 2))]) (SimpleRhs (24,20) (Apply (Apply (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "empty" 0))) (Paren (Lambda [(VariablePattern (Ident "x" 4)),(VariablePattern (Ident "y" 4))] (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "x" 4)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "y" 4)))))))) (Paren (Lambda [(VariablePattern (Ident "x" 5)),(VariablePattern (Ident "y" 5))] (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "x" 5)))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "y" 5)))))))) (Paren (Lambda [(VariablePattern (Ident "x" 6)),(VariablePattern (Ident "y" 6))] (Apply (Apply (Variable (QualIdent Nothing (Ident "lt" 2))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "x" 6)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (Variable (QualIdent Nothing (Ident "y" 6))))))))) []))])+,(TypeSig (29,1) [(Ident "isEmptyTable" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (30,1) (Ident "isEmptyTable" 0) [(Equation (30,1) (FunLhs (Ident "isEmptyTable" 0) []) (SimpleRhs (30,16) (Variable (QualIdent (Just "RedBlackTree") (Ident "isEmpty" 0))) []))])+,(TypeSig (37,1) [(Ident "lookupRBT" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (38,1) (Ident "lookupRBT" 0) [(Equation (38,1) (FunLhs (Ident "lookupRBT" 0) [(VariablePattern (Ident "k" 9))]) (SimpleRhs (38,15) (InfixApply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "Nothing" 0)))) (Paren (InfixApply (Constructor (QualIdent (Just "Prelude") (Ident "Just" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent (Just "Prelude") (Ident "snd" 0)))))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "lookup" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "k" 9))),(Variable (QualIdent (Just "Prelude") (Ident "failed" 0)))]))) []))])+,(TypeSig (41,1) [(Ident "updateRBT" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))])))))+,(FunctionDecl (42,1) (Ident "updateRBT" 0) [(Equation (42,1) (FunLhs (Ident "updateRBT" 0) [(VariablePattern (Ident "k" 11)),(VariablePattern (Ident "e" 11))]) (SimpleRhs (42,17) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "update" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "k" 11))),(Variable (QualIdent Nothing (Ident "e" 11)))])) []))])+,(TypeSig (45,1) [(Ident "tableRBT2list" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))]) (ListType (TupleType [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))]))))+,(FunctionDecl (46,1) (Ident "tableRBT2list" 0) [(Equation (46,1) (FunLhs (Ident "tableRBT2list" 0) []) (SimpleRhs (46,17) (Variable (QualIdent (Just "RedBlackTree") (Ident "tree2list" 0))) []))])+,(TypeSig (48,1) [(Ident "deleteRBT" 0)] (ArrowType (VariableType (Ident "key" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "TableRBT" 0)) [(VariableType (Ident "key" 0)),(VariableType (Ident "a" 0))]))))+,(FunctionDecl (49,1) (Ident "deleteRBT" 0) [(Equation (49,1) (FunLhs (Ident "deleteRBT" 0) [(VariablePattern (Ident "key" 15))]) (SimpleRhs (49,17) (Apply (Variable (QualIdent (Just "RedBlackTree") (Ident "delete" 0))) (Tuple [(Variable (QualIdent Nothing (Ident "key" 15))),(Variable (QualIdent (Just "Prelude") (Ident "failed" 0)))])) []))])+]
+ src/lib/Curry/Module/.curry/TableRBT.efc view
@@ -0,0 +1,1 @@+Prog "TableRBT" ["Prelude","RedBlackTree"] [TypeSyn ((Nothing,Nothing,"TableRBT","TableRBT")) Public [0,1] (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])] [Func ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"TableRBT","emptyTableRBT")) 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [(Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))),"RedBlackTree","empty")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"TableRBT","emptyTableRBT._#lambda2")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"TableRBT","emptyTableRBT._#lambda3")) [],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"TableRBT","emptyTableRBT._#lambda4")) [Var ((Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"TableRBT","emptyTableRBT._#lambda2")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 22,TVar 23]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 22,TVar 23]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TVar 22)),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TVar 22)),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"TableRBT","emptyTableRBT._#lambda3")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 22,TVar 23]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 22,TVar 23]) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TVar 22)),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TVar 22)),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"TableRBT","emptyTableRBT._#lambda4")) 3 Private (FuncType (FuncType (TVar 22) (FuncType (TVar 22) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 22,TVar 23]) (FuncType (TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 22,TVar 23]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),2),(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","apply")) [Var ((Just (FuncType (TVar 22) (FuncType (TVar 22) (TCons (Nothing,Nothing,"Prelude","Bool") []))),1)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TVar 22)),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),2))]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]) (TVar 22)),"Prelude","fst")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 22,TVar 23]),3))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"TableRBT","isEmptyTable")) 0 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"RedBlackTree","isEmpty")) [])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]))),"TableRBT","lookupRBT")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1]))) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"Prelude","maybe")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]),"Prelude","Nothing")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])))),"Prelude",".")) [Comb (ConsPartCall 1) ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])),"Prelude","Just")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (TVar 1)),"Prelude","snd")) []]],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","Maybe") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"RedBlackTree","lookup")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 13) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (TVar 13),"Prelude","failed")) []]]])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])))),"TableRBT","updateRBT")) 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])))) (Rule [(Just (TVar 0),1),(Just (TVar 1),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"RedBlackTree","update")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),1)),Var ((Just (TVar 1),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"TableRBT","tableRBT2list")) 0 Public (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]])) (Rule [] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]])),"RedBlackTree","tree2list")) [])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"TableRBT","deleteRBT")) 1 Public (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]) (TCons ((Nothing,Nothing,"RedBlackTree","RedBlackTree")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TVar 1]]))) (Rule [(Just (TVar 0),1)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]) (FuncType (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]) (TCons (Nothing,Nothing,"RedBlackTree","RedBlackTree") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]]))),"RedBlackTree","delete")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 3) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TVar 1]))),"Prelude","(,)")) [Var ((Just (TVar 0),1)),Comb FuncCall ((Nothing,Just (TVar 3),"Prelude","failed")) []]]))] []
+ src/lib/Curry/Module/.curry/TableRBT.fcy view
@@ -0,0 +1,1 @@+Prog "TableRBT" ["Prelude","RedBlackTree"] [TypeSyn ("TableRBT","TableRBT") Public [0,1] (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])] [Func ("TableRBT","emptyTableRBT") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [1] (Comb FuncCall ("RedBlackTree","empty") [Comb (FuncPartCall 2) ("TableRBT","emptyTableRBT._#lambda2") [],Comb (FuncPartCall 2) ("TableRBT","emptyTableRBT._#lambda3") [],Comb (FuncPartCall 2) ("TableRBT","emptyTableRBT._#lambda4") [Var 1]])),Func ("TableRBT","emptyTableRBT._#lambda2") 2 Private (FuncType (TCons ("Prelude","(,)") [TVar 22,TVar 23]) (FuncType (TCons ("Prelude","(,)") [TVar 22,TVar 23]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","fst") [Var 1],Comb FuncCall ("Prelude","fst") [Var 2]])),Func ("TableRBT","emptyTableRBT._#lambda3") 2 Private (FuncType (TCons ("Prelude","(,)") [TVar 22,TVar 23]) (FuncType (TCons ("Prelude","(,)") [TVar 22,TVar 23]) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","fst") [Var 1],Comb FuncCall ("Prelude","fst") [Var 2]])),Func ("TableRBT","emptyTableRBT._#lambda4") 3 Private (FuncType (FuncType (TVar 22) (FuncType (TVar 22) (TCons ("Prelude","Bool") []))) (FuncType (TCons ("Prelude","(,)") [TVar 22,TVar 23]) (FuncType (TCons ("Prelude","(,)") [TVar 22,TVar 23]) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 1,Comb FuncCall ("Prelude","fst") [Var 2]],Comb FuncCall ("Prelude","fst") [Var 3]])),Func ("TableRBT","isEmptyTable") 0 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","Bool") [])) (Rule [] (Comb (FuncPartCall 1) ("RedBlackTree","isEmpty") [])),Func ("TableRBT","lookupRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","maybe") [Comb ConsCall ("Prelude","Nothing") [],Comb FuncCall ("Prelude",".") [Comb (ConsPartCall 1) ("Prelude","Just") [],Comb (FuncPartCall 1) ("Prelude","snd") []]],Comb (FuncPartCall 1) ("RedBlackTree","lookup") [Comb ConsCall ("Prelude","(,)") [Var 1,Comb FuncCall ("Prelude","failed") []]]])),Func ("TableRBT","updateRBT") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])))) (Rule [1,2] (Comb (FuncPartCall 1) ("RedBlackTree","update") [Comb ConsCall ("Prelude","(,)") [Var 1,Var 2]])),Func ("TableRBT","tableRBT2list") 0 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Comb (FuncPartCall 1) ("RedBlackTree","tree2list") [])),Func ("TableRBT","deleteRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]))) (Rule [1] (Comb (FuncPartCall 1) ("RedBlackTree","delete") [Comb ConsCall ("Prelude","(,)") [Var 1,Comb FuncCall ("Prelude","failed") []]]))] []
+ src/lib/Curry/Module/.curry/TableRBT.fint view
@@ -0,0 +1,1 @@+Prog "TableRBT" ["Prelude","RedBlackTree"] [TypeSyn ("TableRBT","TableRBT") Public [0,1] (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])] [Func ("TableRBT","emptyTableRBT") 1 Public (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("TableRBT","isEmptyTable") 0 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("TableRBT","lookupRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","Maybe") [TVar 1]))) (Rule [] (Var 0)),Func ("TableRBT","updateRBT") 2 Public (FuncType (TVar 0) (FuncType (TVar 1) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])))) (Rule [] (Var 0)),Func ("TableRBT","tableRBT2list") 0 Public (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TVar 1]])) (Rule [] (Var 0)),Func ("TableRBT","deleteRBT") 1 Public (FuncType (TVar 0) (FuncType (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]) (TCons ("RedBlackTree","RedBlackTree") [TCons ("Prelude","(,)") [TVar 0,TVar 1]]))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/TableRBT.uacy view
@@ -0,0 +1,10 @@+CurryProg "TableRBT"+ ["Prelude","RedBlackTree"]+ [CTypeSyn ("TableRBT","TableRBT") Public [(0,"key"),(1,"a")] (CTCons ("RedBlackTree","RedBlackTree") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"a")]])]+ [CFunc ("TableRBT","deleteRBT") 1 Public (CFuncType (CTVar (0,"key")) (CFuncType (CTCons ("TableRBT","TableRBT") [CTVar (0,"key"),CTVar (1,"a")]) (CTCons ("TableRBT","TableRBT") [CTVar (0,"key"),CTVar (1,"a")]))) (CRules CFlex [CRule [CPVar (0,"key")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","delete")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"key"))) (CSymbol ("Prelude","failed"))))] []]),+  CFunc ("TableRBT","emptyTableRBT") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CTCons ("TableRBT","TableRBT") [CTVar (0,"a"),CTVar (1,"_")])) (CRules CFlex [CRule [CPVar (0,"lt")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("RedBlackTree","empty")) (CLambda [CPVar (1,"x"),CPVar (2,"y")] (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("Prelude","fst")) (CVar (1,"x")))) (CApply (CSymbol ("Prelude","fst")) (CVar (2,"y")))))) (CLambda [CPVar (3,"x"),CPVar (4,"y")] (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CSymbol ("Prelude","fst")) (CVar (3,"x")))) (CApply (CSymbol ("Prelude","fst")) (CVar (4,"y")))))) (CLambda [CPVar (5,"x"),CPVar (6,"y")] (CApply (CApply (CVar (0,"lt")) (CApply (CSymbol ("Prelude","fst")) (CVar (5,"x")))) (CApply (CSymbol ("Prelude","fst")) (CVar (6,"y"))))))] []]),+  CFunc ("TableRBT","isEmptyTable") 0 Public (CFuncType (CTCons ("TableRBT","TableRBT") [CTVar (0,"_"),CTVar (0,"_")]) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","isEmpty"))] []]),+  CFunc ("TableRBT","lookupRBT") 1 Public (CFuncType (CTVar (0,"key")) (CFuncType (CTCons ("TableRBT","TableRBT") [CTVar (0,"key"),CTVar (1,"a")]) (CTCons ("Prelude","Maybe") [CTVar (1,"a")]))) (CRules CFlex [CRule [CPVar (0,"k")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CApply (CSymbol ("Prelude","maybe")) (CSymbol ("Prelude","Nothing"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","Just"))) (CSymbol ("Prelude","snd"))))) (CApply (CSymbol ("RedBlackTree","lookup")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CSymbol ("Prelude","failed")))))] []]),+  CFunc ("TableRBT","tableRBT2list") 0 Public (CFuncType (CTCons ("TableRBT","TableRBT") [CTVar (0,"key"),CTVar (1,"a")]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"key"),CTVar (1,"a")]])) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("RedBlackTree","tree2list"))] []]),+  CFunc ("TableRBT","updateRBT") 2 Public (CFuncType (CTVar (0,"key")) (CFuncType (CTVar (1,"a")) (CFuncType (CTCons ("TableRBT","TableRBT") [CTVar (0,"key"),CTVar (1,"a")]) (CTCons ("TableRBT","TableRBT") [CTVar (0,"key"),CTVar (1,"a")])))) (CRules CFlex [CRule [CPVar (0,"k"),CPVar (1,"e")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("RedBlackTree","update")) (CApply (CApply (CSymbol ("Prelude","(,)")) (CVar (0,"k"))) (CVar (1,"e"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Time.acy view
@@ -0,0 +1,35 @@+CurryProg "Time"+ ["Prelude"]+ [CType ("Time","ClockTime") Public [] [CCons ("Time","CTime") 1 Private [CTCons ("Prelude","Int") []]],+  CType ("Time","CalendarTime") Public [] [CCons ("Time","CalendarTime") 7 Public [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]]]+ [CFunc ("Time","addDays") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CLit (CIntc 86400)))))] []]),+  CFunc ("Time","addHours") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CLit (CIntc 3600)))))] []]),+  CFunc ("Time","addMinutes") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CLit (CIntc 60)))))] []]),+  CFunc ("Time","addMonths") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"ctime")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Time","CalendarTime") [CPVar (2,"y"),CPVar (3,"mo"),CPVar (4,"d"),CPVar (5,"h"),CPVar (6,"mi"),CPVar (7,"s"),CPVar (8,"tz")]) (CApply (CSymbol ("Time","toUTCTime")) (CVar (1,"ctime"))) [],CLocalPat (CPVar (9,"nmo")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"mo"))) (CLit (CIntc 1)))) (CVar (0,"n")))) (CLit (CIntc 12)))) (CLit (CIntc 1))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (9,"nmo"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Time","addYears")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"mo"))) (CLit (CIntc 1)))) (CVar (0,"n")))) (CLit (CIntc 12)))) (CApply (CSymbol ("Time","toClockTime")) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Time","CalendarTime")) (CVar (2,"y"))) (CVar (9,"nmo"))) (CVar (4,"d"))) (CVar (5,"h"))) (CVar (6,"mi"))) (CVar (7,"s"))) (CVar (8,"tz")))))) (CApply (CApply (CSymbol ("Time","addYears")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"mo"))) (CLit (CIntc 1)))) (CVar (0,"n")))) (CLit (CIntc 12)))) (CLit (CIntc 1)))) (CApply (CSymbol ("Time","toClockTime")) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Time","CalendarTime")) (CVar (2,"y"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (9,"nmo"))) (CLit (CIntc 12)))) (CVar (4,"d"))) (CVar (5,"h"))) (CVar (6,"mi"))) (CVar (7,"s"))) (CVar (8,"tz")))))))] []]),+  CFunc ("Time","addSeconds") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CVar (0,"n"))))] []]),+  CFunc ("Time","addYears") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"ctime")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CVar (1,"ctime"))) (CLetDecl [CLocalPat (CPComb ("Time","CalendarTime") [CPVar (2,"y"),CPVar (3,"mo"),CPVar (4,"d"),CPVar (5,"h"),CPVar (6,"mi"),CPVar (7,"s"),CPVar (8,"tz")]) (CApply (CSymbol ("Time","toUTCTime")) (CVar (1,"ctime"))) []] (CApply (CSymbol ("Time","toClockTime")) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Time","CalendarTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"y"))) (CVar (0,"n")))) (CVar (3,"mo"))) (CVar (4,"d"))) (CVar (5,"h"))) (CVar (6,"mi"))) (CVar (7,"s"))) (CVar (8,"tz"))))))] []]),+  CFunc ("Time","calendarTimeToString") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPAs (7,"ctime") (CPComb ("Time","CalendarTime") [CPVar (0,"y"),CPVar (1,"mo"),CPVar (2,"d"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (8,"shortMonths"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"mo"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"d")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Time","toTimeString")) (CVar (7,"ctime")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Prelude","show")) (CVar (0,"y")))))))))] [CLocalPat (CPVar (8,"shortMonths")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","[]")))))))))))))) []]]),+  CFunc ("Time","clockTimeToInt") 1 Public (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CTime") [CPVar (0,"i")]] [(CSymbol ("Prelude","success"),CVar (0,"i"))] []]),+  CFunc ("Time","compareCalendarTime") 2 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"ct1"),CPVar (1,"ct2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Time","compareClockTime")) (CApply (CSymbol ("Time","toClockTime")) (CVar (0,"ct1")))) (CApply (CSymbol ("Time","toClockTime")) (CVar (1,"ct2"))))] []]),+  CFunc ("Time","compareClockTime") 2 Public (CFuncType (CTCons ("Time","ClockTime") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Time","CTime") [CPVar (0,"time1")],CPComb ("Time","CTime") [CPVar (1,"time2")]] [(CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"time1"))) (CVar (1,"time2")),CSymbol ("Prelude","LT")),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (0,"time1"))) (CVar (1,"time2")),CSymbol ("Prelude","GT")),(CSymbol ("Prelude","otherwise"),CSymbol ("Prelude","EQ"))] []]),+  CFunc ("Time","compareDate") 0 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("Time","compareCalendarTime"))] []]),+  CFunc ("Time","ctDay") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"d"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"d"))] []]),+  CFunc ("Time","ctHour") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"h"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (3,"h"))] []]),+  CFunc ("Time","ctMin") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"m"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (4,"m"))] []]),+  CFunc ("Time","ctMonth") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"m"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"m"))] []]),+  CFunc ("Time","ctSec") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"s"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (5,"s"))] []]),+  CFunc ("Time","ctTZ") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"tz")]] [(CSymbol ("Prelude","success"),CVar (6,"tz"))] []]),+  CFunc ("Time","ctYear") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"y"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"y"))] []]),+  CFunc ("Time","daysOfMonth") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"mo"),CPVar (1,"yr")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (0,"mo"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","!!")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 28))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CSymbol ("Prelude","[]"))))))))))))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (0,"mo"))) (CLit (CIntc 1))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"yr"))) (CLit (CIntc 4)))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"yr"))) (CLit (CIntc 100)))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"yr"))) (CLit (CIntc 400)))) (CLit (CIntc 0)))))) (CLit (CIntc 29))) (CLit (CIntc 28))))] []]),+  CFunc ("Time","getClockTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Time","ClockTime") []]) (CExternal "getClockTime"),+  CFunc ("Time","getLocalTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Time","CalendarTime") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (0,"ctime")) (CSymbol ("Time","getClockTime")),CSExpr (CApply (CSymbol ("Time","toCalendarTime")) (CVar (0,"ctime")))])] []]),+  CFunc ("Time","prim_toCalendarTime") 1 Private (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","IO") [CTCons ("Time","CalendarTime") []])) (CExternal "prim_toCalendarTime"),+  CFunc ("Time","prim_toClockTime") 1 Private (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Time","ClockTime") [])) (CExternal "prim_toClockTime"),+  CFunc ("Time","prim_toUTCTime") 1 Private (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","CalendarTime") [])) (CExternal "prim_toUTCTime"),+  CFunc ("Time","toCalendarTime") 1 Public (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","IO") [CTCons ("Time","CalendarTime") []])) (CRules CFlex [CRule [CPVar (0,"ctime")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Time","prim_toCalendarTime"))) (CVar (0,"ctime")))] []]),+  CFunc ("Time","toClockTime") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Time","ClockTime") [])) (CRules CFlex [CRule [CPVar (0,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Time","prim_toClockTime"))) (CVar (0,"d")))] []]),+  CFunc ("Time","toDayString") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"y"),CPVar (1,"mo"),CPVar (2,"d"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (7,"longMonths"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"mo"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"d")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (0,"y")))))))] [CLocalPat (CPVar (7,"longMonths")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]"))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]"))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]"))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]"))))))))))) (CSymbol ("Prelude","[]")))))))))))))) []]]),+  CFunc ("Time","toTimeString") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"h"),CPVar (4,"mi"),CPVar (5,"s"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Time","digit2")) (CVar (3,"h")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Time","digit2")) (CVar (4,"mi")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Time","digit2")) (CVar (5,"s")))))))] [CLocalFunc (CFunc ("Time","digit2") 1 Private (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (7,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (7,"n"))) (CLit (CIntc 10)))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))) (CVar (7,"n"))))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (7,"n"))))] []]))]]),+  CFunc ("Time","toUTCTime") 1 Public (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","CalendarTime") [])) (CRules CFlex [CRule [CPVar (0,"ctime")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Time","prim_toUTCTime"))) (CVar (0,"ctime")))] []]),+  CFunc ("Time","validDate") 3 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"y"),CPVar (1,"m"),CPVar (2,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (1,"m"))) (CLit (CIntc 13)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (2,"d"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (2,"d"))) (CApply (CApply (CSymbol ("Time","daysOfMonth")) (CVar (1,"m"))) (CVar (0,"y")))))))] []])]+ []
+ src/lib/Curry/Module/.curry/Time.cy view
@@ -0,0 +1,66 @@+Module "Time"+(Just (Exporting (8,12) [(Export (QualIdent Nothing (Ident "ClockTime" 0))),(ExportTypeAll (QualIdent Nothing (Ident "CalendarTime" 0))),(Export (QualIdent Nothing (Ident "ctYear" 0))),(Export (QualIdent Nothing (Ident "ctMonth" 0))),(Export (QualIdent Nothing (Ident "ctDay" 0))),(Export (QualIdent Nothing (Ident "ctHour" 0))),(Export (QualIdent Nothing (Ident "ctMin" 0))),(Export (QualIdent Nothing (Ident "ctSec" 0))),(Export (QualIdent Nothing (Ident "ctTZ" 0))),(Export (QualIdent Nothing (Ident "getClockTime" 0))),(Export (QualIdent Nothing (Ident "getLocalTime" 0))),(Export (QualIdent Nothing (Ident "toUTCTime" 0))),(Export (QualIdent Nothing (Ident "toClockTime" 0))),(Export (QualIdent Nothing (Ident "toCalendarTime" 0))),(Export (QualIdent Nothing (Ident "clockTimeToInt" 0))),(Export (QualIdent Nothing (Ident "calendarTimeToString" 0))),(Export (QualIdent Nothing (Ident "toDayString" 0))),(Export (QualIdent Nothing (Ident "toTimeString" 0))),(Export (QualIdent Nothing (Ident "addSeconds" 0))),(Export (QualIdent Nothing (Ident "addMinutes" 0))),(Export (QualIdent Nothing (Ident "addHours" 0))),(Export (QualIdent Nothing (Ident "addDays" 0))),(Export (QualIdent Nothing (Ident "addMonths" 0))),(Export (QualIdent Nothing (Ident "addYears" 0))),(Export (QualIdent Nothing (Ident "daysOfMonth" 0))),(Export (QualIdent Nothing (Ident "validDate" 0))),(Export (QualIdent Nothing (Ident "compareCalendarTime" 0))),(Export (QualIdent Nothing (Ident "compareClockTime" 0))),(Export (QualIdent Nothing (Ident "compareDate" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(DataDecl (18,1) (Ident "ClockTime" 0) [] [(ConstrDecl (18,18) [] (Ident "CTime" 0) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])])+,(DataDecl (24,1) (Ident "CalendarTime" 0) [] [(ConstrDecl (24,21) [] (Ident "CalendarTime" 0) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) []),(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])])])+,(TypeSig (27,1) [(Ident "ctYear" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (28,1) (Ident "ctYear" 0) [(Equation (28,1) (FunLhs (Ident "ctYear" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "y" 2)),(VariablePattern (Ident "_" 3)),(VariablePattern (Ident "_" 4)),(VariablePattern (Ident "_" 5)),(VariablePattern (Ident "_" 6)),(VariablePattern (Ident "_" 7)),(VariablePattern (Ident "_" 8))]))]) (SimpleRhs (28,39) (Variable (QualIdent Nothing (Ident "y" 2))) []))])+,(TypeSig (31,1) [(Ident "ctMonth" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (32,1) (Ident "ctMonth" 0) [(Equation (32,1) (FunLhs (Ident "ctMonth" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 11)),(VariablePattern (Ident "m" 10)),(VariablePattern (Ident "_" 12)),(VariablePattern (Ident "_" 13)),(VariablePattern (Ident "_" 14)),(VariablePattern (Ident "_" 15)),(VariablePattern (Ident "_" 16))]))]) (SimpleRhs (32,40) (Variable (QualIdent Nothing (Ident "m" 10))) []))])+,(TypeSig (35,1) [(Ident "ctDay" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (36,1) (Ident "ctDay" 0) [(Equation (36,1) (FunLhs (Ident "ctDay" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 19)),(VariablePattern (Ident "_" 20)),(VariablePattern (Ident "d" 18)),(VariablePattern (Ident "_" 21)),(VariablePattern (Ident "_" 22)),(VariablePattern (Ident "_" 23)),(VariablePattern (Ident "_" 24))]))]) (SimpleRhs (36,38) (Variable (QualIdent Nothing (Ident "d" 18))) []))])+,(TypeSig (39,1) [(Ident "ctHour" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (40,1) (Ident "ctHour" 0) [(Equation (40,1) (FunLhs (Ident "ctHour" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 27)),(VariablePattern (Ident "_" 28)),(VariablePattern (Ident "_" 29)),(VariablePattern (Ident "h" 26)),(VariablePattern (Ident "_" 30)),(VariablePattern (Ident "_" 31)),(VariablePattern (Ident "_" 32))]))]) (SimpleRhs (40,39) (Variable (QualIdent Nothing (Ident "h" 26))) []))])+,(TypeSig (43,1) [(Ident "ctMin" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (44,1) (Ident "ctMin" 0) [(Equation (44,1) (FunLhs (Ident "ctMin" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 35)),(VariablePattern (Ident "_" 36)),(VariablePattern (Ident "_" 37)),(VariablePattern (Ident "_" 38)),(VariablePattern (Ident "m" 34)),(VariablePattern (Ident "_" 39)),(VariablePattern (Ident "_" 40))]))]) (SimpleRhs (44,38) (Variable (QualIdent Nothing (Ident "m" 34))) []))])+,(TypeSig (47,1) [(Ident "ctSec" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (48,1) (Ident "ctSec" 0) [(Equation (48,1) (FunLhs (Ident "ctSec" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 43)),(VariablePattern (Ident "_" 44)),(VariablePattern (Ident "_" 45)),(VariablePattern (Ident "_" 46)),(VariablePattern (Ident "_" 47)),(VariablePattern (Ident "s" 42)),(VariablePattern (Ident "_" 48))]))]) (SimpleRhs (48,38) (Variable (QualIdent Nothing (Ident "s" 42))) []))])+,(TypeSig (52,1) [(Ident "ctTZ" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (53,1) (Ident "ctTZ" 0) [(Equation (53,1) (FunLhs (Ident "ctTZ" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 51)),(VariablePattern (Ident "_" 52)),(VariablePattern (Ident "_" 53)),(VariablePattern (Ident "_" 54)),(VariablePattern (Ident "_" 55)),(VariablePattern (Ident "_" 56)),(VariablePattern (Ident "tz" 50))]))]) (SimpleRhs (53,38) (Variable (QualIdent Nothing (Ident "tz" 50))) []))])+,(TypeSig (57,1) [(Ident "getClockTime" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) [])]))+,(FlatExternalDecl (58,1) [(Ident "getClockTime" 0)])+,(TypeSig (61,1) [(Ident "getLocalTime" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) [])]))+,(FunctionDecl (62,1) (Ident "getLocalTime" 0) [(Equation (62,1) (FunLhs (Ident "getLocalTime" 0) []) (SimpleRhs (62,16) (Do [(StmtBind (VariablePattern (Ident "ctime" 60)) (Variable (QualIdent (Just "Time") (Ident "getClockTime" 0))))] (Apply (Variable (QualIdent (Just "Time") (Ident "toCalendarTime" 0))) (Variable (QualIdent Nothing (Ident "ctime" 60))))) []))])+,(TypeSig (69,1) [(Ident "clockTimeToInt" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])))+,(FunctionDecl (70,1) (Ident "clockTimeToInt" 0) [(Equation (70,1) (FunLhs (Ident "clockTimeToInt" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "i" 61))]))]) (SimpleRhs (70,28) (Variable (QualIdent Nothing (Ident "i" 61))) []))])+,(TypeSig (75,1) [(Ident "toCalendarTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) [])])))+,(FunctionDecl (76,1) (Ident "toCalendarTime" 0) [(Equation (76,1) (FunLhs (Ident "toCalendarTime" 0) [(VariablePattern (Ident "ctime" 63))]) (SimpleRhs (76,24) (InfixApply (Variable (QualIdent (Just "Time") (Ident "prim_toCalendarTime" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "ctime" 63)))) []))])+,(TypeSig (78,1) [(Ident "prim_toCalendarTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) [])])))+,(FlatExternalDecl (79,1) [(Ident "prim_toCalendarTime" 0)])+,(TypeSig (83,1) [(Ident "toUTCTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) [])))+,(FunctionDecl (84,1) (Ident "toUTCTime" 0) [(Equation (84,1) (FunLhs (Ident "toUTCTime" 0) [(VariablePattern (Ident "ctime" 65))]) (SimpleRhs (84,19) (InfixApply (Variable (QualIdent (Just "Time") (Ident "prim_toUTCTime" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "ctime" 65)))) []))])+,(TypeSig (86,1) [(Ident "prim_toUTCTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) [])))+,(FlatExternalDecl (87,1) [(Ident "prim_toUTCTime" 0)])+,(TypeSig (90,1) [(Ident "toClockTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) [])))+,(FunctionDecl (91,1) (Ident "toClockTime" 0) [(Equation (91,1) (FunLhs (Ident "toClockTime" 0) [(VariablePattern (Ident "d" 67))]) (SimpleRhs (91,17) (InfixApply (Variable (QualIdent (Just "Time") (Ident "prim_toClockTime" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "d" 67)))) []))])+,(TypeSig (93,1) [(Ident "prim_toClockTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) [])))+,(FlatExternalDecl (94,1) [(Ident "prim_toClockTime" 0)])+,(TypeSig (97,1) [(Ident "calendarTimeToString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (98,1) (Ident "calendarTimeToString" 0) [(Equation (98,1) (FunLhs (Ident "calendarTimeToString" 0) [(AsPattern (Ident "ctime" 69) (ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "y" 69)),(VariablePattern (Ident "mo" 69)),(VariablePattern (Ident "d" 69)),(VariablePattern (Ident "_" 70)),(VariablePattern (Ident "_" 71)),(VariablePattern (Ident "_" 72)),(VariablePattern (Ident "_" 73))])))]) (SimpleRhs (99,5) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "shortMonths" 74))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "mo" 69))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 76) 1))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "d" 69)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Time") (Ident "toTimeString" 0))) (Variable (QualIdent Nothing (Ident "ctime" 69)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "y" 69)))))))))) [(PatternDecl (101,9) (VariablePattern (Ident "shortMonths" 74)) (SimpleRhs (101,23) (List [(Literal (String "Jan")),(Literal (String "Feb")),(Literal (String "Mar")),(Literal (String "Apr")),(Literal (String "May")),(Literal (String "Jun")),(Literal (String "Jul")),(Literal (String "Aug")),(Literal (String "Sep")),(Literal (String "Oct")),(Literal (String "Nov")),(Literal (String "Dec"))]) []))]))])+,(TypeSig (106,1) [(Ident "toDayString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (107,1) (Ident "toDayString" 0) [(Equation (107,1) (FunLhs (Ident "toDayString" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "y" 77)),(VariablePattern (Ident "mo" 77)),(VariablePattern (Ident "d" 77)),(VariablePattern (Ident "_" 78)),(VariablePattern (Ident "_" 79)),(VariablePattern (Ident "_" 80)),(VariablePattern (Ident "_" 81))]))]) (SimpleRhs (108,5) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "longMonths" 82))) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "mo" 77))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 84) 1))))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String " ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "d" 77)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ", ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "y" 77)))))))) [(PatternDecl (109,9) (VariablePattern (Ident "longMonths" 82)) (SimpleRhs (109,22) (List [(Literal (String "January")),(Literal (String "February")),(Literal (String "March")),(Literal (String "April")),(Literal (String "May")),(Literal (String "June")),(Literal (String "July")),(Literal (String "August")),(Literal (String "September")),(Literal (String "October")),(Literal (String "November")),(Literal (String "December"))]) []))]))])+,(TypeSig (113,1) [(Ident "toTimeString" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (114,1) (Ident "toTimeString" 0) [(Equation (114,1) (FunLhs (Ident "toTimeString" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "_" 86)),(VariablePattern (Ident "_" 87)),(VariablePattern (Ident "_" 88)),(VariablePattern (Ident "h" 85)),(VariablePattern (Ident "mi" 85)),(VariablePattern (Ident "s" 85)),(VariablePattern (Ident "_" 89))]))]) (SimpleRhs (115,4) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "digit2" 90))) (Variable (QualIdent Nothing (Ident "h" 85)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ":")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "digit2" 90))) (Variable (QualIdent Nothing (Ident "mi" 85)))) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (InfixApply (Literal (String ":")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Apply (Variable (QualIdent Nothing (Ident "digit2" 90))) (Variable (QualIdent Nothing (Ident "s" 85)))))))) [(FunctionDecl (116,9) (Ident "digit2" 90) [(Equation (116,9) (FunLhs (Ident "digit2" 90) [(VariablePattern (Ident "n" 91))]) (SimpleRhs (116,20) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 91))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 93) 10))) (List [(Literal (Char '0')),(Apply (Variable (QualIdent (Just "Prelude") (Ident "chr" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "ord" 0))) (Literal (Char '0'))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "n" 91))))))]) (Apply (Variable (QualIdent (Just "Prelude") (Ident "show" 0))) (Variable (QualIdent Nothing (Ident "n" 91))))) []))])]))])+,(TypeSig (120,1) [(Ident "addSeconds" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []))))+,(FunctionDecl (121,1) (Ident "addSeconds" 0) [(Equation (121,1) (FunLhs (Ident "addSeconds" 0) [(VariablePattern (Ident "n" 94)),(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "ctime" 94))]))]) (SimpleRhs (121,30) (Apply (Constructor (QualIdent (Just "Time") (Ident "CTime" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ctime" 94))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "n" 94)))))) []))])+,(TypeSig (124,1) [(Ident "addMinutes" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []))))+,(FunctionDecl (125,1) (Ident "addMinutes" 0) [(Equation (125,1) (FunLhs (Ident "addMinutes" 0) [(VariablePattern (Ident "n" 96)),(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "ctime" 96))]))]) (SimpleRhs (125,30) (Apply (Constructor (QualIdent (Just "Time") (Ident "CTime" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ctime" 96))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 96))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Literal (Int (Ident "_" 98) 60))))))) []))])+,(TypeSig (128,1) [(Ident "addHours" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []))))+,(FunctionDecl (129,1) (Ident "addHours" 0) [(Equation (129,1) (FunLhs (Ident "addHours" 0) [(VariablePattern (Ident "n" 99)),(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "ctime" 99))]))]) (SimpleRhs (129,28) (Apply (Constructor (QualIdent (Just "Time") (Ident "CTime" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ctime" 99))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 99))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Literal (Int (Ident "_" 101) 3600))))))) []))])+,(TypeSig (132,1) [(Ident "addDays" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []))))+,(FunctionDecl (133,1) (Ident "addDays" 0) [(Equation (133,1) (FunLhs (Ident "addDays" 0) [(VariablePattern (Ident "n" 102)),(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "ctime" 102))]))]) (SimpleRhs (133,27) (Apply (Constructor (QualIdent (Just "Time") (Ident "CTime" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "ctime" 102))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "n" 102))) (InfixOp (QualIdent (Just "Prelude") (Ident "*" 0))) (Literal (Int (Ident "_" 104) 86400))))))) []))])+,(TypeSig (136,1) [(Ident "addMonths" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []))))+,(FunctionDecl (137,1) (Ident "addMonths" 0) [(Equation (137,1) (FunLhs (Ident "addMonths" 0) [(VariablePattern (Ident "n" 105)),(VariablePattern (Ident "ctime" 105))]) (SimpleRhs (138,2) (Let [(PatternDecl (138,6) (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "y" 107)),(VariablePattern (Ident "mo" 107)),(VariablePattern (Ident "d" 107)),(VariablePattern (Ident "h" 107)),(VariablePattern (Ident "mi" 107)),(VariablePattern (Ident "s" 107)),(VariablePattern (Ident "tz" 107))]) (SimpleRhs (138,38) (Apply (Variable (QualIdent (Just "Time") (Ident "toUTCTime" 0))) (Variable (QualIdent Nothing (Ident "ctime" 105)))) [])),(PatternDecl (139,6) (VariablePattern (Ident "nmo" 107)) (SimpleRhs (139,12) (InfixApply (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "mo" 107))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 110) 1))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "n" 105))))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 111) 12))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 112) 1))) []))] (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "nmo" 107))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 113) 0))) (Apply (Apply (Variable (QualIdent (Just "Time") (Ident "addYears" 0))) (Paren (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "mo" 107))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 114) 1))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "n" 105))))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 115) 12))))) (Paren (Apply (Variable (QualIdent (Just "Time") (Ident "toClockTime" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Time") (Ident "CalendarTime" 0))) (Variable (QualIdent Nothing (Ident "y" 107)))) (Variable (QualIdent Nothing (Ident "nmo" 107)))) (Variable (QualIdent Nothing (Ident "d" 107)))) (Variable (QualIdent Nothing (Ident "h" 107)))) (Variable (QualIdent Nothing (Ident "mi" 107)))) (Variable (QualIdent Nothing (Ident "s" 107)))) (Variable (QualIdent Nothing (Ident "tz" 107)))))))) (Apply (Apply (Variable (QualIdent (Just "Time") (Ident "addYears" 0))) (Paren (InfixApply (InfixApply (Paren (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "mo" 107))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 116) 1))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "n" 105))))) (InfixOp (QualIdent (Just "Prelude") (Ident "div" 0))) (Literal (Int (Ident "_" 117) 12))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 118) 1))))) (Paren (Apply (Variable (QualIdent (Just "Time") (Ident "toClockTime" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Time") (Ident "CalendarTime" 0))) (Variable (QualIdent Nothing (Ident "y" 107)))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "nmo" 107))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Literal (Int (Ident "_" 119) 12))))) (Variable (QualIdent Nothing (Ident "d" 107)))) (Variable (QualIdent Nothing (Ident "h" 107)))) (Variable (QualIdent Nothing (Ident "mi" 107)))) (Variable (QualIdent Nothing (Ident "s" 107)))) (Variable (QualIdent Nothing (Ident "tz" 107)))))))))) []))])+,(TypeSig (148,1) [(Ident "addYears" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []))))+,(FunctionDecl (149,1) (Ident "addYears" 0) [(Equation (149,1) (FunLhs (Ident "addYears" 0) [(VariablePattern (Ident "n" 120)),(VariablePattern (Ident "ctime" 120))]) (SimpleRhs (149,20) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "n" 120))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 122) 0))) (Variable (QualIdent Nothing (Ident "ctime" 120))) (Let [(PatternDecl (150,7) (ConstructorPattern (QualIdent (Just "Time") (Ident "CalendarTime" 0)) [(VariablePattern (Ident "y" 123)),(VariablePattern (Ident "mo" 123)),(VariablePattern (Ident "d" 123)),(VariablePattern (Ident "h" 123)),(VariablePattern (Ident "mi" 123)),(VariablePattern (Ident "s" 123)),(VariablePattern (Ident "tz" 123))]) (SimpleRhs (150,39) (Apply (Variable (QualIdent (Just "Time") (Ident "toUTCTime" 0))) (Variable (QualIdent Nothing (Ident "ctime" 120)))) []))] (Apply (Variable (QualIdent (Just "Time") (Ident "toClockTime" 0))) (Paren (Apply (Apply (Apply (Apply (Apply (Apply (Apply (Constructor (QualIdent (Just "Time") (Ident "CalendarTime" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "y" 123))) (InfixOp (QualIdent (Just "Prelude") (Ident "+" 0))) (Variable (QualIdent Nothing (Ident "n" 120)))))) (Variable (QualIdent Nothing (Ident "mo" 123)))) (Variable (QualIdent Nothing (Ident "d" 123)))) (Variable (QualIdent Nothing (Ident "h" 123)))) (Variable (QualIdent Nothing (Ident "mi" 123)))) (Variable (QualIdent Nothing (Ident "s" 123)))) (Variable (QualIdent Nothing (Ident "tz" 123)))))))) []))])+,(TypeSig (154,1) [(Ident "daysOfMonth" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []))))+,(FunctionDecl (155,1) (Ident "daysOfMonth" 0) [(Equation (155,1) (FunLhs (Ident "daysOfMonth" 0) [(VariablePattern (Ident "mo" 125)),(VariablePattern (Ident "yr" 125))]) (SimpleRhs (156,3) (IfThenElse (InfixApply (Variable (QualIdent Nothing (Ident "mo" 125))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Literal (Int (Ident "_" 127) 2))) (InfixApply (List [(Literal (Int (Ident "_" 128) 31)),(Literal (Int (Ident "_" 129) 28)),(Literal (Int (Ident "_" 130) 31)),(Literal (Int (Ident "_" 131) 30)),(Literal (Int (Ident "_" 132) 31)),(Literal (Int (Ident "_" 133) 30)),(Literal (Int (Ident "_" 134) 31)),(Literal (Int (Ident "_" 135) 31)),(Literal (Int (Ident "_" 136) 30)),(Literal (Int (Ident "_" 137) 31)),(Literal (Int (Ident "_" 138) 30)),(Literal (Int (Ident "_" 139) 31))]) (InfixOp (QualIdent (Just "Prelude") (Ident "!!" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "mo" 125))) (InfixOp (QualIdent (Just "Prelude") (Ident "-" 0))) (Literal (Int (Ident "_" 140) 1))))) (IfThenElse (InfixApply (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "yr" 125))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 141) 4))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 142) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (Paren (InfixApply (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "yr" 125))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 143) 100))) (InfixOp (QualIdent (Just "Prelude") (Ident "/=" 0))) (Literal (Int (Ident "_" 144) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "||" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "yr" 125))) (InfixOp (QualIdent (Just "Prelude") (Ident "mod" 0))) (Literal (Int (Ident "_" 145) 400))) (InfixOp (QualIdent (Just "Prelude") (Ident "==" 0))) (Literal (Int (Ident "_" 146) 0)))))) (Literal (Int (Ident "_" 147) 29)) (Literal (Int (Ident "_" 148) 28)))) []))])+,(TypeSig (163,1) [(Ident "validDate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Int" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))))+,(FunctionDecl (164,1) (Ident "validDate" 0) [(Equation (164,1) (FunLhs (Ident "validDate" 0) [(VariablePattern (Ident "y" 149)),(VariablePattern (Ident "m" 149)),(VariablePattern (Ident "d" 149))]) (SimpleRhs (164,19) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 151) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "m" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Literal (Int (Ident "_" 152) 13))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (InfixApply (Variable (QualIdent Nothing (Ident "d" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Literal (Int (Ident "_" 153) 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "&&" 0))) (InfixApply (Variable (QualIdent Nothing (Ident "d" 149))) (InfixOp (QualIdent (Just "Prelude") (Ident "<=" 0))) (Apply (Apply (Variable (QualIdent (Just "Time") (Ident "daysOfMonth" 0))) (Variable (QualIdent Nothing (Ident "m" 149)))) (Variable (QualIdent Nothing (Ident "y" 149)))))))) []))])+,(TypeSig (167,1) [(Ident "compareDate" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (168,1) (Ident "compareDate" 0) [(Equation (168,1) (FunLhs (Ident "compareDate" 0) []) (SimpleRhs (168,15) (Variable (QualIdent (Just "Time") (Ident "compareCalendarTime" 0))) []))])+,(TypeSig (171,1) [(Ident "compareCalendarTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "CalendarTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (172,1) (Ident "compareCalendarTime" 0) [(Equation (172,1) (FunLhs (Ident "compareCalendarTime" 0) [(VariablePattern (Ident "ct1" 156)),(VariablePattern (Ident "ct2" 156))]) (SimpleRhs (173,3) (Apply (Apply (Variable (QualIdent (Just "Time") (Ident "compareClockTime" 0))) (Paren (Apply (Variable (QualIdent (Just "Time") (Ident "toClockTime" 0))) (Variable (QualIdent Nothing (Ident "ct1" 156)))))) (Paren (Apply (Variable (QualIdent (Just "Time") (Ident "toClockTime" 0))) (Variable (QualIdent Nothing (Ident "ct2" 156)))))) []))])+,(TypeSig (176,1) [(Ident "compareClockTime" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ArrowType (ConstructorType (QualIdent Nothing (Ident "ClockTime" 0)) []) (ConstructorType (QualIdent Nothing (Ident "Ordering" 0)) []))))+,(FunctionDecl (177,1) (Ident "compareClockTime" 0) [(Equation (177,1) (FunLhs (Ident "compareClockTime" 0) [(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "time1" 158))])),(ParenPattern (ConstructorPattern (QualIdent (Just "Time") (Ident "CTime" 0)) [(VariablePattern (Ident "time2" 158))]))]) (GuardedRhs [(CondExpr (178,2) (InfixApply (Variable (QualIdent Nothing (Ident "time1" 158))) (InfixOp (QualIdent (Just "Prelude") (Ident "<" 0))) (Variable (QualIdent Nothing (Ident "time2" 158)))) (Constructor (QualIdent (Just "Prelude") (Ident "LT" 0)))),(CondExpr (179,2) (InfixApply (Variable (QualIdent Nothing (Ident "time1" 158))) (InfixOp (QualIdent (Just "Prelude") (Ident ">" 0))) (Variable (QualIdent Nothing (Ident "time2" 158)))) (Constructor (QualIdent (Just "Prelude") (Ident "GT" 0)))),(CondExpr (180,2) (Variable (QualIdent (Just "Prelude") (Ident "otherwise" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "EQ" 0))))] []))])+]
+ src/lib/Curry/Module/.curry/Time.efc view
@@ -0,0 +1,1 @@+Prog "Time" ["Prelude"] [Type ((Nothing,Nothing,"Time","ClockTime")) Public [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) 1 Private [TCons ((Nothing,Nothing,"Prelude","Int")) []]],Type ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) Public [] [Cons ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) 7 Public [TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) [],TCons ((Nothing,Nothing,"Prelude","Int")) []]]] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctYear")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctMonth")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctDay")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctHour")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctMin")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctSec")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","ctTZ")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)))])),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []]),"Time","getClockTime")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","ClockTime")) []]) (External "Time.getClockTime"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []]),"Time","getLocalTime")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","CalendarTime")) []]) (Rule [] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []]) (FuncType (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","ClockTime") []]),"Time","getClockTime")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])),"Time","getLocalTime._#lambda2")) []])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])),"Time","getLocalTime._#lambda2")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","CalendarTime")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])),"Time","toCalendarTime")) [Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","clockTimeToInt")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])),"Time","toCalendarTime")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","CalendarTime")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])),"Time","prim_toCalendarTime")) [],Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Time","CalendarTime") []])),"Time","prim_toCalendarTime")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Time","CalendarTime")) []])) (External "Time.prim_toCalendarTime"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])),"Time","toUTCTime")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","CalendarTime")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") []))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])),"Time","prim_toUTCTime")) [],Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])),"Time","prim_toUTCTime")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","CalendarTime")) [])) (External "Time.prim_toUTCTime"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","toClockTime")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])) (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","prim_toClockTime")) [],Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","prim_toClockTime")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) [])) (External "Time.prim_toClockTime"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","calendarTimeToString")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),9),Comb ConsCall ((Nothing,Just (FuncType (TVar 84) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 84]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 84]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 27) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TVar 26) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 26]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 26]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 25) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 25]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 25]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (TVar 24),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 83) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 83]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 83]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 31) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 31]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 31]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TVar 30) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 30]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 30]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 29) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 29]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 29]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (TVar 28),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 82) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 82]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 82]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 35) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 35]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 35]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TVar 34) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 34]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 34]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 33) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 33]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 33]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TVar 32),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 81) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 81]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 81]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 39) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TVar 38) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 38]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 38]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TVar 37) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TVar 36),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 80) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 80]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 80]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 43) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TVar 42) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 41) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 41]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 41]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TVar 40),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 47) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TVar 46) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 46]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 46]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 45) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (TVar 44),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 78) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 78]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 78]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 51) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 51]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 51]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TVar 50) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 49) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (TVar 48),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 77) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 77]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 77]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 55) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 55]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 55]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TVar 54) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 54]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 54]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 53) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (TVar 52),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 76) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 76]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 76]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 59) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 59]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 59]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TVar 58) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 58]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 58]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 57) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 57]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 57]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (TVar 56),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 75) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 75]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 75]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 63) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 63]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 63]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TVar 62) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 62]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 62]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TVar 61) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 61]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 61]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TVar 60),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 74) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 74]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 74]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 67) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 67]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 67]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TVar 66) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 66]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TVar 65) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 65]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 65]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (TVar 64),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 73) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 73]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 71) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 71]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 71]))),"Prelude",":")) [Lit (Charc  'D'),Comb ConsCall ((Nothing,Just (FuncType (TVar 70) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 70]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 70]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 69) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 69]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 69]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (TVar 68),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (TVar 72),"Prelude","[]")) []]]]]]]]]]]]])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","!!")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),9)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toTimeString")) [Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]]]]]]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toDayString")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),9),Comb ConsCall ((Nothing,Just (FuncType (TVar 121) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 121]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 121]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 30) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 30]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 30]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TVar 29) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 29]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 29]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 28) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 28]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 28]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TVar 27) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 27]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 26) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 26]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 26]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 25) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 25]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 25]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 24) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 24]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 24]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TVar 23),"Prelude","[]")) []]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 120) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 120]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 120]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 39) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 39]))),"Prelude",":")) [Lit (Charc  'F'),Comb ConsCall ((Nothing,Just (FuncType (TVar 38) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 38]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 38]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 37) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 37]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TVar 36) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 36]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 36]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 35) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 35]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 35]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 34) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 34]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 34]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 33) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 33]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 33]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 32) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 32]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 32]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TVar 31),"Prelude","[]")) []]]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 119) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 119]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 45) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 45]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TVar 44) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 44]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 44]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 43) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 43]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 42) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 42]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TVar 41) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 41]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 41]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (TVar 40),"Prelude","[]")) []]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 118) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 118]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 118]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 51) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 51]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 51]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TVar 50) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 50]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TVar 49) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 49]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TVar 48) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 48]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 48]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TVar 47) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 47]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (TVar 46),"Prelude","[]")) []]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 117) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 117]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 117]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 55) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 55]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 55]))),"Prelude",":")) [Lit (Charc  'M'),Comb ConsCall ((Nothing,Just (FuncType (TVar 54) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 54]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 54]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TVar 53) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 53]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TVar 52),"Prelude","[]")) []]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 116) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 116]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 116]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 60) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 60]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 60]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TVar 59) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 59]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 59]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 58) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 58]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 58]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TVar 57) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 57]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 57]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TVar 56),"Prelude","[]")) []]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 115) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 115]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 115]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 65) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 65]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 65]))),"Prelude",":")) [Lit (Charc  'J'),Comb ConsCall ((Nothing,Just (FuncType (TVar 64) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 64]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 64]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 63) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 63]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 63]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TVar 62) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 62]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 62]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TVar 61),"Prelude","[]")) []]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 114) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 114]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 114]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 72) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 72]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 72]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TVar 71) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 71]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 71]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 70) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 70]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 70]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TVar 69) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 69]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 69]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TVar 68) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 68]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 68]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TVar 67) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 67]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 67]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (TVar 66),"Prelude","[]")) []]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 113) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 113]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 113]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 82) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 82]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 82]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TVar 81) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 81]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 81]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 80) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 80]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 80]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TVar 79) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 79]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TVar 78) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 78]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 78]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 77) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 77]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 77]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TVar 76) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 76]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 76]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TVar 75) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 75]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 75]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 74) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 74]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 74]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TVar 73),"Prelude","[]")) []]]]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 112) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 112]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 112]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 90) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 90]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 90]))),"Prelude",":")) [Lit (Charc  'O'),Comb ConsCall ((Nothing,Just (FuncType (TVar 89) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 89]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 89]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TVar 88) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 88]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 88]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TVar 87) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 87]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 87]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TVar 86) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 86]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 86]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TVar 85) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 85]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 85]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 84) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 84]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 84]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TVar 83),"Prelude","[]")) []]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 111) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 111]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 111]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 99) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 99]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 99]))),"Prelude",":")) [Lit (Charc  'N'),Comb ConsCall ((Nothing,Just (FuncType (TVar 98) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 98]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 98]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TVar 97) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 97]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 97]))),"Prelude",":")) [Lit (Charc  'v'),Comb ConsCall ((Nothing,Just (FuncType (TVar 96) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 96]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 96]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 95) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 95]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 95]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TVar 94) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 94]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 94]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TVar 93) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 93]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 93]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 92) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 92]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 92]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TVar 91),"Prelude","[]")) []]]]]]]]],Comb ConsCall ((Nothing,Just (FuncType (TVar 110) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 110]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 110]))),"Prelude",":")) [Comb ConsCall ((Nothing,Just (FuncType (TVar 108) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 108]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 108]))),"Prelude",":")) [Lit (Charc  'D'),Comb ConsCall ((Nothing,Just (FuncType (TVar 107) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 107]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 107]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 106) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 106]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 106]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TVar 105) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 105]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 105]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 104) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 104]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 104]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TVar 103) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 103]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 103]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TVar 102) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 102]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 102]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TVar 101) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 101]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 101]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (TVar 100),"Prelude","[]")) []]]]]]]]],Comb ConsCall ((Nothing,Just (TVar 109),"Prelude","[]")) []]]]]]]]]]]]])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","!!")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),9)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  1)]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2))]]]]]))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toTimeString")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toTimeString.digit2.90")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toTimeString.digit2.90")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toTimeString.digit2.90")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7))]]]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Time","toTimeString.digit2.90")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  10)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '0'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Char") [])),"Prelude","chr")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Prelude","ord")) [Lit (Charc  '0')],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]],Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Prelude","show")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addSeconds")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addMinutes")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  60)]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addHours")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  3600)]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addDays")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","*")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  86400)]]])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addMonths")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Let [((Just (TVar 0),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])),"Time","toUTCTime")) [Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP3#y")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP4#mo")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP5#d")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP6#h")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP7#mi")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP8#s")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP9#tz")) [Var ((Just (TVar 0),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Lit (Intc  12)],Lit (Intc  1)])] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addYears")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Lit (Intc  12)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","toClockTime")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10))]]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addYears")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","div")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Lit (Intc  1)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Lit (Intc  12)],Lit (Intc  1)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","toClockTime")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),11)),Lit (Intc  12)],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10))]]])]))))))))))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP3#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP4#mo")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP5#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP6#h")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP7#mi")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP8#s")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addMonths._#selFP9#tz")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") []))),"Time","addYears")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Time","ClockTime")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  0)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Let [((Just (TVar 1),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])),"Time","toUTCTime")) [Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP11#y")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP12#mo")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP13#d")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP14#h")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP15#mi")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP16#s")) [Var ((Just (TVar 1),3))])] (Let [((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP17#tz")) [Var ((Just (TVar 1),3))])] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","toClockTime")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","+")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),9)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),10))]])))))))))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP11#y")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP12#mo")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP13#d")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP14#h")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),5)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP15#mi")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),6)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP16#s")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),7)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Int") [])),"Time","addYears._#selFP17#tz")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) [])) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","CalendarTime") [])))))))),"Time","CalendarTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),5),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),6),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),7),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)]) (Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),8)))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Time","daysOfMonth")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Int")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)] (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  2)]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","!!")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  28),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  30),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  30),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  30),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  30),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]))),"Prelude",":")) [Lit (Intc  31),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Prelude","[]")) []]]]]]]]]]]]],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","-")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1)),Lit (Intc  1)]]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  4)],Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","||")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","/=")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  100)],Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","==")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Prelude","mod")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  400)],Lit (Intc  0)]]]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Lit (Intc  29)),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Lit (Intc  28))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Time","validDate")) 3 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","Int")) []) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),1),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),2),(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Lit (Intc  13)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","&&")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Lit (Intc  0)],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Int") []))),"Time","daysOfMonth")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),1))]]]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Time","compareDate")) 0 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [] (Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Time","compareCalendarTime")) [])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Time","compareCalendarTime")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (FuncType (TCons ((Nothing,Nothing,"Time","CalendarTime")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1),(Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Time","compareClockTime")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","toClockTime")) [Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),1))],Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","CalendarTime") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","toClockTime")) [Var ((Just (TCons (Nothing,Nothing,"Time","CalendarTime") []),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (FuncType (TCons (Nothing,Nothing,"Time","ClockTime") []) (TCons (Nothing,Nothing,"Prelude","Ordering") []))),"Time","compareClockTime")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (FuncType (TCons ((Nothing,Nothing,"Time","ClockTime")) []) (TCons ((Nothing,Nothing,"Prelude","Ordering")) []))) (Rule [(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1),(Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),1))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)]) (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Time","ClockTime") []),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Time","ClockTime") [])),"Time","CTime")) [(Just (TCons (Nothing,Nothing,"Prelude","Int") []),4)]) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","<")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","LT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (FuncType (TCons (Nothing,Nothing,"Prelude","Int") []) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude",">")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","Int") []),4))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","GT")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","otherwise")) []) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","EQ")) []),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Ordering") []),"Prelude","failed")) [])])])])])]))] []
+ src/lib/Curry/Module/.curry/Time.fcy view
@@ -0,0 +1,1 @@+Prog "Time" ["Prelude"] [Type ("Time","ClockTime") Public [] [Cons ("Time","CTime") 1 Private [TCons ("Prelude","Int") []]],Type ("Time","CalendarTime") Public [] [Cons ("Time","CalendarTime") 7 Public [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]] [Func ("Time","ctYear") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Time","ctMonth") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Time","ctDay") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Time","ctHour") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Time","ctMin") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Time","ctSec") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)])),Func ("Time","ctTZ") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 8)])),Func ("Time","getClockTime") 0 Public (TCons ("Prelude","IO") [TCons ("Time","ClockTime") []]) (External "Time.getClockTime"),Func ("Time","getLocalTime") 0 Public (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []]) (Rule [] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Time","getClockTime") [],Comb (FuncPartCall 1) ("Time","getLocalTime._#lambda2") []])),Func ("Time","getLocalTime._#lambda2") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (Rule [1] (Comb FuncCall ("Time","toCalendarTime") [Var 1])),Func ("Time","clockTimeToInt") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CTime") [2]) (Var 2)])),Func ("Time","toCalendarTime") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Time","prim_toCalendarTime") [],Var 1])),Func ("Time","prim_toCalendarTime") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (External "Time.prim_toCalendarTime"),Func ("Time","toUTCTime") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","CalendarTime") [])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Time","prim_toUTCTime") [],Var 1])),Func ("Time","prim_toUTCTime") 1 Private (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","CalendarTime") [])) (External "Time.prim_toUTCTime"),Func ("Time","toClockTime") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Time","ClockTime") [])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Time","prim_toClockTime") [],Var 1])),Func ("Time","prim_toClockTime") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Time","ClockTime") [])) (External "Time.prim_toClockTime"),Func ("Time","calendarTimeToString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Let [(9,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'D'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]])] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","!!") [Var 9,Comb FuncCall ("Prelude","-") [Var 3,Lit (Intc  1)]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Time","toTimeString") [Var 1],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","show") [Var 2]]]]]]]))])),Func ("Time","toDayString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Let [(9,Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'F'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude","[]") []]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude","[]") []]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'M'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'J'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude","[]") []]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'O'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'N'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'v'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]],Comb ConsCall ("Prelude",":") [Comb ConsCall ("Prelude",":") [Lit (Charc  'D'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude","[]") []]]]]]]]],Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]])] (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","!!") [Var 9,Comb FuncCall ("Prelude","-") [Var 3,Lit (Intc  1)]],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Prelude","show") [Var 4],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]],Comb FuncCall ("Prelude","show") [Var 2]]]]]))])),Func ("Time","toTimeString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Comb FuncCall ("Prelude","++") [Comb FuncCall ("Time","toTimeString.digit2.90") [Var 5],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Prelude","++") [Comb FuncCall ("Time","toTimeString.digit2.90") [Var 6],Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude","[]") []],Comb FuncCall ("Time","toTimeString.digit2.90") [Var 7]]]]])])),Func ("Time","toTimeString.digit2.90") 1 Private (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 1,Lit (Intc  10)]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude",":") [Lit (Charc  '0'),Comb ConsCall ("Prelude",":") [Comb FuncCall ("Prelude","chr") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","ord") [Lit (Charc  '0')],Var 1]],Comb ConsCall ("Prelude","[]") []]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","show") [Var 1])])),Func ("Time","addSeconds") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Var 1]])])),Func ("Time","addMinutes") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Var 1,Lit (Intc  60)]]])])),Func ("Time","addHours") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Var 1,Lit (Intc  3600)]]])])),Func ("Time","addDays") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case  Flex (Var 2) [Branch (Pattern ("Time","CTime") [3]) (Comb ConsCall ("Time","CTime") [Comb FuncCall ("Prelude","+") [Var 3,Comb FuncCall ("Prelude","*") [Var 1,Lit (Intc  86400)]]])])),Func ("Time","addMonths") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Let [(3,Comb FuncCall ("Time","toUTCTime") [Var 2])] (Let [(4,Comb FuncCall ("Time","addMonths._#selFP3#y") [Var 3])] (Let [(5,Comb FuncCall ("Time","addMonths._#selFP4#mo") [Var 3])] (Let [(6,Comb FuncCall ("Time","addMonths._#selFP5#d") [Var 3])] (Let [(7,Comb FuncCall ("Time","addMonths._#selFP6#h") [Var 3])] (Let [(8,Comb FuncCall ("Time","addMonths._#selFP7#mi") [Var 3])] (Let [(9,Comb FuncCall ("Time","addMonths._#selFP8#s") [Var 3])] (Let [(10,Comb FuncCall ("Time","addMonths._#selFP9#tz") [Var 3])] (Let [(11,Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","mod") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 5,Lit (Intc  1)],Var 1],Lit (Intc  12)],Lit (Intc  1)])] (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 11,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Time","addYears") [Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 5,Lit (Intc  1)],Var 1],Lit (Intc  12)],Comb FuncCall ("Time","toClockTime") [Comb ConsCall ("Time","CalendarTime") [Var 4,Var 11,Var 6,Var 7,Var 8,Var 9,Var 10]]]),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Time","addYears") [Comb FuncCall ("Prelude","-") [Comb FuncCall ("Prelude","div") [Comb FuncCall ("Prelude","+") [Comb FuncCall ("Prelude","-") [Var 5,Lit (Intc  1)],Var 1],Lit (Intc  12)],Lit (Intc  1)],Comb FuncCall ("Time","toClockTime") [Comb ConsCall ("Time","CalendarTime") [Var 4,Comb FuncCall ("Prelude","+") [Var 11,Lit (Intc  12)],Var 6,Var 7,Var 8,Var 9,Var 10]]])]))))))))))),Func ("Time","addMonths._#selFP3#y") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Time","addMonths._#selFP4#mo") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Time","addMonths._#selFP5#d") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Time","addMonths._#selFP6#h") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Time","addMonths._#selFP7#mi") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Time","addMonths._#selFP8#s") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)])),Func ("Time","addMonths._#selFP9#tz") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 8)])),Func ("Time","addYears") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","==") [Var 1,Lit (Intc  0)]) [Branch (Pattern ("Prelude","True") []) (Var 2),Branch (Pattern ("Prelude","False") []) (Let [(3,Comb FuncCall ("Time","toUTCTime") [Var 2])] (Let [(4,Comb FuncCall ("Time","addYears._#selFP11#y") [Var 3])] (Let [(5,Comb FuncCall ("Time","addYears._#selFP12#mo") [Var 3])] (Let [(6,Comb FuncCall ("Time","addYears._#selFP13#d") [Var 3])] (Let [(7,Comb FuncCall ("Time","addYears._#selFP14#h") [Var 3])] (Let [(8,Comb FuncCall ("Time","addYears._#selFP15#mi") [Var 3])] (Let [(9,Comb FuncCall ("Time","addYears._#selFP16#s") [Var 3])] (Let [(10,Comb FuncCall ("Time","addYears._#selFP17#tz") [Var 3])] (Comb FuncCall ("Time","toClockTime") [Comb ConsCall ("Time","CalendarTime") [Comb FuncCall ("Prelude","+") [Var 4,Var 1],Var 5,Var 6,Var 7,Var 8,Var 9,Var 10]])))))))))])),Func ("Time","addYears._#selFP11#y") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 2)])),Func ("Time","addYears._#selFP12#mo") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 3)])),Func ("Time","addYears._#selFP13#d") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 4)])),Func ("Time","addYears._#selFP14#h") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 5)])),Func ("Time","addYears._#selFP15#mi") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 6)])),Func ("Time","addYears._#selFP16#s") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 7)])),Func ("Time","addYears._#selFP17#tz") 1 Private (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [1] (Case  Flex (Var 1) [Branch (Pattern ("Time","CalendarTime") [2,3,4,5,6,7,8]) (Var 8)])),Func ("Time","daysOfMonth") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [1,2] (Case  Rigid (Comb FuncCall ("Prelude","/=") [Var 1,Lit (Intc  2)]) [Branch (Pattern ("Prelude","True") []) (Comb FuncCall ("Prelude","!!") [Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude",":") [Lit (Intc  28),Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude",":") [Lit (Intc  30),Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude",":") [Lit (Intc  30),Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude",":") [Lit (Intc  30),Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude",":") [Lit (Intc  30),Comb ConsCall ("Prelude",":") [Lit (Intc  31),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]],Comb FuncCall ("Prelude","-") [Var 1,Lit (Intc  1)]]),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  4)],Lit (Intc  0)],Comb FuncCall ("Prelude","||") [Comb FuncCall ("Prelude","/=") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  100)],Lit (Intc  0)],Comb FuncCall ("Prelude","==") [Comb FuncCall ("Prelude","mod") [Var 2,Lit (Intc  400)],Lit (Intc  0)]]]) [Branch (Pattern ("Prelude","True") []) (Lit (Intc  29)),Branch (Pattern ("Prelude","False") []) (Lit (Intc  28))])])),Func ("Time","validDate") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">") [Var 2,Lit (Intc  0)],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude","<") [Var 2,Lit (Intc  13)],Comb FuncCall ("Prelude","&&") [Comb FuncCall ("Prelude",">") [Var 3,Lit (Intc  0)],Comb FuncCall ("Prelude","<=") [Var 3,Comb FuncCall ("Time","daysOfMonth") [Var 2,Var 1]]]]])),Func ("Time","compareDate") 0 Public (FuncType (TCons ("Time","CalendarTime") []) (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Comb (FuncPartCall 2) ("Time","compareCalendarTime") [])),Func ("Time","compareCalendarTime") 2 Public (FuncType (TCons ("Time","CalendarTime") []) (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Comb FuncCall ("Time","compareClockTime") [Comb FuncCall ("Time","toClockTime") [Var 1],Comb FuncCall ("Time","toClockTime") [Var 2]])),Func ("Time","compareClockTime") 2 Public (FuncType (TCons ("Time","ClockTime") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","Ordering") []))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Time","CTime") [3]) (Case  Flex (Var 2) [Branch (Pattern ("Time","CTime") [4]) (Case  Rigid (Comb FuncCall ("Prelude","<") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","LT") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude",">") [Var 3,Var 4]) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","GT") []),Branch (Pattern ("Prelude","False") []) (Case  Rigid (Comb FuncCall ("Prelude","otherwise") []) [Branch (Pattern ("Prelude","True") []) (Comb ConsCall ("Prelude","EQ") []),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","failed") [])])])])])]))] []
+ src/lib/Curry/Module/.curry/Time.fint view
@@ -0,0 +1,1 @@+Prog "Time" ["Prelude"] [Type ("Time","ClockTime") Public [] [],Type ("Time","CalendarTime") Public [] [Cons ("Time","CalendarTime") 7 Public [TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") [],TCons ("Prelude","Int") []]]] [Func ("Time","ctYear") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","ctMonth") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","ctDay") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","ctHour") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","ctMin") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","ctSec") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","ctTZ") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","getClockTime") 0 Public (TCons ("Prelude","IO") [TCons ("Time","ClockTime") []]) (External "Time.getClockTime"),Func ("Time","getLocalTime") 0 Public (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []]) (Rule [] (Var 0)),Func ("Time","clockTimeToInt") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","Int") [])) (Rule [] (Var 0)),Func ("Time","toCalendarTime") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","IO") [TCons ("Time","CalendarTime") []])) (Rule [] (Var 0)),Func ("Time","toUTCTime") 1 Public (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","CalendarTime") [])) (Rule [] (Var 0)),Func ("Time","toClockTime") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Time","ClockTime") [])) (Rule [] (Var 0)),Func ("Time","calendarTimeToString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Time","toDayString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Time","toTimeString") 1 Public (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Time","addSeconds") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [] (Var 0)),Func ("Time","addMinutes") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [] (Var 0)),Func ("Time","addHours") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [] (Var 0)),Func ("Time","addDays") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [] (Var 0)),Func ("Time","addMonths") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [] (Var 0)),Func ("Time","addYears") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Time","ClockTime") []))) (Rule [] (Var 0)),Func ("Time","daysOfMonth") 2 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Int") []))) (Rule [] (Var 0)),Func ("Time","validDate") 3 Public (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (FuncType (TCons ("Prelude","Int") []) (TCons ("Prelude","Bool") [])))) (Rule [] (Var 0)),Func ("Time","compareDate") 0 Public (FuncType (TCons ("Time","CalendarTime") []) (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Time","compareCalendarTime") 2 Public (FuncType (TCons ("Time","CalendarTime") []) (FuncType (TCons ("Time","CalendarTime") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0)),Func ("Time","compareClockTime") 2 Public (FuncType (TCons ("Time","ClockTime") []) (FuncType (TCons ("Time","ClockTime") []) (TCons ("Prelude","Ordering") []))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Time.uacy view
@@ -0,0 +1,35 @@+CurryProg "Time"+ ["Prelude"]+ [CType ("Time","ClockTime") Public [] [CCons ("Time","CTime") 1 Private [CTCons ("Prelude","Int") []]],+  CType ("Time","CalendarTime") Public [] [CCons ("Time","CalendarTime") 7 Public [CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") [],CTCons ("Prelude","Int") []]]]+ [CFunc ("Time","addDays") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CLit (CIntc 86400)))))] []]),+  CFunc ("Time","addHours") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CLit (CIntc 3600)))))] []]),+  CFunc ("Time","addMinutes") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CApply (CApply (CSymbol ("Prelude","*")) (CVar (0,"n"))) (CLit (CIntc 60)))))] []]),+  CFunc ("Time","addMonths") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"ctime")] [(CSymbol ("Prelude","success"),CLetDecl [CLocalPat (CPComb ("Time","CalendarTime") [CPVar (2,"y"),CPVar (3,"mo"),CPVar (4,"d"),CPVar (5,"h"),CPVar (6,"mi"),CPVar (7,"s"),CPVar (8,"tz")]) (CApply (CSymbol ("Time","toUTCTime")) (CVar (1,"ctime"))) [],CLocalPat (CPVar (9,"nmo")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","mod")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"mo"))) (CLit (CIntc 1)))) (CVar (0,"n")))) (CLit (CIntc 12)))) (CLit (CIntc 1))) []] (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (9,"nmo"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Time","addYears")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"mo"))) (CLit (CIntc 1)))) (CVar (0,"n")))) (CLit (CIntc 12)))) (CApply (CSymbol ("Time","toClockTime")) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Time","CalendarTime")) (CVar (2,"y"))) (CVar (9,"nmo"))) (CVar (4,"d"))) (CVar (5,"h"))) (CVar (6,"mi"))) (CVar (7,"s"))) (CVar (8,"tz")))))) (CApply (CApply (CSymbol ("Time","addYears")) (CApply (CApply (CSymbol ("Prelude","-")) (CApply (CApply (CSymbol ("Prelude","div")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (3,"mo"))) (CLit (CIntc 1)))) (CVar (0,"n")))) (CLit (CIntc 12)))) (CLit (CIntc 1)))) (CApply (CSymbol ("Time","toClockTime")) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Time","CalendarTime")) (CVar (2,"y"))) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (9,"nmo"))) (CLit (CIntc 12)))) (CVar (4,"d"))) (CVar (5,"h"))) (CVar (6,"mi"))) (CVar (7,"s"))) (CVar (8,"tz")))))))] []]),+  CFunc ("Time","addSeconds") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPComb ("Time","CTime") [CPVar (1,"ctime")]] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Time","CTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (1,"ctime"))) (CVar (0,"n"))))] []]),+  CFunc ("Time","addYears") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","ClockTime") []))) (CRules CFlex [CRule [CPVar (0,"n"),CPVar (1,"ctime")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","==")) (CVar (0,"n"))) (CLit (CIntc 0)))) (CVar (1,"ctime"))) (CLetDecl [CLocalPat (CPComb ("Time","CalendarTime") [CPVar (2,"y"),CPVar (3,"mo"),CPVar (4,"d"),CPVar (5,"h"),CPVar (6,"mi"),CPVar (7,"s"),CPVar (8,"tz")]) (CApply (CSymbol ("Time","toUTCTime")) (CVar (1,"ctime"))) []] (CApply (CSymbol ("Time","toClockTime")) (CApply (CApply (CApply (CApply (CApply (CApply (CApply (CSymbol ("Time","CalendarTime")) (CApply (CApply (CSymbol ("Prelude","+")) (CVar (2,"y"))) (CVar (0,"n")))) (CVar (3,"mo"))) (CVar (4,"d"))) (CVar (5,"h"))) (CVar (6,"mi"))) (CVar (7,"s"))) (CVar (8,"tz"))))))] []]),+  CFunc ("Time","calendarTimeToString") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPAs (7,"ctime") (CPComb ("Time","CalendarTime") [CPVar (0,"y"),CPVar (1,"mo"),CPVar (2,"d"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")])] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (8,"shortMonths"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"mo"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"d")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Time","toTimeString")) (CVar (7,"ctime")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Prelude","show")) (CVar (0,"y")))))))))] [CLocalPat (CPVar (8,"shortMonths")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CSymbol ("Prelude","[]")))))) (CSymbol ("Prelude","[]")))))))))))))) []]]),+  CFunc ("Time","clockTimeToInt") 1 Public (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CTime") [CPVar (0,"i")]] [(CSymbol ("Prelude","success"),CVar (0,"i"))] []]),+  CFunc ("Time","compareCalendarTime") 2 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPVar (0,"ct1"),CPVar (1,"ct2")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Time","compareClockTime")) (CApply (CSymbol ("Time","toClockTime")) (CVar (0,"ct1")))) (CApply (CSymbol ("Time","toClockTime")) (CVar (1,"ct2"))))] []]),+  CFunc ("Time","compareClockTime") 2 Public (CFuncType (CTCons ("Time","ClockTime") []) (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [CPComb ("Time","CTime") [CPVar (0,"time1")],CPComb ("Time","CTime") [CPVar (1,"time2")]] [(CApply (CApply (CSymbol ("Prelude","<")) (CVar (0,"time1"))) (CVar (1,"time2")),CSymbol ("Prelude","LT")),(CApply (CApply (CSymbol ("Prelude",">")) (CVar (0,"time1"))) (CVar (1,"time2")),CSymbol ("Prelude","GT")),(CSymbol ("Prelude","otherwise"),CSymbol ("Prelude","EQ"))] []]),+  CFunc ("Time","compareDate") 0 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Ordering") []))) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CSymbol ("Time","compareCalendarTime"))] []]),+  CFunc ("Time","ctDay") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"d"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (2,"d"))] []]),+  CFunc ("Time","ctHour") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"h"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (3,"h"))] []]),+  CFunc ("Time","ctMin") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"m"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (4,"m"))] []]),+  CFunc ("Time","ctMonth") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"m"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (1,"m"))] []]),+  CFunc ("Time","ctSec") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"s"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (5,"s"))] []]),+  CFunc ("Time","ctTZ") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"tz")]] [(CSymbol ("Prelude","success"),CVar (6,"tz"))] []]),+  CFunc ("Time","ctYear") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","Int") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"y"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CVar (0,"y"))] []]),+  CFunc ("Time","daysOfMonth") 2 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Int") []))) (CRules CFlex [CRule [CPVar (0,"mo"),CPVar (1,"yr")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","/=")) (CVar (0,"mo"))) (CLit (CIntc 2)))) (CApply (CApply (CSymbol ("Prelude","!!")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 28))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 30))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CIntc 31))) (CSymbol ("Prelude","[]"))))))))))))))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (0,"mo"))) (CLit (CIntc 1))))) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"yr"))) (CLit (CIntc 4)))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","||")) (CApply (CApply (CSymbol ("Prelude","/=")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"yr"))) (CLit (CIntc 100)))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","==")) (CApply (CApply (CSymbol ("Prelude","mod")) (CVar (1,"yr"))) (CLit (CIntc 400)))) (CLit (CIntc 0)))))) (CLit (CIntc 29))) (CLit (CIntc 28))))] []]),+  CFunc ("Time","getClockTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Time","ClockTime") []]) (CExternal "getClockTime"),+  CFunc ("Time","getLocalTime") 0 Public (CTCons ("Prelude","IO") [CTCons ("Time","CalendarTime") []]) (CRules CFlex [CRule [] [(CSymbol ("Prelude","success"),CDoExpr [CSPat (CPVar (0,"ctime")) (CSymbol ("Time","getClockTime")),CSExpr (CApply (CSymbol ("Time","toCalendarTime")) (CVar (0,"ctime")))])] []]),+  CFunc ("Time","prim_toCalendarTime") 1 Private (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","IO") [CTCons ("Time","CalendarTime") []])) (CExternal "prim_toCalendarTime"),+  CFunc ("Time","prim_toClockTime") 1 Private (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Time","ClockTime") [])) (CExternal "prim_toClockTime"),+  CFunc ("Time","prim_toUTCTime") 1 Private (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","CalendarTime") [])) (CExternal "prim_toUTCTime"),+  CFunc ("Time","toCalendarTime") 1 Public (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Prelude","IO") [CTCons ("Time","CalendarTime") []])) (CRules CFlex [CRule [CPVar (0,"ctime")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Time","prim_toCalendarTime"))) (CVar (0,"ctime")))] []]),+  CFunc ("Time","toClockTime") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Time","ClockTime") [])) (CRules CFlex [CRule [CPVar (0,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Time","prim_toClockTime"))) (CVar (0,"d")))] []]),+  CFunc ("Time","toDayString") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"y"),CPVar (1,"mo"),CPVar (2,"d"),CPVar (3,"_"),CPVar (4,"_"),CPVar (5,"_"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude","!!")) (CVar (7,"longMonths"))) (CApply (CApply (CSymbol ("Prelude","-")) (CVar (1,"mo"))) (CLit (CIntc 1))))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Prelude","show")) (CVar (2,"d")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (0,"y")))))))] [CLocalPat (CPVar (7,"longMonths")) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'F'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]"))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CSymbol ("Prelude","[]")))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'M'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'J'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]"))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CSymbol ("Prelude","[]"))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'O'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]")))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'N'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'v'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]"))))))))))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'D'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CSymbol ("Prelude","[]"))))))))))) (CSymbol ("Prelude","[]")))))))))))))) []]]),+  CFunc ("Time","toTimeString") 1 Public (CFuncType (CTCons ("Time","CalendarTime") []) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPComb ("Time","CalendarTime") [CPVar (0,"_"),CPVar (1,"_"),CPVar (2,"_"),CPVar (3,"h"),CPVar (4,"mi"),CPVar (5,"s"),CPVar (6,"_")]] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Time","digit2")) (CVar (3,"h")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CSymbol ("Time","digit2")) (CVar (4,"mi")))) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CSymbol ("Prelude","[]")))) (CApply (CSymbol ("Time","digit2")) (CVar (5,"s")))))))] [CLocalFunc (CFunc ("Time","digit2") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (7,"n")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (7,"n"))) (CLit (CIntc 10)))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '0'))) (CApply (CApply (CSymbol ("Prelude",":")) (CApply (CSymbol ("Prelude","chr")) (CApply (CApply (CSymbol ("Prelude","+")) (CApply (CSymbol ("Prelude","ord")) (CLit (CCharc '0')))) (CVar (7,"n"))))) (CSymbol ("Prelude","[]"))))) (CApply (CSymbol ("Prelude","show")) (CVar (7,"n"))))] []]))]]),+  CFunc ("Time","toUTCTime") 1 Public (CFuncType (CTCons ("Time","ClockTime") []) (CTCons ("Time","CalendarTime") [])) (CRules CFlex [CRule [CPVar (0,"ctime")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Time","prim_toUTCTime"))) (CVar (0,"ctime")))] []]),+  CFunc ("Time","validDate") 3 Public (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CFuncType (CTCons ("Prelude","Int") []) (CTCons ("Prelude","Bool") [])))) (CRules CFlex [CRule [CPVar (0,"y"),CPVar (1,"m"),CPVar (2,"d")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (1,"m"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude","<")) (CVar (1,"m"))) (CLit (CIntc 13)))) (CApply (CApply (CSymbol ("Prelude","&&")) (CApply (CApply (CSymbol ("Prelude",">")) (CVar (2,"d"))) (CLit (CIntc 0)))) (CApply (CApply (CSymbol ("Prelude","<=")) (CVar (2,"d"))) (CApply (CApply (CSymbol ("Time","daysOfMonth")) (CVar (1,"m"))) (CVar (0,"y")))))))] []])]+ []
+ src/lib/Curry/Module/.curry/Traversal.acy view
@@ -0,0 +1,27 @@+CurryProg "Traversal"+ ["Prelude"]+ [CTypeSyn ("Traversal","Traversable") Public [(0,"a"),(1,"b")] (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])),+  CTypeSyn ("Traversal","FunList") Private [(0,"a")] (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))]+ [CFunc ("Traversal","childFamilies") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb"),CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Traversal","childFamiliesFL")) (CVar (0,"tra"))) (CVar (1,"trb"))) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Traversal","childFamiliesFL") 4 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTCons ("Prelude","[]") [CTVar (1,"b")]))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb"),CPVar (2,"x"),CPVar (3,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Traversal","concatFL")) (CApply (CApply (CSymbol ("Prelude","map")) (CApply (CSymbol ("Traversal","familyFL")) (CVar (1,"trb")))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tra"))) (CVar (2,"x"))))) (CVar (3,"xs")))] []]),+  CFunc ("Traversal","children") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"tr")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","fst"))) (CVar (0,"tr")))] []]),+  CFunc ("Traversal","concatFL") 2 Private (CFuncType (CTCons ("Prelude","[]") [CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])]) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CVar (1,"x")) (CApply (CApply (CSymbol ("Traversal","concatFL")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []]),+  CFunc ("Traversal","evalChildFamilies") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildren")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","evalFamily")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","evalChildFamiliesIO") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTVar (1,"b")]])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildrenIO")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","evalFamilyIO")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","evalFamily") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (0,"a")])) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Traversal","mapFamily")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))] [CLocalFunc (CFunc ("Traversal","g") 1 Private (CFuncType (CTVar (1,"_100")) (CTVar (1,"_100"))) (CRules CFlex [CRule [CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Traversal","mapFamily")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))) (CApply (CVar (1,"f")) (CVar (2,"x"))))] []]))]]),+  CFunc ("Traversal","evalFamilyIO") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTVar (0,"a")]])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Traversal","mapFamilyIO")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))] [CLocalFunc (CFunc ("Traversal","g") 1 Private (CFuncType (CTVar (1,"_202")) (CTCons ("Prelude","IO") [CTVar (1,"_202")])) (CRules CFlex [CRule [CPVar (2,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CVar (1,"f")) (CVar (2,"a")))) (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CSymbol ("Prelude","return")) (CVar (2,"a")))) (CApply (CApply (CSymbol ("Traversal","mapFamilyIO")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))))] []]))]]),+  CFunc ("Traversal","family") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Traversal","familyFL")) (CVar (0,"tr"))) (CVar (1,"x"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Traversal","familyFL") 3 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"x"),CPVar (2,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CApply (CApply (CSymbol ("Traversal","childFamiliesFL")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"x"))) (CVar (2,"xs"))))] []]),+  CFunc ("Traversal","fold") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b")))) (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Traversal","foldChildren")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"f"))) (CVar (1,"f")))] []]),+  CFunc ("Traversal","foldChildren") 5 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"c")]) (CTVar (3,"d")))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"c")]) (CTVar (2,"c")))) (CFuncType (CTVar (0,"a")) (CTVar (3,"d"))))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb"),CPVar (2,"f"),CPVar (3,"g"),CPVar (4,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (2,"f")) (CVar (4,"a"))) (CApply (CApply (CSymbol ("Prelude","map")) (CApply (CApply (CSymbol ("Traversal","fold")) (CVar (1,"trb"))) (CVar (3,"g")))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tra"))) (CVar (4,"a")))))] []]),+  CFunc ("Traversal","liftIO") 2 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"ioa")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CVar (1,"ioa"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CVar (0,"f"))))] []]),+  CFunc ("Traversal","mapChildFamilies") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildren")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","mapFamily")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","mapChildFamiliesIO") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (1,"b"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildrenIO")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","mapFamilyIO")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","mapChildren") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f"),CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Traversal","replaceChildren")) (CVar (0,"tr"))) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","map")) (CVar (1,"f"))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tr"))) (CVar (2,"x")))))] []]),+  CFunc ("Traversal","mapChildrenIO") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f"),CPVar (2,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Traversal","replaceChildrenIO")) (CVar (0,"tr"))) (CVar (2,"a"))) (CApply (CApply (CSymbol ("Prelude","mapIO")) (CVar (1,"f"))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tr"))) (CVar (2,"a")))))] []]),+  CFunc ("Traversal","mapFamily") 2 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CVar (1,"f"))) (CApply (CApply (CApply (CSymbol ("Traversal","mapChildFamilies")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"f"))))] []]),+  CFunc ("Traversal","mapFamilyIO") 3 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (0,"a")],CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))])) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f"),CPVar (2,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CApply (CApply (CSymbol ("Traversal","mapChildFamiliesIO")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"f"))) (CVar (2,"a")))) (CVar (1,"f")))] []]),+  CFunc ("Traversal","noChildren") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CApply (CSymbol ("Prelude","const")) (CVar (0,"x"))))] []]),+  CFunc ("Traversal","replaceChildren") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","snd"))) (CVar (0,"tr")))] []]),+  CFunc ("Traversal","replaceChildrenIO") 1 Public (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (1,"b")]]) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Traversal","liftIO"))) (CApply (CSymbol ("Traversal","replaceChildren")) (CVar (0,"tr"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Traversal.cy view
@@ -0,0 +1,50 @@+Module "Traversal"+(Just (Exporting (11,18) [(Export (QualIdent Nothing (Ident "Traversable" 0))),(Export (QualIdent Nothing (Ident "noChildren" 0))),(Export (QualIdent Nothing (Ident "children" 0))),(Export (QualIdent Nothing (Ident "replaceChildren" 0))),(Export (QualIdent Nothing (Ident "mapChildren" 0))),(Export (QualIdent Nothing (Ident "family" 0))),(Export (QualIdent Nothing (Ident "childFamilies" 0))),(Export (QualIdent Nothing (Ident "mapFamily" 0))),(Export (QualIdent Nothing (Ident "mapChildFamilies" 0))),(Export (QualIdent Nothing (Ident "evalFamily" 0))),(Export (QualIdent Nothing (Ident "evalChildFamilies" 0))),(Export (QualIdent Nothing (Ident "fold" 0))),(Export (QualIdent Nothing (Ident "foldChildren" 0))),(Export (QualIdent Nothing (Ident "replaceChildrenIO" 0))),(Export (QualIdent Nothing (Ident "mapChildrenIO" 0))),(Export (QualIdent Nothing (Ident "mapFamilyIO" 0))),(Export (QualIdent Nothing (Ident "mapChildFamiliesIO" 0))),(Export (QualIdent Nothing (Ident "evalFamilyIO" 0))),(Export (QualIdent Nothing (Ident "evalChildFamiliesIO" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(TypeDecl (31,1) (Ident "Traversable" 0) [(Ident "a" 0),(Ident "b" 0)] (ArrowType (VariableType (Ident "a" 0)) (TupleType [(ListType (VariableType (Ident "b" 0))),(ArrowType (ListType (VariableType (Ident "b" 0))) (VariableType (Ident "a" 0)))])))+,(TypeDecl (141,1) (Ident "FunList" 0) [(Ident "a" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (ListType (VariableType (Ident "a" 0)))))+,(TypeSig (35,1) [(Ident "noChildren" 0)] (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "_" 0)),(VariableType (Ident "_" 0))]))+,(FunctionDecl (36,1) (Ident "noChildren" 0) [(Equation (36,1) (FunLhs (Ident "noChildren" 0) [(VariablePattern (Ident "x" 2))]) (SimpleRhs (36,16) (Tuple [(List []),(Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Variable (QualIdent Nothing (Ident "x" 2))))]) []))])+,(TypeSig (40,1) [(Ident "children" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "b" 0))))))+,(FunctionDecl (41,1) (Ident "children" 0) [(Equation (41,1) (FunLhs (Ident "children" 0) [(VariablePattern (Ident "tr" 4))]) (SimpleRhs (41,15) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "fst" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent Nothing (Ident "tr" 4)))) []))])+,(TypeSig (45,1) [(Ident "replaceChildren" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "b" 0))) (VariableType (Ident "a" 0))))))+,(FunctionDecl (46,1) (Ident "replaceChildren" 0) [(Equation (46,1) (FunLhs (Ident "replaceChildren" 0) [(VariablePattern (Ident "tr" 6))]) (SimpleRhs (46,22) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "snd" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent Nothing (Ident "tr" 6)))) []))])+,(TypeSig (50,1) [(Ident "mapChildren" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))))+,(FunctionDecl (51,1) (Ident "mapChildren" 0) [(Equation (51,1) (FunLhs (Ident "mapChildren" 0) [(VariablePattern (Ident "tr" 8)),(VariablePattern (Ident "f" 8)),(VariablePattern (Ident "x" 8))]) (SimpleRhs (51,22) (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "replaceChildren" 0))) (Variable (QualIdent Nothing (Ident "tr" 8)))) (Variable (QualIdent Nothing (Ident "x" 8)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Variable (QualIdent Nothing (Ident "f" 8)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "children" 0))) (Variable (QualIdent Nothing (Ident "tr" 8)))) (Variable (QualIdent Nothing (Ident "x" 8)))))))) []))])+,(TypeSig (55,1) [(Ident "family" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "a" 0))))))+,(FunctionDecl (56,1) (Ident "family" 0) [(Equation (56,1) (FunLhs (Ident "family" 0) [(VariablePattern (Ident "tr" 10)),(VariablePattern (Ident "x" 10))]) (SimpleRhs (56,15) (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "familyFL" 0))) (Variable (QualIdent Nothing (Ident "tr" 10)))) (Variable (QualIdent Nothing (Ident "x" 10)))) (List [])) []))])+,(TypeSig (61,1) [(Ident "childFamilies" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ListType (VariableType (Ident "b" 0)))))))+,(FunctionDecl (62,1) (Ident "childFamilies" 0) [(Equation (62,1) (FunLhs (Ident "childFamilies" 0) [(VariablePattern (Ident "tra" 12)),(VariablePattern (Ident "trb" 12)),(VariablePattern (Ident "x" 12))]) (SimpleRhs (62,27) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "childFamiliesFL" 0))) (Variable (QualIdent Nothing (Ident "tra" 12)))) (Variable (QualIdent Nothing (Ident "trb" 12)))) (Variable (QualIdent Nothing (Ident "x" 12)))) (List [])) []))])+,(TypeSig (67,1) [(Ident "mapFamily" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))))+,(FunctionDecl (68,1) (Ident "mapFamily" 0) [(Equation (68,1) (FunLhs (Ident "mapFamily" 0) [(VariablePattern (Ident "tr" 14)),(VariablePattern (Ident "f" 14))]) (SimpleRhs (68,18) (InfixApply (Variable (QualIdent Nothing (Ident "f" 14))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapChildFamilies" 0))) (Variable (QualIdent Nothing (Ident "tr" 14)))) (Variable (QualIdent Nothing (Ident "tr" 14)))) (Variable (QualIdent Nothing (Ident "f" 14))))) []))])+,(TypeSig (74,1) [(Ident "mapChildFamilies" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (VariableType (Ident "b" 0))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))))+,(FunctionDecl (75,1) (Ident "mapChildFamilies" 0) [(Equation (75,1) (FunLhs (Ident "mapChildFamilies" 0) [(VariablePattern (Ident "tra" 16)),(VariablePattern (Ident "trb" 16))]) (SimpleRhs (75,28) (InfixApply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapChildren" 0))) (Variable (QualIdent Nothing (Ident "tra" 16)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapFamily" 0))) (Variable (QualIdent Nothing (Ident "trb" 16))))) []))])+,(TypeSig (82,1) [(Ident "evalFamily" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0))))))+,(FunctionDecl (83,1) (Ident "evalFamily" 0) [(Equation (83,1) (FunLhs (Ident "evalFamily" 0) [(VariablePattern (Ident "tr" 18)),(VariablePattern (Ident "f" 18))]) (SimpleRhs (83,19) (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapFamily" 0))) (Variable (QualIdent Nothing (Ident "tr" 18)))) (Variable (QualIdent Nothing (Ident "g" 19)))) [(FunctionDecl (84,8) (Ident "g" 19) [(Equation (84,8) (FunLhs (Ident "g" 19) [(VariablePattern (Ident "x" 20))]) (SimpleRhs (84,14) (Apply (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Variable (QualIdent Nothing (Ident "x" 20)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapFamily" 0))) (Variable (QualIdent Nothing (Ident "tr" 18)))) (Variable (QualIdent Nothing (Ident "g" 19)))))) (Paren (Apply (Variable (QualIdent Nothing (Ident "f" 18))) (Variable (QualIdent Nothing (Ident "x" 20)))))) []))])]))])+,(TypeSig (90,1) [(Ident "evalChildFamilies" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))))+,(FunctionDecl (92,1) (Ident "evalChildFamilies" 0) [(Equation (92,1) (FunLhs (Ident "evalChildFamilies" 0) [(VariablePattern (Ident "tra" 22)),(VariablePattern (Ident "trb" 22))]) (SimpleRhs (92,29) (InfixApply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapChildren" 0))) (Variable (QualIdent Nothing (Ident "tra" 22)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Traversal") (Ident "evalFamily" 0))) (Variable (QualIdent Nothing (Ident "trb" 22))))) []))])+,(TypeSig (96,1) [(Ident "fold" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "r" 0))) (VariableType (Ident "r" 0)))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "r" 0))))))+,(FunctionDecl (97,1) (Ident "fold" 0) [(Equation (97,1) (FunLhs (Ident "fold" 0) [(VariablePattern (Ident "tr" 24)),(VariablePattern (Ident "f" 24))]) (SimpleRhs (97,13) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "foldChildren" 0))) (Variable (QualIdent Nothing (Ident "tr" 24)))) (Variable (QualIdent Nothing (Ident "tr" 24)))) (Variable (QualIdent Nothing (Ident "f" 24)))) (Variable (QualIdent Nothing (Ident "f" 24)))) []))])+,(TypeSig (101,1) [(Ident "foldChildren" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ListType (VariableType (Ident "rb" 0))) (VariableType (Ident "ra" 0)))) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ArrowType (ListType (VariableType (Ident "rb" 0))) (VariableType (Ident "rb" 0)))) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "ra" 0))))))))+,(FunctionDecl (103,1) (Ident "foldChildren" 0) [(Equation (103,1) (FunLhs (Ident "foldChildren" 0) [(VariablePattern (Ident "tra" 26)),(VariablePattern (Ident "trb" 26)),(VariablePattern (Ident "f" 26)),(VariablePattern (Ident "g" 26)),(VariablePattern (Ident "a" 26))]) (SimpleRhs (103,30) (Apply (Apply (Variable (QualIdent Nothing (Ident "f" 26))) (Variable (QualIdent Nothing (Ident "a" 26)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "fold" 0))) (Variable (QualIdent Nothing (Ident "trb" 26)))) (Variable (QualIdent Nothing (Ident "g" 26)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "children" 0))) (Variable (QualIdent Nothing (Ident "tra" 26)))) (Variable (QualIdent Nothing (Ident "a" 26)))))))) []))])+,(TypeSig (107,1) [(Ident "replaceChildrenIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ListType (VariableType (Ident "b" 0)))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (108,1) (Ident "replaceChildrenIO" 0) [(Equation (108,1) (FunLhs (Ident "replaceChildrenIO" 0) [(VariablePattern (Ident "tr" 28))]) (SimpleRhs (108,24) (InfixApply (Variable (QualIdent (Just "Traversal") (Ident "liftIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Traversal") (Ident "replaceChildren" 0))) (Variable (QualIdent Nothing (Ident "tr" 28))))) []))])+,(TypeSig (112,1) [(Ident "mapChildrenIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (113,1) (Ident "mapChildrenIO" 0) [(Equation (113,1) (FunLhs (Ident "mapChildrenIO" 0) [(VariablePattern (Ident "tr" 30)),(VariablePattern (Ident "f" 30)),(VariablePattern (Ident "a" 30))]) (SimpleRhs (113,24) (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "replaceChildrenIO" 0))) (Variable (QualIdent Nothing (Ident "tr" 30)))) (Variable (QualIdent Nothing (Ident "a" 30)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "mapIO" 0))) (Variable (QualIdent Nothing (Ident "f" 30)))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "children" 0))) (Variable (QualIdent Nothing (Ident "tr" 30)))) (Variable (QualIdent Nothing (Ident "a" 30)))))))) []))])+,(TypeSig (117,1) [(Ident "mapFamilyIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (118,1) (Ident "mapFamilyIO" 0) [(Equation (118,1) (FunLhs (Ident "mapFamilyIO" 0) [(VariablePattern (Ident "tr" 32)),(VariablePattern (Ident "f" 32)),(VariablePattern (Ident "a" 32))]) (SimpleRhs (118,22) (InfixApply (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapChildFamiliesIO" 0))) (Variable (QualIdent Nothing (Ident "tr" 32)))) (Variable (QualIdent Nothing (Ident "tr" 32)))) (Variable (QualIdent Nothing (Ident "f" 32)))) (Variable (QualIdent Nothing (Ident "a" 32)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Variable (QualIdent Nothing (Ident "f" 32)))) []))])+,(TypeSig (122,1) [(Ident "mapChildFamiliesIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]))))))+,(FunctionDecl (124,1) (Ident "mapChildFamiliesIO" 0) [(Equation (124,1) (FunLhs (Ident "mapChildFamiliesIO" 0) [(VariablePattern (Ident "tra" 34)),(VariablePattern (Ident "trb" 34))]) (SimpleRhs (124,30) (InfixApply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapChildrenIO" 0))) (Variable (QualIdent Nothing (Ident "tra" 34)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapFamilyIO" 0))) (Variable (QualIdent Nothing (Ident "trb" 34))))) []))])+,(TypeSig (128,1) [(Ident "evalFamilyIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "a" 0))])])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))])))))+,(FunctionDecl (129,1) (Ident "evalFamilyIO" 0) [(Equation (129,1) (FunLhs (Ident "evalFamilyIO" 0) [(VariablePattern (Ident "tr" 36)),(VariablePattern (Ident "f" 36))]) (SimpleRhs (129,21) (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapFamilyIO" 0))) (Variable (QualIdent Nothing (Ident "tr" 36)))) (Variable (QualIdent Nothing (Ident "g" 37)))) [(FunctionDecl (130,8) (Ident "g" 37) [(Equation (130,8) (FunLhs (Ident "g" 37) [(VariablePattern (Ident "a" 38))]) (SimpleRhs (130,14) (InfixApply (Apply (Variable (QualIdent Nothing (Ident "f" 36))) (Variable (QualIdent Nothing (Ident "a" 38)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "maybe" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Variable (QualIdent Nothing (Ident "a" 38)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapFamilyIO" 0))) (Variable (QualIdent Nothing (Ident "tr" 36)))) (Variable (QualIdent Nothing (Ident "g" 37))))))) []))])]))])+,(TypeSig (134,1) [(Ident "evalChildFamiliesIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ArrowType (VariableType (Ident "b" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Maybe" 0)) [(VariableType (Ident "b" 0))])])) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]))))))+,(FunctionDecl (136,1) (Ident "evalChildFamiliesIO" 0) [(Equation (136,1) (FunLhs (Ident "evalChildFamiliesIO" 0) [(VariablePattern (Ident "tra" 40)),(VariablePattern (Ident "trb" 40))]) (SimpleRhs (136,31) (InfixApply (Apply (Variable (QualIdent (Just "Traversal") (Ident "mapChildrenIO" 0))) (Variable (QualIdent Nothing (Ident "tra" 40)))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Variable (QualIdent (Just "Traversal") (Ident "evalFamilyIO" 0))) (Variable (QualIdent Nothing (Ident "trb" 40))))) []))])+,(TypeSig (143,1) [(Ident "concatFL" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "FunList" 0)) [(VariableType (Ident "a" 0))])) (ConstructorType (QualIdent Nothing (Ident "FunList" 0)) [(VariableType (Ident "a" 0))])))+,(FunctionDecl (144,1) (Ident "concatFL" 0) [(Equation (144,1) (FunLhs (Ident "concatFL" 0) [(ListPattern []),(VariablePattern (Ident "ys" 42))]) (SimpleRhs (144,18) (Variable (QualIdent Nothing (Ident "ys" 42))) [])),(Equation (145,1) (FunLhs (Ident "concatFL" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "x" 44)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "xs" 44)))),(VariablePattern (Ident "ys" 44))]) (SimpleRhs (145,22) (Apply (Variable (QualIdent Nothing (Ident "x" 44))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "concatFL" 0))) (Variable (QualIdent Nothing (Ident "xs" 44)))) (Variable (QualIdent Nothing (Ident "ys" 44)))))) []))])+,(TypeSig (147,1) [(Ident "familyFL" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "a" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "FunList" 0)) [(VariableType (Ident "a" 0))]))))+,(FunctionDecl (148,1) (Ident "familyFL" 0) [(Equation (148,1) (FunLhs (Ident "familyFL" 0) [(VariablePattern (Ident "tr" 46)),(VariablePattern (Ident "x" 46)),(VariablePattern (Ident "xs" 46))]) (SimpleRhs (148,20) (InfixApply (Variable (QualIdent Nothing (Ident "x" 46))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Apply (Apply (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "childFamiliesFL" 0))) (Variable (QualIdent Nothing (Ident "tr" 46)))) (Variable (QualIdent Nothing (Ident "tr" 46)))) (Variable (QualIdent Nothing (Ident "x" 46)))) (Variable (QualIdent Nothing (Ident "xs" 46))))) []))])+,(TypeSig (150,1) [(Ident "childFamiliesFL" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "a" 0)),(VariableType (Ident "b" 0))]) (ArrowType (ConstructorType (QualIdent Nothing (Ident "Traversable" 0)) [(VariableType (Ident "b" 0)),(VariableType (Ident "b" 0))]) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "FunList" 0)) [(VariableType (Ident "b" 0))])))))+,(FunctionDecl (151,1) (Ident "childFamiliesFL" 0) [(Equation (151,1) (FunLhs (Ident "childFamiliesFL" 0) [(VariablePattern (Ident "tra" 48)),(VariablePattern (Ident "trb" 48)),(VariablePattern (Ident "x" 48)),(VariablePattern (Ident "xs" 48))]) (SimpleRhs (151,32) (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "concatFL" 0))) (Paren (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "map" 0))) (Paren (Apply (Variable (QualIdent (Just "Traversal") (Ident "familyFL" 0))) (Variable (QualIdent Nothing (Ident "trb" 48)))))) (Paren (Apply (Apply (Variable (QualIdent (Just "Traversal") (Ident "children" 0))) (Variable (QualIdent Nothing (Ident "tra" 48)))) (Variable (QualIdent Nothing (Ident "x" 48)))))))) (Variable (QualIdent Nothing (Ident "xs" 48)))) []))])+,(TypeSig (153,1) [(Ident "liftIO" 0)] (ArrowType (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "b" 0))) (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "b" 0))]))))+,(FunctionDecl (154,1) (Ident "liftIO" 0) [(Equation (154,1) (FunLhs (Ident "liftIO" 0) [(VariablePattern (Ident "f" 50)),(VariablePattern (Ident "ioa" 50))]) (SimpleRhs (154,16) (InfixApply (Variable (QualIdent Nothing (Ident "ioa" 50))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Variable (QualIdent Nothing (Ident "f" 50))))) []))])+]
+ src/lib/Curry/Module/.curry/Traversal.efc view
@@ -0,0 +1,1 @@+Prog "Traversal" ["Prelude"] [TypeSyn ((Nothing,Nothing,"Traversal","Traversable")) Public [0,1] (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])),TypeSyn ((Nothing,Nothing,"Traversal","FunList")) Private [0] (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))] [Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),"Traversal","noChildren")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (Rule [(Just (TVar 0),1)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 4) (FuncType (FuncType (TVar 6) (TVar 0)) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)]))),"Prelude","(,)")) [Comb ConsCall ((Nothing,Just (TVar 4),"Prelude","[]")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 6) (TVar 0))),"Prelude","const")) [Var ((Just (TVar 0),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Traversal","children")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])),"Prelude","fst")) [],Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)))),"Traversal","replaceChildren")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0))) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0))))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0))),"Prelude","snd")) [],Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0)))),"Traversal","mapChildren")) 3 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0)))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TVar 1)),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)))),"Traversal","replaceChildren")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Var ((Just (TVar 0),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","map")) [Var ((Just (FuncType (TVar 1) (TVar 1)),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Traversal","children")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Var ((Just (TVar 0),3))]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Traversal","family")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Traversal","familyFL")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (TVar 0),2)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Traversal","childFamilies")) 3 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Traversal","childFamiliesFL")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1)),Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2)),Var ((Just (TVar 0),3)),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),"Prelude","[]")) []])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))),"Traversal","mapFamily")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (FuncType (TVar 0) (TVar 0)),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))),"Prelude",".")) [Var ((Just (FuncType (TVar 0) (TVar 0)),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0))))),"Traversal","mapChildFamilies")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1))],Var ((Just (FuncType (TVar 0) (TVar 0)),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))))),"Traversal","mapChildFamilies")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0)))),"Traversal","mapChildren")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 1) (TVar 1)))),"Traversal","mapFamily")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])) (FuncType (TVar 0) (TVar 0)))),"Traversal","evalFamily")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0])) (FuncType (TVar 0) (TVar 0)))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))),"Traversal","mapFamily")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (TVar 0)))),"Traversal","evalFamily.g.19")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0])),2)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100])) (FuncType (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 100],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 100]) (TVar 100)])) (FuncType (TVar 100) (TVar 100)))),"Traversal","evalFamily.g.19")) 3 Private (FuncType (FuncType (TVar 100) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 100])) (FuncType (FuncType (TVar 100) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 100],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 100]) (TVar 100)])) (FuncType (TVar 100) (TVar 100)))) (Rule [(Just (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100])),1),(Just (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 100],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 100]) (TVar 100)])),2),(Just (TVar 100),3)] (Comb FuncCall ((Nothing,Just (FuncType (TVar 100) (FuncType (FuncType (TVar 100) (TVar 100)) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100]) (TVar 100)))),"Prelude","maybe")) [Var ((Just (TVar 100),3)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 100],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 100]) (TVar 100)])) (FuncType (FuncType (TVar 100) (TVar 100)) (FuncType (TVar 100) (TVar 100)))),"Traversal","mapFamily")) [Var ((Just (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 100],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 100]) (TVar 100)])),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100])) (FuncType (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 100],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 100]) (TVar 100)])) (FuncType (TVar 100) (TVar 100)))),"Traversal","evalFamily.g.19")) [Var ((Just (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100])),1)),Var ((Just (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 100],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 100]) (TVar 100)])),2))]],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100])) (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100]))),"Prelude","apply")) [Var ((Just (FuncType (TVar 100) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 100])),1)),Var ((Just (TVar 100),3))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TVar 0) (TVar 0))))),"Traversal","evalChildFamilies")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1])) (FuncType (TVar 0) (TVar 0))))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))) (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TVar 1) (TVar 1))) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TVar 0) (TVar 0))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0)))),"Traversal","mapChildren")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1])) (FuncType (TVar 1) (TVar 1)))),"Traversal","evalFamily")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1))) (FuncType (TVar 0) (TVar 1)))),"Traversal","fold")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1))) (FuncType (TVar 0) (TVar 1)))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1))),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1))) (FuncType (TVar 0) (TVar 1)))))),"Traversal","foldChildren")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1))),2)),Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1))),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3))) (FuncType (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 2))) (FuncType (TVar 0) (TVar 3)))))),"Traversal","foldChildren")) 5 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TVar 3))) (FuncType (FuncType (TVar 1) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 2]) (TVar 2))) (FuncType (TVar 0) (TVar 3)))))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2),(Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3))),3),(Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 2))),4),(Just (TVar 0),5)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3)))),"Prelude","apply")) [Var ((Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 3))),3)),Var ((Just (TVar 0),5))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TVar 2)) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]))),"Prelude","map")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 2))) (FuncType (TVar 1) (TVar 2)))),"Traversal","fold")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2)),Var ((Just (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 2]) (TVar 2))),4))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Traversal","children")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Var ((Just (TVar 0),5))]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","replaceChildrenIO")) 1 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))) (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Traversal","liftIO")) [],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)))),"Traversal","replaceChildren")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","mapChildrenIO")) 3 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","replaceChildrenIO")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Var ((Just (TVar 0),3))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]]))),"Prelude","mapIO")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Traversal","children")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Var ((Just (TVar 0),3))]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","mapFamilyIO")) 3 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),2),(Just (TVar 0),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))))),"Traversal","mapChildFamiliesIO")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1))],Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),2))],Var ((Just (TVar 0),3))],Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),2))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))))),"Traversal","mapChildFamiliesIO")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]))))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))) (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","mapChildrenIO")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])))),"Traversal","mapFamilyIO")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","evalFamilyIO")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 0]])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]])),2)] (Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","mapFamilyIO")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","evalFamilyIO.g.37")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 0]])),2)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]])) (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 202],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 202]) (TVar 202)])) (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])))),"Traversal","evalFamilyIO.g.37")) 3 Private (FuncType (FuncType (TVar 202) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 202]])) (FuncType (FuncType (TVar 202) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 202],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 202]) (TVar 202)])) (FuncType (TVar 202) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 202])))) (Rule [(Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]])),1),(Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 202],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 202]) (TVar 202)])),2),(Just (TVar 202),3)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]])) (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]]))),"Prelude","apply")) [Var ((Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]])),1)),Var ((Just (TVar 202),3))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202]) (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])) (FuncType (TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])))),"Prelude","maybe")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])),"Prelude","return")) [Var ((Just (TVar 202),3))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 202],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 202]) (TVar 202)])) (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])) (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])))),"Traversal","mapFamilyIO")) [Var ((Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 202],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 202]) (TVar 202)])),2)),Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]])) (FuncType (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 202],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 202]) (TVar 202)])) (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 202])))),"Traversal","evalFamilyIO.g.37")) [Var ((Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 202]])),1)),Var ((Just (FuncType (TVar 202) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 202],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 202]) (TVar 202)])),2))]]]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))))),"Traversal","evalChildFamiliesIO")) 2 Public (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Maybe")) [TVar 1]])) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]))))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))) (FuncType (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))))),"Prelude",".")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])))),"Traversal","mapChildrenIO")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Maybe") [TVar 1]])) (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])))),"Traversal","evalFamilyIO")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2))]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Traversal","concatFL")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]),"Prelude","[]")) []) (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))),Branch (Pattern ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]))),"Prelude",":")) [(Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude","apply")) [Var ((Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])),3)),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Traversal","concatFL")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])]),4)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),2))]])])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0])))),"Traversal","familyFL")) 3 Private (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0])))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1),(Just (TVar 0),2),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3)] (Comb ConsCall ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))),"Prelude",":")) [Var ((Just (TVar 0),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]))))),"Traversal","childFamiliesFL")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 0],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)])),1)),Var ((Just (TVar 0),2)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]),3))]])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))))),"Traversal","childFamiliesFL")) 4 Private (FuncType (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1],FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 1]))))) (Rule [(Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1),(Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2),(Just (TVar 0),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),4)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Traversal","concatFL")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])]))),"Prelude","map")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 1) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])))),"Traversal","familyFL")) [Var ((Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 1)])),2))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]))),"Traversal","children")) [Var ((Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Prelude","[]") [TVar 1],FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]) (TVar 0)])),1))],Var ((Just (TVar 0),3))]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TVar 1]),4))])),Func ((Nothing,Just (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Traversal","liftIO")) 2 Private (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 1]))) (Rule [(Just (FuncType (TVar 0) (TVar 1)),1),(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1]))),"Prelude",">>=")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),2)),Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])) (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 1) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 1])),"Prelude","return")) [],Var ((Just (FuncType (TVar 0) (TVar 1)),1))]]))] []
+ src/lib/Curry/Module/.curry/Traversal.fcy view
@@ -0,0 +1,1 @@+Prog "Traversal" ["Prelude"] [TypeSyn ("Traversal","Traversable") Public [0,1] (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])),TypeSyn ("Traversal","FunList") Private [0] (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))] [Func ("Traversal","noChildren") 1 Public (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (Rule [1] (Comb ConsCall ("Prelude","(,)") [Comb ConsCall ("Prelude","[]") [],Comb (FuncPartCall 1) ("Prelude","const") [Var 1]])),Func ("Traversal","children") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 1]))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","fst") [],Var 1])),Func ("Traversal","replaceChildren") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","snd") [],Var 1])),Func ("Traversal","mapChildren") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0)))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","replaceChildren") [Var 1],Var 3],Comb FuncCall ("Prelude","map") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","children") [Var 1],Var 3]]])),Func ("Traversal","family") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Comb FuncCall ("Traversal","familyFL") [Var 1,Var 2,Comb ConsCall ("Prelude","[]") []])),Func ("Traversal","childFamilies") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 1])))) (Rule [1,2,3] (Comb FuncCall ("Traversal","childFamiliesFL") [Var 1,Var 2,Var 3,Comb ConsCall ("Prelude","[]") []])),Func ("Traversal","mapFamily") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))) (Rule [1,2] (Comb FuncCall ("Prelude",".") [Var 2,Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","mapChildFamilies") [Var 1,Var 1],Var 2]])),Func ("Traversal","mapChildFamilies") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))))) (Rule [1,2] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Traversal","mapChildren") [Var 1],Comb (FuncPartCall 1) ("Traversal","mapFamily") [Var 2]])),Func ("Traversal","evalFamily") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 0])) (FuncType (TVar 0) (TVar 0)))) (Rule [1,2] (Comb FuncCall ("Traversal","mapFamily") [Var 1,Comb (FuncPartCall 1) ("Traversal","evalFamily.g.19") [Var 2,Var 1]])),Func ("Traversal","evalFamily.g.19") 3 Private (FuncType (FuncType (TVar 100) (TCons ("Prelude","Maybe") [TVar 100])) (FuncType (FuncType (TVar 100) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 100],FuncType (TCons ("Prelude","[]") [TVar 100]) (TVar 100)])) (FuncType (TVar 100) (TVar 100)))) (Rule [1,2,3] (Comb FuncCall ("Prelude","maybe") [Var 3,Comb FuncCall ("Traversal","mapFamily") [Var 2,Comb (FuncPartCall 1) ("Traversal","evalFamily.g.19") [Var 1,Var 2]],Comb FuncCall ("Prelude","apply") [Var 1,Var 3]])),Func ("Traversal","evalChildFamilies") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","Maybe") [TVar 1])) (FuncType (TVar 0) (TVar 0))))) (Rule [1,2] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Traversal","mapChildren") [Var 1],Comb (FuncPartCall 1) ("Traversal","evalFamily") [Var 2]])),Func ("Traversal","fold") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1))) (FuncType (TVar 0) (TVar 1)))) (Rule [1,2] (Comb (FuncPartCall 1) ("Traversal","foldChildren") [Var 1,Var 1,Var 2,Var 2])),Func ("Traversal","foldChildren") 5 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TVar 3))) (FuncType (FuncType (TVar 1) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TVar 2))) (FuncType (TVar 0) (TVar 3)))))) (Rule [1,2,3,4,5] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Var 3,Var 5],Comb FuncCall ("Prelude","map") [Comb FuncCall ("Traversal","fold") [Var 2,Var 4],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","children") [Var 1],Var 5]]])),Func ("Traversal","replaceChildrenIO") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 1]]) (TCons ("Prelude","IO") [TVar 0])))) (Rule [1] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Traversal","liftIO") [],Comb FuncCall ("Traversal","replaceChildren") [Var 1]])),Func ("Traversal","mapChildrenIO") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])))) (Rule [1,2,3] (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","replaceChildrenIO") [Var 1],Var 3],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","mapIO") [Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","children") [Var 1],Var 3]]])),Func ("Traversal","mapFamilyIO") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","mapChildFamiliesIO") [Var 1,Var 1],Var 2],Var 3],Var 2])),Func ("Traversal","mapChildFamiliesIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0]))))) (Rule [1,2] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Traversal","mapChildrenIO") [Var 1],Comb (FuncPartCall 2) ("Traversal","mapFamilyIO") [Var 2]])),Func ("Traversal","evalFamilyIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TVar 0]])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])))) (Rule [1,2] (Comb (FuncPartCall 1) ("Traversal","mapFamilyIO") [Var 1,Comb (FuncPartCall 1) ("Traversal","evalFamilyIO.g.37") [Var 2,Var 1]])),Func ("Traversal","evalFamilyIO.g.37") 3 Private (FuncType (FuncType (TVar 202) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TVar 202]])) (FuncType (FuncType (TVar 202) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 202],FuncType (TCons ("Prelude","[]") [TVar 202]) (TVar 202)])) (FuncType (TVar 202) (TCons ("Prelude","IO") [TVar 202])))) (Rule [1,2,3] (Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Prelude","apply") [Var 1,Var 3],Comb (FuncPartCall 1) ("Prelude","maybe") [Comb FuncCall ("Prelude","return") [Var 3],Comb (FuncPartCall 1) ("Traversal","mapFamilyIO") [Var 2,Comb (FuncPartCall 1) ("Traversal","evalFamilyIO.g.37") [Var 1,Var 2]]]])),Func ("Traversal","evalChildFamiliesIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TVar 1]])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0]))))) (Rule [1,2] (Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 2) ("Traversal","mapChildrenIO") [Var 1],Comb (FuncPartCall 1) ("Traversal","evalFamilyIO") [Var 2]])),Func ("Traversal","concatFL") 2 Private (FuncType (TCons ("Prelude","[]") [FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])]) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Var 2),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Prelude","apply") [Var 3,Comb FuncCall ("Traversal","concatFL") [Var 4,Var 2]])])),Func ("Traversal","familyFL") 3 Private (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0])))) (Rule [1,2,3] (Comb ConsCall ("Prelude",":") [Var 2,Comb FuncCall ("Traversal","childFamiliesFL") [Var 1,Var 1,Var 2,Var 3]])),Func ("Traversal","childFamiliesFL") 4 Private (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TCons ("Prelude","[]") [TVar 1]))))) (Rule [1,2,3,4] (Comb FuncCall ("Traversal","concatFL") [Comb FuncCall ("Prelude","map") [Comb (FuncPartCall 2) ("Traversal","familyFL") [Var 2],Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Traversal","children") [Var 1],Var 3]],Var 4])),Func ("Traversal","liftIO") 2 Private (FuncType (FuncType (TVar 0) (TVar 1)) (FuncType (TCons ("Prelude","IO") [TVar 0]) (TCons ("Prelude","IO") [TVar 1]))) (Rule [1,2] (Comb FuncCall ("Prelude",">>=") [Var 2,Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","return") [],Var 1]]))] []
+ src/lib/Curry/Module/.curry/Traversal.fint view
@@ -0,0 +1,1 @@+Prog "Traversal" ["Prelude"] [TypeSyn ("Traversal","Traversable") Public [0,1] (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])),TypeSyn ("Traversal","FunList") Private [0] (FuncType (TCons ("Prelude","[]") [TVar 0]) (TCons ("Prelude","[]") [TVar 0]))] [Func ("Traversal","noChildren") 1 Public (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (Rule [] (Var 0)),Func ("Traversal","children") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 1]))) (Rule [] (Var 0)),Func ("Traversal","replaceChildren") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)))) (Rule [] (Var 0)),Func ("Traversal","mapChildren") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0)))) (Rule [] (Var 0)),Func ("Traversal","family") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 0]))) (Rule [] (Var 0)),Func ("Traversal","childFamilies") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (TVar 0) (TCons ("Prelude","[]") [TVar 1])))) (Rule [] (Var 0)),Func ("Traversal","mapFamily") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TVar 0)) (FuncType (TVar 0) (TVar 0)))) (Rule [] (Var 0)),Func ("Traversal","mapChildFamilies") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TVar 1)) (FuncType (TVar 0) (TVar 0))))) (Rule [] (Var 0)),Func ("Traversal","evalFamily") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","Maybe") [TVar 0])) (FuncType (TVar 0) (TVar 0)))) (Rule [] (Var 0)),Func ("Traversal","evalChildFamilies") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","Maybe") [TVar 1])) (FuncType (TVar 0) (TVar 0))))) (Rule [] (Var 0)),Func ("Traversal","fold") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1))) (FuncType (TVar 0) (TVar 1)))) (Rule [] (Var 0)),Func ("Traversal","foldChildren") 5 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 0) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TVar 3))) (FuncType (FuncType (TVar 1) (FuncType (TCons ("Prelude","[]") [TVar 2]) (TVar 2))) (FuncType (TVar 0) (TVar 3)))))) (Rule [] (Var 0)),Func ("Traversal","replaceChildrenIO") 1 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (TVar 0) (FuncType (TCons ("Prelude","IO") [TCons ("Prelude","[]") [TVar 1]]) (TCons ("Prelude","IO") [TVar 0])))) (Rule [] (Var 0)),Func ("Traversal","mapChildrenIO") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])))) (Rule [] (Var 0)),Func ("Traversal","mapFamilyIO") 3 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])))) (Rule [] (Var 0)),Func ("Traversal","mapChildFamiliesIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","IO") [TVar 1])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0]))))) (Rule [] (Var 0)),Func ("Traversal","evalFamilyIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 0],FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)])) (FuncType (FuncType (TVar 0) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TVar 0]])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0])))) (Rule [] (Var 0)),Func ("Traversal","evalChildFamiliesIO") 2 Public (FuncType (FuncType (TVar 0) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 0)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","(,)") [TCons ("Prelude","[]") [TVar 1],FuncType (TCons ("Prelude","[]") [TVar 1]) (TVar 1)])) (FuncType (FuncType (TVar 1) (TCons ("Prelude","IO") [TCons ("Prelude","Maybe") [TVar 1]])) (FuncType (TVar 0) (TCons ("Prelude","IO") [TVar 0]))))) (Rule [] (Var 0))] []
+ src/lib/Curry/Module/.curry/Traversal.uacy view
@@ -0,0 +1,27 @@+CurryProg "Traversal"+ ["Prelude"]+ [CTypeSyn ("Traversal","Traversable") Public [(0,"a"),(1,"b")] (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","(,)") [CTCons ("Prelude","[]") [CTVar (1,"b")],CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))])),+  CTypeSyn ("Traversal","FunList") Private [(0,"a")] (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTCons ("Prelude","[]") [CTVar (0,"a")]))]+ [CFunc ("Traversal","childFamilies") 3 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb"),CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Traversal","childFamiliesFL")) (CVar (0,"tra"))) (CVar (1,"trb"))) (CVar (2,"x"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Traversal","childFamiliesFL") 4 Private (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Traversal","FunList") [CTVar (1,"b")])))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb"),CPVar (2,"x"),CPVar (3,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Traversal","concatFL")) (CApply (CApply (CSymbol ("Prelude","map")) (CApply (CSymbol ("Traversal","familyFL")) (CVar (1,"trb")))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tra"))) (CVar (2,"x"))))) (CVar (3,"xs")))] []]),+  CFunc ("Traversal","children") 1 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"tr")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","fst"))) (CVar (0,"tr")))] []]),+  CFunc ("Traversal","concatFL") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Traversal","FunList") [CTVar (0,"a")]]) (CTCons ("Traversal","FunList") [CTVar (0,"a")])) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"ys")] [(CSymbol ("Prelude","success"),CVar (0,"ys"))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"x"),CPVar (2,"xs")],CPVar (3,"ys")] [(CSymbol ("Prelude","success"),CApply (CVar (1,"x")) (CApply (CApply (CSymbol ("Traversal","concatFL")) (CVar (2,"xs"))) (CVar (3,"ys"))))] []]),+  CFunc ("Traversal","evalChildFamilies") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","Maybe") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildren")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","evalFamily")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","evalChildFamiliesIO") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTVar (1,"b")]])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildrenIO")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","evalFamilyIO")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","evalFamily") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Maybe") [CTVar (0,"a")])) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Traversal","mapFamily")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))] [CLocalFunc (CFunc ("Traversal","g") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Prelude","maybe")) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Traversal","mapFamily")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))) (CApply (CVar (1,"f")) (CVar (2,"x"))))] []]))]]),+  CFunc ("Traversal","evalFamilyIO") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTCons ("Prelude","Maybe") [CTVar (0,"a")]])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Traversal","mapFamilyIO")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))] [CLocalFunc (CFunc ("Traversal","g") 1 Private (CTCons ("Prelude","untyped") []) (CRules CFlex [CRule [CPVar (2,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CVar (1,"f")) (CVar (2,"a")))) (CApply (CApply (CSymbol ("Prelude","maybe")) (CApply (CSymbol ("Prelude","return")) (CVar (2,"a")))) (CApply (CApply (CSymbol ("Traversal","mapFamilyIO")) (CVar (0,"tr"))) (CSymbol ("Traversal","g")))))] []]))]]),+  CFunc ("Traversal","family") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Traversal","familyFL")) (CVar (0,"tr"))) (CVar (1,"x"))) (CSymbol ("Prelude","[]")))] []]),+  CFunc ("Traversal","familyFL") 3 Private (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CTVar (0,"a")) (CTCons ("Traversal","FunList") [CTVar (0,"a")]))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"x"),CPVar (2,"xs")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"x"))) (CApply (CApply (CApply (CApply (CSymbol ("Traversal","childFamiliesFL")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"x"))) (CVar (2,"xs"))))] []]),+  CFunc ("Traversal","fold") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"r")]) (CTVar (1,"r")))) (CFuncType (CTVar (0,"a")) (CTVar (1,"r"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CApply (CSymbol ("Traversal","foldChildren")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"f"))) (CVar (1,"f")))] []]),+  CFunc ("Traversal","foldChildren") 5 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"rb")]) (CTVar (3,"ra")))) (CFuncType (CFuncType (CTVar (1,"b")) (CFuncType (CTCons ("Prelude","[]") [CTVar (2,"rb")]) (CTVar (2,"rb")))) (CFuncType (CTVar (0,"a")) (CTVar (3,"ra"))))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb"),CPVar (2,"f"),CPVar (3,"g"),CPVar (4,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CVar (2,"f")) (CVar (4,"a"))) (CApply (CApply (CSymbol ("Prelude","map")) (CApply (CApply (CSymbol ("Traversal","fold")) (CVar (1,"trb"))) (CVar (3,"g")))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tra"))) (CVar (4,"a")))))] []]),+  CFunc ("Traversal","liftIO") 2 Private (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (1,"b"))) (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTCons ("Prelude","IO") [CTVar (1,"b")]))) (CRules CFlex [CRule [CPVar (0,"f"),CPVar (1,"ioa")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CVar (1,"ioa"))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CVar (0,"f"))))] []]),+  CFunc ("Traversal","mapChildFamilies") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildren")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","mapFamily")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","mapChildFamiliesIO") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTCons ("Traversal","Traversable") [CTVar (1,"b"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")]))))) (CRules CFlex [CRule [CPVar (0,"tra"),CPVar (1,"trb")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CApply (CSymbol ("Traversal","mapChildrenIO")) (CVar (0,"tra")))) (CApply (CSymbol ("Traversal","mapFamilyIO")) (CVar (1,"trb"))))] []]),+  CFunc ("Traversal","mapChildren") 3 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTVar (1,"b"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f"),CPVar (2,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Traversal","replaceChildren")) (CVar (0,"tr"))) (CVar (2,"x"))) (CApply (CApply (CSymbol ("Prelude","map")) (CVar (1,"f"))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tr"))) (CVar (2,"x")))))] []]),+  CFunc ("Traversal","mapChildrenIO") 3 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CFuncType (CTVar (1,"b")) (CTCons ("Prelude","IO") [CTVar (1,"b")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f"),CPVar (2,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CApply (CSymbol ("Traversal","replaceChildrenIO")) (CVar (0,"tr"))) (CVar (2,"a"))) (CApply (CApply (CSymbol ("Prelude","mapIO")) (CVar (1,"f"))) (CApply (CApply (CSymbol ("Traversal","children")) (CVar (0,"tr"))) (CVar (2,"a")))))] []]),+  CFunc ("Traversal","mapFamily") 2 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))) (CFuncType (CTVar (0,"a")) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CVar (1,"f"))) (CApply (CApply (CApply (CSymbol ("Traversal","mapChildFamilies")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"f"))))] []]),+  CFunc ("Traversal","mapFamilyIO") 3 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (0,"a")]) (CFuncType (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr"),CPVar (1,"f"),CPVar (2,"a")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CApply (CApply (CApply (CSymbol ("Traversal","mapChildFamiliesIO")) (CVar (0,"tr"))) (CVar (0,"tr"))) (CVar (1,"f"))) (CVar (2,"a")))) (CVar (1,"f")))] []]),+  CFunc ("Traversal","noChildren") 1 Public (CTCons ("Traversal","Traversable") [CTVar (0,"_"),CTVar (0,"_")]) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","(,)")) (CSymbol ("Prelude","[]"))) (CApply (CSymbol ("Prelude","const")) (CVar (0,"x"))))] []]),+  CFunc ("Traversal","replaceChildren") 1 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","[]") [CTVar (1,"b")]) (CTVar (0,"a"))))) (CRules CFlex [CRule [CPVar (0,"tr")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","snd"))) (CVar (0,"tr")))] []]),+  CFunc ("Traversal","replaceChildrenIO") 1 Public (CFuncType (CTCons ("Traversal","Traversable") [CTVar (0,"a"),CTVar (1,"b")]) (CFuncType (CTVar (0,"a")) (CFuncType (CTCons ("Prelude","IO") [CTCons ("Prelude","[]") [CTVar (1,"b")]]) (CTCons ("Prelude","IO") [CTVar (0,"a")])))) (CRules CFlex [CRule [CPVar (0,"tr")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Traversal","liftIO"))) (CApply (CSymbol ("Traversal","replaceChildren")) (CVar (0,"tr"))))] []])]+ []
+ src/lib/Curry/Module/.curry/Unsafe.acy view
@@ -0,0 +1,29 @@+CurryProg "Unsafe"+ ["Prelude","Char","Meta"]+ []+ [CFunc ("Unsafe","generateChoice") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CExternal "generateChoice"),+  CFunc ("Unsafe","identicalVar") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!")) (CApply (CApply (CSymbol ("Prelude","$!")) (CSymbol ("Unsafe","prim_identicalVar"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Unsafe","isVar") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"v")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Unsafe","unsafePerformIO")) (CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Meta","isFree")) (CVar (0,"v")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","either")) (CApply (CSymbol ("Prelude","const")) (CSymbol ("Prelude","True")))) (CApply (CSymbol ("Prelude","const")) (CSymbol ("Prelude","False")))))))] []]),+  CFunc ("Unsafe","nrOfChoices") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "nrOfChoices"),+  CFunc ("Unsafe","orsWithOrRef") 2 Public (CFuncType (CTCons ("Meta","OrRef") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a")))) (CExternal "orsWithOrRef"),+  CFunc ("Unsafe","prim_identicalVar") 2 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CExternal "prim_identicalVar"),+  CFunc ("Unsafe","prim_isVar") 1 Private (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") [])) (CExternal "prim_isVar"),+  CFunc ("Unsafe","prim_readsAnyQTerm") 1 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CExternal "prim_readsAnyQTerm"),+  CFunc ("Unsafe","prim_readsAnyUnqualifiedTerm") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CExternal "prim_readsAnyUnqualifiedTerm"),+  CFunc ("Unsafe","prim_showAnyQTerm") 1 Private (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "prim_showAnyQTerm"),+  CFunc ("Unsafe","prim_showAnyTerm") 1 Private (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "prim_showAnyTerm"),+  CFunc ("Unsafe","prim_unsafePerformIO") 1 Private (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTVar (0,"a"))) (CExternal "prim_unsafePerformIO"),+  CFunc ("Unsafe","readAnyQTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (1,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (1,"result")) (CApply (CSymbol ("Unsafe","readsAnyQTerm")) (CVar (0,"s"))) []]]),+  CFunc ("Unsafe","readAnyUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (2,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (3,"term"),CPVar (4,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (4,"tail")))) (CVar (3,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CVar (4,"tail"))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))),CBranch (CPVar (5,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (2,"result")) (CApply (CApply (CSymbol ("Unsafe","readsAnyUnqualifiedTerm")) (CVar (0,"prefixes"))) (CVar (1,"s"))) []]]),+  CFunc ("Unsafe","readsAnyQTerm") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Unsafe","prim_readsAnyQTerm"))) (CVar (0,"s")))] []]),+  CFunc ("Unsafe","readsAnyUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"prefix"),CPVar (2,"prefixes")],CPVar (3,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Unsafe","readsAnyUnqualifiedTermWithPrefixes")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"prefix"))) (CVar (2,"prefixes")))) (CVar (3,"s")))] []]),+  CFunc ("Unsafe","readsAnyUnqualifiedTermWithPrefixes") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]) (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"a"),CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]]]))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Unsafe","prim_readsAnyUnqualifiedTerm"))) (CVar (0,"prefixes")))) (CVar (1,"s")))] []]),+  CFunc ("Unsafe","showAnyExpression") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "showAnyExpression"),+  CFunc ("Unsafe","showAnyQExpression") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CExternal "showAnyQExpression"),+  CFunc ("Unsafe","showAnyQTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Unsafe","prim_showAnyQTerm"))) (CVar (0,"x")))] []]),+  CFunc ("Unsafe","showAnyTerm") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Unsafe","prim_showAnyTerm"))) (CVar (0,"x")))] []]),+  CFunc ("Unsafe","spawnConstraint") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CExternal "spawnConstraint"),+  CFunc ("Unsafe","trace") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","Char") []]) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Unsafe","unsafePerformIO")) (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putStr")) (CVar (0,"s")))) (CApply (CSymbol ("Prelude","return")) (CVar (1,"x")))))] []]),+  CFunc ("Unsafe","try") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Either") [CTVar (0,"a"),CTCons ("Prelude","(,)") [CTCons ("Meta","OrRef") [],CTCons ("Prelude","[]") [CTVar (0,"a")]]])) (CExternal "try"),+  CFunc ("Unsafe","unsafePerformIO") 1 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"act")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Unsafe","prim_unsafePerformIO"))) (CVar (0,"act")))] []])]+ []
+ src/lib/Curry/Module/.curry/Unsafe.cy view
@@ -0,0 +1,56 @@+Module "Unsafe"+(Just (Exporting (10,15) [(Export (QualIdent Nothing (Ident "unsafePerformIO" 0))),(Export (QualIdent Nothing (Ident "trace" 0))),(Export (QualIdent Nothing (Ident "spawnConstraint" 0))),(Export (QualIdent Nothing (Ident "isVar" 0))),(Export (QualIdent Nothing (Ident "identicalVar" 0))),(Export (QualIdent Nothing (Ident "showAnyTerm" 0))),(Export (QualIdent Nothing (Ident "showAnyQTerm" 0))),(Export (QualIdent Nothing (Ident "showAnyExpression" 0))),(Export (QualIdent Nothing (Ident "showAnyQExpression" 0))),(Export (QualIdent Nothing (Ident "readsAnyUnqualifiedTerm" 0))),(Export (QualIdent Nothing (Ident "readAnyUnqualifiedTerm" 0))),(Export (QualIdent Nothing (Ident "readsAnyQTerm" 0))),(Export (QualIdent Nothing (Ident "readAnyQTerm" 0))),(Export (QualIdent Nothing (Ident "generateChoice" 0))),(Export (QualIdent Nothing (Ident "OrRef" 0))),(Export (QualIdent Nothing (Ident "try" 0))),(Export (QualIdent Nothing (Ident "orsWithOrRef" 0))),(Export (QualIdent Nothing (Ident "nrOfChoices" 0)))]))+[(ImportDecl (1,1) "Prelude" False Nothing Nothing)+,(ImportDecl (18,1) "Char" False Nothing (Just (Importing (18,12) [(Import (Ident "isSpace" 0))])))+,(ImportDecl (19,1) "Meta" False Nothing Nothing)+,(TypeSig (22,1) [(Ident "unsafePerformIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))+,(FunctionDecl (23,1) (Ident "unsafePerformIO" 0) [(Equation (23,1) (FunLhs (Ident "unsafePerformIO" 0) [(VariablePattern (Ident "act" 2))]) (SimpleRhs (23,23) (InfixApply (Variable (QualIdent (Just "Unsafe") (Ident "prim_unsafePerformIO" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$#" 0))) (Variable (QualIdent Nothing (Ident "act" 2)))) []))])+,(TypeSig (25,1) [(Ident "prim_unsafePerformIO" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(VariableType (Ident "a" 0))]) (VariableType (Ident "a" 0))))+,(FlatExternalDecl (26,1) [(Ident "prim_unsafePerformIO" 0)])+,(TypeSig (30,1) [(Ident "trace" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))+,(FunctionDecl (31,1) (Ident "trace" 0) [(Equation (31,1) (FunLhs (Ident "trace" 0) [(VariablePattern (Ident "s" 4)),(VariablePattern (Ident "x" 4))]) (SimpleRhs (31,13) (Apply (Variable (QualIdent (Just "Unsafe") (Ident "unsafePerformIO" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Prelude") (Ident "putStr" 0))) (Variable (QualIdent Nothing (Ident "s" 4)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>" 0))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (Variable (QualIdent Nothing (Ident "x" 4))))))) []))])+,(TypeSig (44,1) [(Ident "spawnConstraint" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "Success" 0)) []) (ArrowType (VariableType (Ident "a" 0)) (VariableType (Ident "a" 0)))))+,(FlatExternalDecl (45,1) [(Ident "spawnConstraint" 0)])+,(TypeSig (49,1) [(Ident "isVar" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FunctionDecl (50,1) (Ident "isVar" 0) [(Equation (50,1) (FunLhs (Ident "isVar" 0) [(VariablePattern (Ident "v" 6))]) (SimpleRhs (50,11) (Apply (Variable (QualIdent (Just "Unsafe") (Ident "unsafePerformIO" 0))) (Paren (InfixApply (Apply (Variable (QualIdent (Just "Meta") (Ident "isFree" 0))) (Variable (QualIdent Nothing (Ident "v" 6)))) (InfixOp (QualIdent (Just "Prelude") (Ident ">>=" 0))) (InfixApply (Variable (QualIdent (Just "Prelude") (Ident "return" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "." 0))) (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "either" 0))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "True" 0)))))) (Paren (Apply (Variable (QualIdent (Just "Prelude") (Ident "const" 0))) (Constructor (QualIdent (Just "Prelude") (Ident "False" 0)))))))))) []))])+,(TypeSig (53,1) [(Ident "prim_isVar" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) [])))+,(FlatExternalDecl (54,1) [(Ident "prim_isVar" 0)])+,(TypeSig (62,1) [(Ident "identicalVar" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FunctionDecl (63,1) (Ident "identicalVar" 0) [(Equation (63,1) (FunLhs (Ident "identicalVar" 0) [(VariablePattern (Ident "x" 8)),(VariablePattern (Ident "y" 8))]) (SimpleRhs (63,20) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Unsafe") (Ident "prim_identicalVar" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!" 0))) (Variable (QualIdent Nothing (Ident "x" 8))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!" 0))) (Variable (QualIdent Nothing (Ident "y" 8)))) []))])+,(TypeSig (66,1) [(Ident "prim_identicalVar" 0)] (ArrowType (VariableType (Ident "a" 0)) (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Bool" 0)) []))))+,(FlatExternalDecl (67,1) [(Ident "prim_identicalVar" 0)])+,(TypeSig (78,1) [(Ident "showAnyTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (79,1) (Ident "showAnyTerm" 0) [(Equation (79,1) (FunLhs (Ident "showAnyTerm" 0) [(VariablePattern (Ident "x" 10))]) (SimpleRhs (79,17) (InfixApply (Variable (QualIdent (Just "Unsafe") (Ident "prim_showAnyTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!!" 0))) (Variable (QualIdent Nothing (Ident "x" 10)))) []))])+,(TypeSig (81,1) [(Ident "prim_showAnyTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (82,1) [(Ident "prim_showAnyTerm" 0)])+,(TypeSig (92,1) [(Ident "showAnyQTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FunctionDecl (93,1) (Ident "showAnyQTerm" 0) [(Equation (93,1) (FunLhs (Ident "showAnyQTerm" 0) [(VariablePattern (Ident "x" 12))]) (SimpleRhs (93,18) (InfixApply (Variable (QualIdent (Just "Unsafe") (Ident "prim_showAnyQTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$!!" 0))) (Variable (QualIdent Nothing (Ident "x" 12)))) []))])+,(TypeSig (95,1) [(Ident "prim_showAnyQTerm" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (96,1) [(Ident "prim_showAnyQTerm" 0)])+,(TypeSig (105,1) [(Ident "readsAnyUnqualifiedTerm" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FunctionDecl (106,1) (Ident "readsAnyUnqualifiedTerm" 0) [(Equation (106,1) (FunLhs (Ident "readsAnyUnqualifiedTerm" 0) [(ListPattern []),(VariablePattern (Ident "_" 15))]) (SimpleRhs (107,3) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "ReadShowTerm.readsAnyUnqualifiedTerm: list of module prefixes is empty"))) [])),(Equation (108,1) (FunLhs (Ident "readsAnyUnqualifiedTerm" 0) [(ParenPattern (InfixPattern (VariablePattern (Ident "prefix" 17)) (QualIdent Nothing (Ident ":" 0)) (VariablePattern (Ident "prefixes" 17)))),(VariablePattern (Ident "s" 17))]) (SimpleRhs (109,3) (Apply (Apply (Variable (QualIdent (Just "Unsafe") (Ident "readsAnyUnqualifiedTermWithPrefixes" 0))) (Paren (InfixApply (Variable (QualIdent Nothing (Ident "prefix" 17))) (InfixConstr (QualIdent Nothing (Ident ":" 0))) (Variable (QualIdent Nothing (Ident "prefixes" 17)))))) (Variable (QualIdent Nothing (Ident "s" 17)))) []))])+,(TypeSig (111,1) [(Ident "readsAnyUnqualifiedTermWithPrefixes" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FunctionDecl (112,1) (Ident "readsAnyUnqualifiedTermWithPrefixes" 0) [(Equation (112,1) (FunLhs (Ident "readsAnyUnqualifiedTermWithPrefixes" 0) [(VariablePattern (Ident "prefixes" 19)),(VariablePattern (Ident "s" 19))]) (SimpleRhs (113,3) (InfixApply (Paren (InfixApply (Variable (QualIdent (Just "Unsafe") (Ident "prim_readsAnyUnqualifiedTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "prefixes" 19))))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 19)))) []))])+,(TypeSig (115,1) [(Ident "prim_readsAnyUnqualifiedTerm" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])])))))+,(FlatExternalDecl (116,1) [(Ident "prim_readsAnyUnqualifiedTerm" 0)])+,(TypeSig (123,1) [(Ident "readAnyUnqualifiedTerm" 0)] (ArrowType (ListType (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])) (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0)))))+,(FunctionDecl (124,1) (Ident "readAnyUnqualifiedTerm" 0) [(Equation (124,1) (FunLhs (Ident "readAnyUnqualifiedTerm" 0) [(VariablePattern (Ident "prefixes" 21)),(VariablePattern (Ident "s" 21))]) (SimpleRhs (124,37) (Case (Variable (QualIdent Nothing (Ident "result" 22))) [(Alt (125,3) (ListPattern [(TuplePattern [(VariablePattern (Ident "term" 24)),(VariablePattern (Ident "tail" 24))])]) (SimpleRhs (126,9) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (Variable (QualIdent (Just "Char") (Ident "isSpace" 0)))) (Variable (QualIdent Nothing (Ident "tail" 24)))) (Variable (QualIdent Nothing (Ident "term" 24))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Paren (InfixApply (Literal (String "Unsafe.readAnyUnqualifiedTerm: no parse, unmatched string after term: ")) (InfixOp (QualIdent (Just "Prelude") (Ident "++" 0))) (Variable (QualIdent Nothing (Ident "tail" 24))))))) [])),(Alt (128,3) (ListPattern []) (SimpleRhs (128,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Unsafe.readAnyUnqualifiedTerm: no parse"))) [])),(Alt (129,3) (VariablePattern (Ident "_" 29)) (SimpleRhs (129,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Unsafe.readAnyUnqualifiedTerm: ambiguous parse"))) []))]) [(PatternDecl (130,8) (VariablePattern (Ident "result" 22)) (SimpleRhs (130,17) (Apply (Apply (Variable (QualIdent (Just "Unsafe") (Ident "readsAnyUnqualifiedTerm" 0))) (Variable (QualIdent Nothing (Ident "prefixes" 21)))) (Variable (QualIdent Nothing (Ident "s" 21)))) []))]))])+,(TypeSig (138,1) [(Ident "readsAnyQTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))))+,(FunctionDecl (139,1) (Ident "readsAnyQTerm" 0) [(Equation (139,1) (FunLhs (Ident "readsAnyQTerm" 0) [(VariablePattern (Ident "s" 31))]) (SimpleRhs (139,19) (InfixApply (Variable (QualIdent (Just "Unsafe") (Ident "prim_readsAnyQTerm" 0))) (InfixOp (QualIdent (Just "Prelude") (Ident "$##" 0))) (Variable (QualIdent Nothing (Ident "s" 31)))) []))])+,(TypeSig (141,1) [(Ident "prim_readsAnyQTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (ListType (TupleType [(VariableType (Ident "_" 0)),(ConstructorType (QualIdent Nothing (Ident "String" 0)) [])]))))+,(FlatExternalDecl (142,1) [(Ident "prim_readsAnyQTerm" 0)])+,(TypeSig (148,1) [(Ident "readAnyQTerm" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "String" 0)) []) (VariableType (Ident "_" 0))))+,(FunctionDecl (149,1) (Ident "readAnyQTerm" 0) [(Equation (149,1) (FunLhs (Ident "readAnyQTerm" 0) [(VariablePattern (Ident "s" 33))]) (SimpleRhs (149,18) (Case (Variable (QualIdent Nothing (Ident "result" 34))) [(Alt (150,3) (ListPattern [(TuplePattern [(VariablePattern (Ident "term" 36)),(VariablePattern (Ident "tail" 36))])]) (SimpleRhs (150,20) (IfThenElse (Apply (Apply (Variable (QualIdent (Just "Prelude") (Ident "all" 0))) (Variable (QualIdent (Just "Char") (Ident "isSpace" 0)))) (Variable (QualIdent Nothing (Ident "tail" 36)))) (Variable (QualIdent Nothing (Ident "term" 36))) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Unsafe.readAnyQTerm: no parse")))) [])),(Alt (152,3) (ListPattern []) (SimpleRhs (152,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Unsafe.readAnyQTerm: no parse"))) [])),(Alt (153,3) (VariablePattern (Ident "_" 41)) (SimpleRhs (153,10) (Apply (Variable (QualIdent (Just "Prelude") (Ident "error" 0))) (Literal (String "Unsafe.readAnyQTerm: ambiguous parse"))) []))]) [(PatternDecl (154,8) (VariablePattern (Ident "result" 34)) (SimpleRhs (154,17) (Apply (Variable (QualIdent (Just "Unsafe") (Ident "readsAnyQTerm" 0))) (Variable (QualIdent Nothing (Ident "s" 33)))) []))]))])+,(TypeSig (161,1) [(Ident "showAnyExpression" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (162,1) [(Ident "showAnyExpression" 0)])+,(TypeSig (168,1) [(Ident "showAnyQExpression" 0)] (ArrowType (VariableType (Ident "_" 0)) (ConstructorType (QualIdent Nothing (Ident "String" 0)) [])))+,(FlatExternalDecl (169,1) [(Ident "showAnyQExpression" 0)])+,(TypeSig (171,1) [(Ident "try" 0)] (ArrowType (VariableType (Ident "a" 0)) (ConstructorType (QualIdent Nothing (Ident "Either" 0)) [(VariableType (Ident "a" 0)),(TupleType [(ConstructorType (QualIdent Nothing (Ident "OrRef" 0)) []),(ListType (VariableType (Ident "a" 0)))])])))+,(FlatExternalDecl (172,1) [(Ident "try" 0)])+,(TypeSig (174,1) [(Ident "orsWithOrRef" 0)] (ArrowType (ConstructorType (QualIdent Nothing (Ident "OrRef" 0)) []) (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0)))))+,(FlatExternalDecl (175,1) [(Ident "orsWithOrRef" 0)])+,(TypeSig (177,1) [(Ident "generateChoice" 0)] (ArrowType (ListType (VariableType (Ident "a" 0))) (VariableType (Ident "a" 0))))+,(FlatExternalDecl (178,1) [(Ident "generateChoice" 0)])+,(TypeSig (180,1) [(Ident "nrOfChoices" 0)] (ConstructorType (QualIdent Nothing (Ident "IO" 0)) [(ConstructorType (QualIdent Nothing (Ident "Int" 0)) [])]))+,(FlatExternalDecl (181,1) [(Ident "nrOfChoices" 0)])+]
+ src/lib/Curry/Module/.curry/Unsafe.efc view
@@ -0,0 +1,1 @@+Prog "Unsafe" ["Char","Meta","Prelude"] [] [Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TVar 0)),"Unsafe","unsafePerformIO")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TVar 0)) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TVar 0))),"Prelude","$#")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TVar 0)),"Unsafe","prim_unsafePerformIO")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TVar 0)),"Unsafe","prim_unsafePerformIO")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","IO")) [TVar 0]) (TVar 0)) (External "Unsafe.prim_unsafePerformIO"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TVar 0) (TVar 0))),"Unsafe","trace")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (FuncType (TVar 0) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TVar 0)),"Unsafe","unsafePerformIO")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0]))),"Prelude",">>")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","()") []])),"Prelude","putStr")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))],Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TVar 0])),"Prelude","return")) [Var ((Just (TVar 0),2))]]])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Success") []) (FuncType (TVar 0) (TVar 0))),"Unsafe","spawnConstraint")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","Success")) []) (FuncType (TVar 0) (TVar 0))) (External "Unsafe.spawnConstraint"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Unsafe","isVar")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Unsafe","unsafePerformIO")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]]) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []]))),"Prelude",">>=")) [Comb FuncCall ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]])),"Meta","isFree")) [Var ((Just (TVar 0),1))],Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])) (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])))),"Prelude",".")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Bool") []])),"Prelude","return")) [],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TVar 0]) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","either")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","const")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []],Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Bool") []) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","const")) [Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []]]]]])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Unsafe","prim_isVar")) 1 Private (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) [])) (External "Unsafe.prim_isVar"),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Unsafe","identicalVar")) 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (Rule [(Just (TVar 0),1),(Just (TVar 0),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","$!")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))) (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") [])))),"Prelude","$!")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Unsafe","prim_identicalVar")) [],Var ((Just (TVar 0),1))],Var ((Just (TVar 0),2))])),Func ((Nothing,Just (FuncType (TVar 0) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Unsafe","prim_identicalVar")) 2 Private (FuncType (TVar 0) (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Bool")) []))) (External "Unsafe.prim_identicalVar"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","showAnyTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$!!")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","prim_showAnyTerm")) [],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","prim_showAnyTerm")) 1 Private (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "Unsafe.prim_showAnyTerm"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","showAnyQTerm")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (Rule [(Just (TVar 0),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])) (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","$!!")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","prim_showAnyQTerm")) [],Var ((Just (TVar 0),1))])),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","prim_showAnyQTerm")) 1 Private (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "Unsafe.prim_showAnyQTerm"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Unsafe","readsAnyUnqualifiedTerm")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Case  Flex (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'R'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'S'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'w'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'x'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Unsafe","readsAnyUnqualifiedTermWithPrefixes")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude",":")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),3)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Unsafe","readsAnyUnqualifiedTermWithPrefixes")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])))),"Prelude","$##")) [Comb (FuncPartCall 2) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Unsafe","prim_readsAnyUnqualifiedTerm")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1))],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Unsafe","prim_readsAnyUnqualifiedTerm")) 2 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]]))) (External "Unsafe.prim_readsAnyUnqualifiedTerm"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0))),"Unsafe","readAnyUnqualifiedTerm")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0))) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),3),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 95,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Unsafe","readsAnyUnqualifiedTerm")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),1)),Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),2))])] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),4))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 0),6),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),5))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isSpace")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),6))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude","++")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ','),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'c'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'h'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  't'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),7))]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),8),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),9)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 82,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'l'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]))),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Unsafe","readsAnyQTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude","$##")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Unsafe","prim_readsAnyQTerm")) [],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 0,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Unsafe","prim_readsAnyQTerm")) 1 Private (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","(,)")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]]])) (External "Unsafe.prim_readsAnyQTerm"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Unsafe","readAnyQTerm")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []]) (TVar 0)) (Rule [(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1)] (Let [((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2),Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 114,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]])),"Unsafe","readsAnyQTerm")) [Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),1))])] (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),2))) [Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),3))) [Branch (Pattern ((Nothing,Just (FuncType (TVar 0) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]))),"Prelude","(,)")) [(Just (TVar 0),5),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6)]) (Case  Rigid (Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),4))) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Case  Rigid (Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","apply")) [Comb FuncCall ((Nothing,Just (FuncType (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","Bool") []))),"Prelude","all")) [Comb (FuncPartCall 1) ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (TCons (Nothing,Nothing,"Prelude","Bool") [])),"Char","isSpace")) []],Var ((Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),6))]) [Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","True")) []) (Var ((Just (TVar 0),5))),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","Bool") []),"Prelude","False")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'Q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]),Branch (Pattern ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]))),"Prelude",":")) [(Just (TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]),7),(Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),8)]) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'Q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'b'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'i'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'g'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'u'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","(,)") [TVar 101,TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]]]),"Prelude","[]")) []) (Comb FuncCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TVar 0)),"Prelude","error")) [Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'U'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'f'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  '.'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'd'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'A'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'y'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'Q'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'T'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'm'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ':'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'n'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'o'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  ' '),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'p'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'a'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'r'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  's'),Comb ConsCall ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","Char") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]))),"Prelude",":")) [Lit (Charc  'e'),Comb ConsCall ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []]),"Prelude","[]")) []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]))),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","showAnyExpression")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "Unsafe.showAnyExpression"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","[]") [TCons (Nothing,Nothing,"Prelude","Char") []])),"Unsafe","showAnyQExpression")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","[]")) [TCons ((Nothing,Nothing,"Prelude","Char")) []])) (External "Unsafe.showAnyQExpression"),Func ((Nothing,Just (FuncType (TVar 0) (TCons (Nothing,Nothing,"Prelude","Either") [TVar 0,TCons (Nothing,Nothing,"Prelude","(,)") [TCons (Nothing,Nothing,"Meta","OrRef") [],TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]]])),"Unsafe","try")) 1 Public (FuncType (TVar 0) (TCons ((Nothing,Nothing,"Prelude","Either")) [TVar 0,TCons ((Nothing,Nothing,"Prelude","(,)")) [TCons ((Nothing,Nothing,"Meta","OrRef")) [],TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]]])) (External "Unsafe.try"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Meta","OrRef") []) (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0))),"Unsafe","orsWithOrRef")) 2 Public (FuncType (TCons ((Nothing,Nothing,"Meta","OrRef")) []) (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0))) (External "Unsafe.orsWithOrRef"),Func ((Nothing,Just (FuncType (TCons (Nothing,Nothing,"Prelude","[]") [TVar 0]) (TVar 0)),"Unsafe","generateChoice")) 1 Public (FuncType (TCons ((Nothing,Nothing,"Prelude","[]")) [TVar 0]) (TVar 0)) (External "Unsafe.generateChoice"),Func ((Nothing,Just (TCons (Nothing,Nothing,"Prelude","IO") [TCons (Nothing,Nothing,"Prelude","Int") []]),"Unsafe","nrOfChoices")) 0 Public (TCons ((Nothing,Nothing,"Prelude","IO")) [TCons ((Nothing,Nothing,"Prelude","Int")) []]) (External "Unsafe.nrOfChoices")] []
+ src/lib/Curry/Module/.curry/Unsafe.fcy view
@@ -0,0 +1,1 @@+Prog "Unsafe" ["Char","Meta","Prelude"] [] [Func ("Unsafe","unsafePerformIO") 1 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (TVar 0)) (Rule [1] (Comb FuncCall ("Prelude","$#") [Comb (FuncPartCall 1) ("Unsafe","prim_unsafePerformIO") [],Var 1])),Func ("Unsafe","prim_unsafePerformIO") 1 Private (FuncType (TCons ("Prelude","IO") [TVar 0]) (TVar 0)) (External "Unsafe.prim_unsafePerformIO"),Func ("Unsafe","trace") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (TVar 0))) (Rule [1,2] (Comb FuncCall ("Unsafe","unsafePerformIO") [Comb FuncCall ("Prelude",">>") [Comb FuncCall ("Prelude","putStr") [Var 1],Comb FuncCall ("Prelude","return") [Var 2]]])),Func ("Unsafe","spawnConstraint") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TVar 0) (TVar 0))) (External "Unsafe.spawnConstraint"),Func ("Unsafe","isVar") 1 Public (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (Rule [1] (Comb FuncCall ("Unsafe","unsafePerformIO") [Comb FuncCall ("Prelude",">>=") [Comb FuncCall ("Meta","isFree") [Var 1],Comb FuncCall ("Prelude",".") [Comb (FuncPartCall 1) ("Prelude","return") [],Comb (FuncPartCall 1) ("Prelude","either") [Comb (FuncPartCall 1) ("Prelude","const") [Comb ConsCall ("Prelude","True") []],Comb (FuncPartCall 1) ("Prelude","const") [Comb ConsCall ("Prelude","False") []]]]]])),Func ("Unsafe","prim_isVar") 1 Private (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (External "Unsafe.prim_isVar"),Func ("Unsafe","identicalVar") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (Rule [1,2] (Comb FuncCall ("Prelude","$!") [Comb FuncCall ("Prelude","$!") [Comb (FuncPartCall 2) ("Unsafe","prim_identicalVar") [],Var 1],Var 2])),Func ("Unsafe","prim_identicalVar") 2 Private (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (External "Unsafe.prim_identicalVar"),Func ("Unsafe","showAnyTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","$!!") [Comb (FuncPartCall 1) ("Unsafe","prim_showAnyTerm") [],Var 1])),Func ("Unsafe","prim_showAnyTerm") 1 Private (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Unsafe.prim_showAnyTerm"),Func ("Unsafe","showAnyQTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [1] (Comb FuncCall ("Prelude","$!!") [Comb (FuncPartCall 1) ("Unsafe","prim_showAnyQTerm") [],Var 1])),Func ("Unsafe","prim_showAnyQTerm") 1 Private (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Unsafe.prim_showAnyQTerm"),Func ("Unsafe","readsAnyUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [1,2] (Case  Flex (Var 1) [Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'R'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'S'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'w'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'x'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]),Branch (Pattern ("Prelude",":") [3,4]) (Comb FuncCall ("Unsafe","readsAnyUnqualifiedTermWithPrefixes") [Comb ConsCall ("Prelude",":") [Var 3,Var 4],Var 2])])),Func ("Unsafe","readsAnyUnqualifiedTermWithPrefixes") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [1,2] (Comb FuncCall ("Prelude","$##") [Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 2) ("Unsafe","prim_readsAnyUnqualifiedTerm") [],Var 1],Var 2])),Func ("Unsafe","prim_readsAnyUnqualifiedTerm") 2 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (External "Unsafe.prim_readsAnyUnqualifiedTerm"),Func ("Unsafe","readAnyUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0))) (Rule [1,2] (Let [(3,Comb FuncCall ("Unsafe","readsAnyUnqualifiedTerm") [Var 1,Var 2])] (Case  Rigid (Var 3) [Branch (Pattern ("Prelude",":") [4,5]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","(,)") [6,7]) (Case  Rigid (Var 5) [Branch (Pattern ("Prelude","[]") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","all") [Comb (FuncPartCall 1) ("Char","isSpace") []],Var 7]) [Branch (Pattern ("Prelude","True") []) (Var 6),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","error") [Comb FuncCall ("Prelude","++") [Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  ','),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'c'),Comb ConsCall ("Prelude",":") [Lit (Charc  'h'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  't'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]],Var 7]])]),Branch (Pattern ("Prelude",":") [8,9]) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'l'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]))),Func ("Unsafe","readsAnyQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [1] (Comb FuncCall ("Prelude","$##") [Comb (FuncPartCall 1) ("Unsafe","prim_readsAnyQTerm") [],Var 1])),Func ("Unsafe","prim_readsAnyQTerm") 1 Private (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (External "Unsafe.prim_readsAnyQTerm"),Func ("Unsafe","readAnyQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [1] (Let [(2,Comb FuncCall ("Unsafe","readsAnyQTerm") [Var 1])] (Case  Rigid (Var 2) [Branch (Pattern ("Prelude",":") [3,4]) (Case  Rigid (Var 3) [Branch (Pattern ("Prelude","(,)") [5,6]) (Case  Rigid (Var 4) [Branch (Pattern ("Prelude","[]") []) (Case  Rigid (Comb FuncCall ("Prelude","apply") [Comb FuncCall ("Prelude","all") [Comb (FuncPartCall 1) ("Char","isSpace") []],Var 6]) [Branch (Pattern ("Prelude","True") []) (Var 5),Branch (Pattern ("Prelude","False") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'Q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]),Branch (Pattern ("Prelude",":") [7,8]) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'Q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  'b'),Comb ConsCall ("Prelude",":") [Lit (Charc  'i'),Comb ConsCall ("Prelude",":") [Lit (Charc  'g'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  'u'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])])]),Branch (Pattern ("Prelude","[]") []) (Comb FuncCall ("Prelude","error") [Comb ConsCall ("Prelude",":") [Lit (Charc  'U'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'f'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  '.'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'd'),Comb ConsCall ("Prelude",":") [Lit (Charc  'A'),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'y'),Comb ConsCall ("Prelude",":") [Lit (Charc  'Q'),Comb ConsCall ("Prelude",":") [Lit (Charc  'T'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  'm'),Comb ConsCall ("Prelude",":") [Lit (Charc  ':'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'n'),Comb ConsCall ("Prelude",":") [Lit (Charc  'o'),Comb ConsCall ("Prelude",":") [Lit (Charc  ' '),Comb ConsCall ("Prelude",":") [Lit (Charc  'p'),Comb ConsCall ("Prelude",":") [Lit (Charc  'a'),Comb ConsCall ("Prelude",":") [Lit (Charc  'r'),Comb ConsCall ("Prelude",":") [Lit (Charc  's'),Comb ConsCall ("Prelude",":") [Lit (Charc  'e'),Comb ConsCall ("Prelude","[]") []]]]]]]]]]]]]]]]]]]]]]]]]]]]]]])]))),Func ("Unsafe","showAnyExpression") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Unsafe.showAnyExpression"),Func ("Unsafe","showAnyQExpression") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Unsafe.showAnyQExpression"),Func ("Unsafe","try") 1 Public (FuncType (TVar 0) (TCons ("Prelude","Either") [TVar 0,TCons ("Prelude","(,)") [TCons ("Meta","OrRef") [],TCons ("Prelude","[]") [TVar 0]]])) (External "Unsafe.try"),Func ("Unsafe","orsWithOrRef") 2 Public (FuncType (TCons ("Meta","OrRef") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0))) (External "Unsafe.orsWithOrRef"),Func ("Unsafe","generateChoice") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (External "Unsafe.generateChoice"),Func ("Unsafe","nrOfChoices") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "Unsafe.nrOfChoices")] []
+ src/lib/Curry/Module/.curry/Unsafe.fint view
@@ -0,0 +1,1 @@+Prog "Unsafe" ["Char","Meta","Prelude"] [Type ("Meta","OrRef") Public [] []] [Func ("Unsafe","unsafePerformIO") 1 Public (FuncType (TCons ("Prelude","IO") [TVar 0]) (TVar 0)) (Rule [] (Var 0)),Func ("Unsafe","trace") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (FuncType (TVar 0) (TVar 0))) (Rule [] (Var 0)),Func ("Unsafe","spawnConstraint") 2 Public (FuncType (TCons ("Prelude","Success") []) (FuncType (TVar 0) (TVar 0))) (External "Unsafe.spawnConstraint"),Func ("Unsafe","isVar") 1 Public (FuncType (TVar 0) (TCons ("Prelude","Bool") [])) (Rule [] (Var 0)),Func ("Unsafe","identicalVar") 2 Public (FuncType (TVar 0) (FuncType (TVar 0) (TCons ("Prelude","Bool") []))) (Rule [] (Var 0)),Func ("Unsafe","showAnyTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Unsafe","showAnyQTerm") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (Rule [] (Var 0)),Func ("Unsafe","readsAnyUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]]))) (Rule [] (Var 0)),Func ("Unsafe","readAnyUnqualifiedTerm") 2 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]) (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0))) (Rule [] (Var 0)),Func ("Unsafe","readsAnyQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TCons ("Prelude","[]") [TCons ("Prelude","(,)") [TVar 0,TCons ("Prelude","[]") [TCons ("Prelude","Char") []]]])) (Rule [] (Var 0)),Func ("Unsafe","readAnyQTerm") 1 Public (FuncType (TCons ("Prelude","[]") [TCons ("Prelude","Char") []]) (TVar 0)) (Rule [] (Var 0)),Func ("Unsafe","showAnyExpression") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Unsafe.showAnyExpression"),Func ("Unsafe","showAnyQExpression") 1 Public (FuncType (TVar 0) (TCons ("Prelude","[]") [TCons ("Prelude","Char") []])) (External "Unsafe.showAnyQExpression"),Func ("Unsafe","try") 1 Public (FuncType (TVar 0) (TCons ("Prelude","Either") [TVar 0,TCons ("Prelude","(,)") [TCons ("Meta","OrRef") [],TCons ("Prelude","[]") [TVar 0]]])) (External "Unsafe.try"),Func ("Unsafe","orsWithOrRef") 2 Public (FuncType (TCons ("Meta","OrRef") []) (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0))) (External "Unsafe.orsWithOrRef"),Func ("Unsafe","generateChoice") 1 Public (FuncType (TCons ("Prelude","[]") [TVar 0]) (TVar 0)) (External "Unsafe.generateChoice"),Func ("Unsafe","nrOfChoices") 0 Public (TCons ("Prelude","IO") [TCons ("Prelude","Int") []]) (External "Unsafe.nrOfChoices")] []
+ src/lib/Curry/Module/.curry/Unsafe.uacy view
@@ -0,0 +1,29 @@+CurryProg "Unsafe"+ ["Prelude","Char","Meta"]+ []+ [CFunc ("Unsafe","generateChoice") 1 Public (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a"))) (CExternal "generateChoice"),+  CFunc ("Unsafe","identicalVar") 2 Public (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CRules CFlex [CRule [CPVar (0,"x"),CPVar (1,"y")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!")) (CApply (CApply (CSymbol ("Prelude","$!")) (CSymbol ("Unsafe","prim_identicalVar"))) (CVar (0,"x")))) (CVar (1,"y")))] []]),+  CFunc ("Unsafe","isVar") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","Bool") [])) (CRules CFlex [CRule [CPVar (0,"v")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Unsafe","unsafePerformIO")) (CApply (CApply (CSymbol ("Prelude",">>=")) (CApply (CSymbol ("Meta","isFree")) (CVar (0,"v")))) (CApply (CApply (CSymbol ("Prelude",".")) (CSymbol ("Prelude","return"))) (CApply (CApply (CSymbol ("Prelude","either")) (CApply (CSymbol ("Prelude","const")) (CSymbol ("Prelude","True")))) (CApply (CSymbol ("Prelude","const")) (CSymbol ("Prelude","False")))))))] []]),+  CFunc ("Unsafe","nrOfChoices") 0 Public (CTCons ("Prelude","IO") [CTCons ("Prelude","Int") []]) (CExternal "nrOfChoices"),+  CFunc ("Unsafe","orsWithOrRef") 2 Public (CFuncType (CTCons ("Meta","OrRef") []) (CFuncType (CTCons ("Prelude","[]") [CTVar (0,"a")]) (CTVar (0,"a")))) (CExternal "orsWithOrRef"),+  CFunc ("Unsafe","prim_identicalVar") 2 Private (CFuncType (CTVar (0,"a")) (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Bool") []))) (CExternal "prim_identicalVar"),+  CFunc ("Unsafe","prim_isVar") 1 Private (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","Bool") [])) (CExternal "prim_isVar"),+  CFunc ("Unsafe","prim_readsAnyQTerm") 1 Private (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]])) (CExternal "prim_readsAnyQTerm"),+  CFunc ("Unsafe","prim_readsAnyUnqualifiedTerm") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]]))) (CExternal "prim_readsAnyUnqualifiedTerm"),+  CFunc ("Unsafe","prim_showAnyQTerm") 1 Private (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "prim_showAnyQTerm"),+  CFunc ("Unsafe","prim_showAnyTerm") 1 Private (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "prim_showAnyTerm"),+  CFunc ("Unsafe","prim_unsafePerformIO") 1 Private (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTVar (0,"a"))) (CExternal "prim_unsafePerformIO"),+  CFunc ("Unsafe","readAnyQTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_"))) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (1,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (2,"term"),CPVar (3,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (3,"tail")))) (CVar (2,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))),CBranch (CPVar (4,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'Q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (1,"result")) (CApply (CSymbol ("Unsafe","readsAnyQTerm")) (CVar (0,"s"))) []]]),+  CFunc ("Unsafe","readAnyUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTVar (0,"_")))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CCase (CVar (2,"result")) [CBranch (CPComb ("Prelude",":") [CPComb ("Prelude","(,)") [CPVar (3,"term"),CPVar (4,"tail")],CPComb ("Prelude","[]") []]) (CApply (CApply (CApply (CSymbol ("Prelude","if_then_else")) (CApply (CApply (CSymbol ("Prelude","all")) (CSymbol ("Char","isSpace"))) (CVar (4,"tail")))) (CVar (3,"term"))) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude","++")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ','))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'c'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CSymbol ("Prelude","[]"))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))) (CVar (4,"tail"))))),CBranch (CPComb ("Prelude","[]") []) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))),CBranch (CPVar (5,"_")) (CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'b'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'g'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))])] [CLocalPat (CPVar (2,"result")) (CApply (CApply (CSymbol ("Unsafe","readsAnyUnqualifiedTerm")) (CVar (0,"prefixes"))) (CVar (1,"s"))) []]]),+  CFunc ("Unsafe","readsAnyQTerm") 1 Public (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]])) (CRules CFlex [CRule [CPVar (0,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Unsafe","prim_readsAnyQTerm"))) (CVar (0,"s")))] []]),+  CFunc ("Unsafe","readsAnyUnqualifiedTerm") 2 Public (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]]))) (CRules CFlex [CRule [CPComb ("Prelude","[]") [],CPVar (0,"_")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Prelude","error")) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'R'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'S'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'h'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'w'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc '.'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'A'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'U'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'n'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'q'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'a'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'T'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ':'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'o'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'd'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'u'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'l'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'r'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'f'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'x'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'i'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 's'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc ' '))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'e'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'm'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'p'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 't'))) (CApply (CApply (CSymbol ("Prelude",":")) (CLit (CCharc 'y'))) (CSymbol ("Prelude","[]")))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))))] [],CRule [CPComb ("Prelude",":") [CPVar (1,"prefix"),CPVar (2,"prefixes")],CPVar (3,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Unsafe","readsAnyUnqualifiedTermWithPrefixes")) (CApply (CApply (CSymbol ("Prelude",":")) (CVar (1,"prefix"))) (CVar (2,"prefixes")))) (CVar (3,"s")))] []]),+  CFunc ("Unsafe","readsAnyUnqualifiedTermWithPrefixes") 2 Private (CFuncType (CTCons ("Prelude","[]") [CTCons ("Prelude","String") []]) (CFuncType (CTCons ("Prelude","String") []) (CTCons ("Prelude","[]") [CTCons ("Prelude","(,)") [CTVar (0,"_"),CTCons ("Prelude","String") []]]))) (CRules CFlex [CRule [CPVar (0,"prefixes"),CPVar (1,"s")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$##")) (CApply (CApply (CSymbol ("Prelude","$##")) (CSymbol ("Unsafe","prim_readsAnyUnqualifiedTerm"))) (CVar (0,"prefixes")))) (CVar (1,"s")))] []]),+  CFunc ("Unsafe","showAnyExpression") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "showAnyExpression"),+  CFunc ("Unsafe","showAnyQExpression") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CExternal "showAnyQExpression"),+  CFunc ("Unsafe","showAnyQTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Unsafe","prim_showAnyQTerm"))) (CVar (0,"x")))] []]),+  CFunc ("Unsafe","showAnyTerm") 1 Public (CFuncType (CTVar (0,"_")) (CTCons ("Prelude","String") [])) (CRules CFlex [CRule [CPVar (0,"x")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$!!")) (CSymbol ("Unsafe","prim_showAnyTerm"))) (CVar (0,"x")))] []]),+  CFunc ("Unsafe","spawnConstraint") 2 Public (CFuncType (CTCons ("Prelude","Success") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CExternal "spawnConstraint"),+  CFunc ("Unsafe","trace") 2 Public (CFuncType (CTCons ("Prelude","String") []) (CFuncType (CTVar (0,"a")) (CTVar (0,"a")))) (CRules CFlex [CRule [CPVar (0,"s"),CPVar (1,"x")] [(CSymbol ("Prelude","success"),CApply (CSymbol ("Unsafe","unsafePerformIO")) (CApply (CApply (CSymbol ("Prelude",">>")) (CApply (CSymbol ("Prelude","putStr")) (CVar (0,"s")))) (CApply (CSymbol ("Prelude","return")) (CVar (1,"x")))))] []]),+  CFunc ("Unsafe","try") 1 Public (CFuncType (CTVar (0,"a")) (CTCons ("Prelude","Either") [CTVar (0,"a"),CTCons ("Prelude","(,)") [CTCons ("Meta","OrRef") [],CTCons ("Prelude","[]") [CTVar (0,"a")]]])) (CExternal "try"),+  CFunc ("Unsafe","unsafePerformIO") 1 Public (CFuncType (CTCons ("Prelude","IO") [CTVar (0,"a")]) (CTVar (0,"a"))) (CRules CFlex [CRule [CPVar (0,"act")] [(CSymbol ("Prelude","success"),CApply (CApply (CSymbol ("Prelude","$#")) (CSymbol ("Unsafe","prim_unsafePerformIO"))) (CVar (0,"act")))] []])]+ []
+ src/lib/Curry/Module/AnsiCodes.curry view
@@ -0,0 +1,122 @@+------------------------------------------------------------------------------+--- Library for formatted output on terminals+---+--- Information on ANSI Codes can be found at +--- http://www.dee.ufcg.edu.br/~rrbrandt/tools/ansi.html+---+--- @author Sebastian Fischer+------------------------------------------------------------------------------++module AnsiCodes(++  -- exported functions for cursor movement+  cursorPos, cursorHome,+  cursorUp, cursorDown, cursorFwd, cursorBack,+  saveCursor, restoreCursor,++  -- exported functions for graphics control+  clear, eraseLine,++  -- exported functions for formatted output+  bold, underline, revColors, concealed,+  black, red, green, yellow, blue, cyan, magenta, white,+  bgBlack, bgRed, bgGreen, bgYellow, bgBlue, bgCyan, bgMagenta, bgWhite,++  -- exported functions for string operations+  ansiLength++  )  where++import Char+import List++-- escape character+esc = chr 27+++--- The functions for cursor movement++cmd s = esc:"[" ++ s++--- move cursor to position+cursorPos r c = cmd (show r ++ ";" ++ show c ++ "H")++--- move cursor to home position+cursorHome = cmd "H"++moveCursor :: String -> String -> String+moveCursor s n = cmd (show n ++ s)++--- move cursor n lines up+cursorUp = moveCursor "A"++--- move cursor n lines down+cursorDown = moveCursor "B"++--- move cursor n columns forward+cursorFwd = moveCursor "C"++--- move cursor n columns backward+cursorBack = moveCursor "D"++--- save cursor position+saveCursor = cmd "s"++--- restore saved cursor position+restoreCursor = cmd "u"+++--- The functions for controlling graphics++--- clear screen+clear = cmd "2J"++--- erase line+eraseLine = cmd "K"+++mode n s = cmd (show n ++ "m" ++ s ++ if isSuffixOf end s then "" else end)+ where+  end = cmd "0m"++--isSuffixOf s l = [] /= findall (\p -> p ++ s =:= l)+isSuffixOf s = isPrefixOf (reverse s) . reverse+++--- format text++bold      = mode 1+underline = mode 4+revColors = mode 7+concealed = mode 8+black     = mode 30+red       = mode 31+green     = mode 32+yellow    = mode 33+blue      = mode 34+magenta   = mode 35+cyan      = mode 36+white     = mode 37+bgBlack   = mode 40+bgRed     = mode 41+bgGreen   = mode 42+bgYellow  = mode 43+bgBlue    = mode 44+bgMagenta = mode 45+bgCyan    = mode 46+bgWhite   = mode 47+++-- functions for string operations++ansiLength :: String -> Int+ansiLength s = aux s (length s)+ where+  aux [] n = n+  aux (c:cs) n | c==esc && isDigit (cs!!2)+               = aux (tail (tail (tail (tail cs)))) (n-5)+               | c==esc  =  aux (tail (tail (tail cs))) (n-4)+               | otherwise  = aux cs n++------------------------------------------------------------------------------+
+ src/lib/Curry/Module/Array.curry view
@@ -0,0 +1,170 @@+--- Implementation of Arrays with Braun Trees. Conceptually, Braun trees+--- are always infinite. Consequently, there is no test on emptiness.+--- @authors {bbr, fhu}@informatik.uni-kiel.de++module Array +  (Array,++   emptyErrorArray, emptyDefaultArray,+   listToDefaultArray,listToErrorArray,++   (//), update, applyAt,++   (!),++   combine, combineSimilar,++   foldArray,arrayToList)++  where +++import Integer++infixl 9  !, //++data Array b = Array (Int -> b) (Entry b)++data Entry b = Entry b (Entry b) (Entry b) | Empty+++--- Creates an empty array which generates errors for non-initialized+--- indexes.+emptyErrorArray :: Array b+emptyErrorArray = emptyDefaultArray errorArray ++errorArray :: Int -> _+errorArray idx =  error ("Array index "++show idx++" not initialized")++--- Creates an empty array, call given function for non-initialized+--- indexes.+--- @param default - function to call for each non-initialized index+emptyDefaultArray :: (Int -> b) -> Array b+emptyDefaultArray default = Array default Empty++--- Inserts a list of entries into an array.+--- @param array - array to modify+--- @param modifications - list of new (indexes,entries)+--- If an index in the list was already initialized, the old value+--- will be overwritten. Likewise the last entry with a given index+--- will be contained in the result array.+(//) :: Array b -> [(Int,b)] -> Array b+Array default array // modifications = +  Array default +    (foldr (\ (n,v) a -> at (default n) a n (const v)) array modifications)++--- Inserts a new entry into an array.+--- @param array - array to modify+--- @param idx - index of update+--- @param val - value to update at index idx+--- Entries already initialized will be overwritten.+update :: Array b -> Int -> b -> Array b+update (Array default a) i v = +  Array default (at (default i) a i (const v))++--- Applies a function to an element.+--- @param array - array to modify+--- @param idx - index of update+--- @param fun - function to apply on element at index idx++applyAt :: Array b -> Int -> (b->b) -> Array b+applyAt (Array default a) n f = Array default (at (default n) a n f)+++at :: b -> Entry b -> Int -> (b -> b) -> Entry b+at default Empty n f +  | n==0      = Entry (f default) Empty Empty+  | odd n     = Entry default (at default Empty (n `div` 2) f) Empty+  | otherwise = Entry default Empty (at default Empty (n `div` 2 - 1) f) +at default (Entry v al ar) n f+  | n==0      = Entry (f v) al ar+  | odd n     = Entry v (at default al (n `div` 2) f) ar+  | otherwise = Entry v al (at default ar (n `div` 2 - 1) f)+++--- Yields the value at a given position.+--- @param a - array to look up in+--- @param n - index, where to look +(!) :: Array b -> Int -> b+Array default array ! i = from (default i) array i++from :: a -> Entry a -> Int -> a+from default Empty _ = default+from default (Entry v al ar) n +  | n==0      = v+  | odd n     = from default al (n `div` 2)+  | otherwise = from default ar (n `div` 2 - 1)+++split :: [a] -> ([a],[a])+split [] = ([],[])+split [x] = ([x],[])+split (x:y:xys) = let (xs,ys) = split xys in+                    (x:xs,y:ys)++--- Creates a default array from a list of entries.+--- @param def - default funtion for non-initialized indexes+--- @param xs - list of entries+listToDefaultArray ::  (Int -> b) -> [b] -> Array b+listToDefaultArray def = Array def . listToArray++--- Creates an error array from a list of entries.+--- @param xs - list of entries+listToErrorArray :: [b] -> Array b+listToErrorArray = listToDefaultArray errorArray +++listToArray :: [b] -> Entry b+listToArray [] = Empty+listToArray (x:xs) = let (ys,zs) = split xs in+                       Entry x (listToArray ys)+                               (listToArray zs)+++--- combine two arbitrary arrays++combine :: (a -> b -> c) -> Array a -> Array b -> Array c+combine f (Array def1 a1) (Array def2 a2) = +  Array (\i -> f (def1 i) (def2 i)) (comb f def1 def2 a1 a2 0 1)++comb :: (a -> b -> c) -> (Int -> a) -> (Int -> b) +     -> Entry a -> Entry b -> Int -> Int -> Entry c+comb _ _ _ Empty Empty _ _ = Empty+comb f def1 def2 (Entry x xl xr) Empty b o = +  Entry (f x (def2 (b+o-1))) +        (comb f def1 def2 xl Empty (2*b) o)+        (comb f def1 def2 xr Empty (2*b) (o+b))+comb f def1 def2 Empty (Entry y yl yr) b o = +  Entry (f (def1 (b+o-1)) y) +        (comb f def1 def2 Empty yl (2*b) o)+        (comb f def1 def2 Empty yr (2*b) (o+b))+comb f def1 def2 (Entry x xl xr) (Entry y yl yr) b o = +  Entry (f x y) +        (comb f def1 def2 xl yl (2*b) o)+        (comb f def1 def2 xr yr (2*b) (o+b))++++--- the combination of two arrays with identical default function+--- and a combinator which is neutral in the default +--- can be implemented much more efficient++combineSimilar :: (a -> a -> a) -> Array a -> Array a -> Array a+combineSimilar f (Array def a1) (Array _ a2) =  Array def (combSim f a1 a2)++combSim :: (a -> a -> a) -> Entry a -> Entry a -> Entry a+combSim _ Empty a2 = a2+combSim _ a1@(Entry _ _ _) Empty = a1+combSim f (Entry x xl xr) (Entry y yl yr) = +  Entry (f x y) (combSim f xl yl) (combSim f xr yr)+++foldArray :: b -> (a -> b -> b -> b) -> Array a -> b+foldArray emp ent (Array _ es) = foldEntries emp ent es++foldEntries emp _ Empty = emp+foldEntries emp ent (Entry x a1 a2) = +  ent x (foldEntries emp ent a1) (foldEntries emp ent a2)++arrayToList :: Array a -> [a]+arrayToList = foldArray [] (\ x ys zs -> x : ys ++ zs)
+ src/lib/Curry/Module/Assertion.curry view
@@ -0,0 +1,188 @@+------------------------------------------------------------------------------+--- This module defines the datatype and operations for the+--- Curry module tester "currytest".+---+--- @author Michael Hanus, Bernd Brassel+--- @version July 2006+------------------------------------------------------------------------------++module Assertion(Assertion(..), -- for writing test cases+                 -- the remaining entities are only used by the test tool:+                 checkAssertion,+                 seqStrActions,writeAssertResult,+                 ProtocolMsg(..),+                 showTestMod,showTestCase,showTestEnd,showTestCompileError) where++import List((\\))+import IO++infixl 1 `seqStrActions`++--- Datatype for defining test cases.+--- @cons AssertTrue   s b     - assert (with name s) that b must be true+--- @cons AssertEqual  s e1 e2 - assert (with name s) that e1 and e2 must+---                              be equal (w.r.t. ==)+--- @cons AssertValues s e vs  - assert (with name s) that vs is the multiset+---                              of all values of e (i.e., all values of e are+---                              compared with the elements in vs w.r.t. ==)+--- @cons AssertSolutions s c vs - assert (with name s) that constraint+---   abstraction c has the multiset of solutions vs+---   (i.e., the solutions of c are compared with the elements in vs w.r.t. ==)+--- @cons AssertIO     s a r   - assert (with name s) that I/O action a+---                              yields the result value r+--- @cons AssertEqualIO s a1 a2 - assert (with name s) that I/O actions a1 and+---                               a2 yield equal (w.r.t. ==) results+data Assertion a = AssertTrue      String Bool+                 | AssertEqual     String a a+                 | AssertValues    String a [a]+                 | AssertSolutions String (a->Success) [a]+                 | AssertIO        String (IO a) a+                 | AssertEqualIO   String (IO a) (IO a)+++--- Combines two actions and combines their results.+--- Used by the currytest tool.+seqStrActions :: IO (String,Bool) -> IO (String,Bool) -> IO (String,Bool)+seqStrActions a1 a2 =+  do (s1,b1) <- a1+     (s2,b2) <- a2+     return (s1++s2,b1&&b2)++--- Executes and checks an assertion, and process the result+--- by an I/O action.+--- Used by the currytest tool.+--- @param protocol - an action to be applied after test execution+--- @param assertion - an assertion to be tested+--- @return a protocol string and a flag whether the test was successful+checkAssertion :: ((String,Bool) -> IO (String,Bool)) -> Assertion _+                                                      -> IO (String,Bool)+checkAssertion prot (AssertTrue name cond) =+  catchFail (checkAssertTrue name cond)+            (return ("FAILURE of "++name++": no solution or error\n",False))+   >>= prot+checkAssertion prot (AssertEqual name call result) =+  catchFail (checkAssertEqual name call result)+            (return ("FAILURE of "++name++": no solution or error\n",False))+   >>= prot+checkAssertion prot (AssertValues name expr results) =+  catchFail (checkAssertValues name expr results)+            (return ("FAILURE of "++name++": no solution or error\n",False))+   >>= prot+checkAssertion prot (AssertSolutions name constr results) =+  catchFail (checkAssertSolutions name constr results)+            (return ("FAILURE of "++name++": no solution or error\n",False))+   >>= prot+checkAssertion prot (AssertIO name action result) =+  catchFail (checkAssertIO name action result)+            (return ("FAILURE of "++name++": no solution or error\n",False))+   >>= prot+checkAssertion prot (AssertEqualIO name action1 action2) =+  catchFail (checkAssertEqualIO name action1 action2)+            (return ("FAILURE of "++name++": no solution or error\n",False))+   >>= prot++-- Checks Boolean assertion.+checkAssertTrue :: String -> Bool -> IO (String,Bool)+checkAssertTrue name cond =+  if cond+    then return ("OK: "++name++"\n",True)+    else return ("FAILURE of "++name++": assertion not satisfied\n",False)++-- Checks equality assertion.+checkAssertEqual :: String -> a -> a -> IO (String,Bool)+checkAssertEqual name call result = do+  let r = call+  if r==result+   then return ("OK: "++name++"\n",True)+   else return ("FAILURE of "++name++": equality assertion not satisfied:\n"+++                "Computed answer: "++show r++"\n"+++                "Expected answer: "++show result++"\n",False)++-- Checks all values assertion.+checkAssertValues :: String -> a -> [a] -> IO (String,Bool)+checkAssertValues name call results = do+  st <- getSearchTree call +  let rs = allValuesB st+  if null (rs \\ results) && null (results \\ rs)+   then return ("OK: "++name++"\n",True)+   else return ("FAILURE of "++name++": values assertion not satisfied:\n"+++                "Computed values: "++show rs++"\n"+++                "Expected values: "++show results++"\n",False)++-- Checks all solutions of a constraint abstraction.+checkAssertSolutions :: String -> (a->Success) -> [a] -> IO (String,Bool)+checkAssertSolutions name constr results = do+  st <- getSearchTree (let x free in (x,constr x)) +  let rs = map fst (allValuesB st)+  if null (rs \\ results) && null (results \\ rs)+   then return ("OK: "++name++"\n",True)+   else return ("FAILURE of "++name++": solutions assertion not satisfied:\n"+++                "Computed values: "++show rs++"\n"+++                "Expected values: "++show results++"\n",False)++-- Checks an IO assertion.+checkAssertIO :: String -> IO a -> a -> IO (String,Bool)+checkAssertIO name action result = do+  r <- action+  if r==result+    then return ("OK: "++name++"\n",True)+    else return ("FAILURE of "++name++": IO assertion not satisfied:\n"+++                 "Computed answer: "++show r++"\n"+++                 "Expected answer: "++show result++"\n\n",False)++-- Checks equality of results of two IO assertions.+checkAssertEqualIO :: String -> IO a -> IO a -> IO (String,Bool)+checkAssertEqualIO name action1 action2 = do+  r1 <- action1+  r2 <- action2+  if r1==r2+    then return ("OK: "++name++"\n",True)+    else return ("FAILURE of "++name++": IO equality assertion not satisfied:\n"+++                 "Computed answer 1: "++show r1++"\n"+++                 "Computed answer 2: "++show r2++"\n\n",False)++--- Writes the results of assertion checking into a file and stdout,+--- if the results are non-empty.+--- Used by the currytest tool.+writeAssertResult :: (String,Bool) -> IO ()+writeAssertResult (result,flag) =+  if flag+  then putStrLn (result++"All tests successfully passed.")+  else putStrLn (result++"FAILURE occurred in some assertions!\n")+++----------------------------------------------------------------------------+-- The following entities are used to implement the test GUI:++--- The messages sent to the test GUI.+--- Used by the currytest tool.+data ProtocolMsg = TestModule String | TestCase String Bool | TestFinished+                 | TestCompileError++doSend :: Handle -> a -> IO ()+doSend h x = hPutStrLn h (show x)++--- Sends message to GUI for showing test of a module.+--- Used by the currytest tool.+showTestMod :: Handle -> String -> IO ()+showTestMod port modname = doSend port (TestModule modname)+++--- Sends message to GUI for showing result of executing a test case.+--- Used by the currytest tool.+showTestCase :: Handle -> (String,Bool) -> IO (String,Bool)+showTestCase port (s,b) =+  doSend port (TestCase s b) >>+  return (s,b)++--- Sends message to GUI for showing end of module test.+--- Used by the currytest tool.+showTestEnd :: Handle -> IO ()+showTestEnd port = doSend port TestFinished++--- Sends message to GUI for showing compilation errors in a module test.+--- Used by the currytest tool.+showTestCompileError :: Handle -> IO ()+showTestCompileError port = doSend port TestCompileError++-- end of module Assertion
+ src/lib/Curry/Module/CEventOracle.hs.include view
@@ -0,0 +1,1 @@+[ForType "Ref" Nothing,ForFunction "initialize",ForFunction "finalize",ForFunction "fresh",ForFunction "replace",ForFunction "collapse",ForFunction "closeRef",ForFunction "expand"]
+ src/lib/Curry/Module/CSV.curry view
@@ -0,0 +1,87 @@+------------------------------------------------------------------------------+--- Library for reading/writing files in CSV format.+--- Files in CSV (comma separated values) format can be imported and exported+--- by most spreadsheed and database applications.+---+--- @author Michael Hanus+--- @version September 2004+------------------------------------------------------------------------------++module CSV(showCSV,readCSV,readCSVWithDelims,+           writeCSVFile,readCSVFile,readCSVFileWithDelims) where++import List(intersperse)++--- Writes a list of records (where each record is a list of strings)+--- into a file in CSV format.+--- @param fname - the name of the result file (with standard suffix ".csv")+--- @param rows - the list of rows+writeCSVFile :: String -> [[String]] -> IO ()+writeCSVFile fname rows = writeFile fname (showCSV rows)++--- Shows a list of records (where each record is a list of strings)+--- as a string in CSV format.+showCSV :: [[String]] -> String+showCSV rows = concatMap showCSVLine rows++--- Shows a list of strings as a line in CSV format.+showCSVLine :: [String] -> String+showCSVLine row = concat (intersperse "," (map convert row)) ++ "\n"+ where+   -- enclose in quotation marks if necessary:+   convert s =+      if any (\c->c `elem` ['"',',',';',':']) s+      then '"' : concatMap (\c->if c=='"' then [c,c] else [c]) s ++ "\""+      else s+++--- Reads a file in CSV format and returns the list of records+--- (where each record is a list of strings).+--- @param fname - the name of the result file (with standard suffix ".csv")+readCSVFile :: String -> IO [[String]]+readCSVFile = readCSVFileWithDelims [',']++--- Reads a file in CSV format and returns the list of records+--- (where each record is a list of strings).+--- @param delims - the list of characters considered as delimiters+--- @param fname - the name of the result file (with standard suffix ".csv")+readCSVFileWithDelims :: [Char] -> String -> IO [[String]]+readCSVFileWithDelims delims fname = do+  contents <- readFile fname+  return (readCSVWithDelims delims contents)++--- Reads a string in CSV format and returns the list of records+--- (where each record is a list of strings).+--- @param str - the string in CSV format+readCSV :: String -> [[String]]+readCSV = readCSVWithDelims [',']++--- Reads a string in CSV format and returns the list of records+--- (where each record is a list of strings).+--- @param delims - the list of characters considered as delimiters+--- @param str - the string in CSV format+readCSVWithDelims :: [Char] -> String -> [[String]]+readCSVWithDelims delims str = map (components delims) (lines str)++--- Breaks a string in CSV record format into a list of components.+components :: [Char] -> String -> [String]+components _ [] = [[]]+components delims (c:cs) =+  if c=='"' then breakString cs+            else let (e,s) = break (`elem` delims) (c:cs)+                  in e : (if null s then [] else components delims (tail s))+ where+   breakString [] = delimError+   breakString [x] = if x=='"' then [[]]+                               else delimError+   breakString (x:y:zs) | x=='"' && y=='"' = let (b:bs) = breakString zs+                                              in (x:b):bs+                        | x=='"' && y `elem` delims = []:components delims zs+                        | otherwise = let (b:bs) = breakString (y:zs)+                                       in (x:b):bs++   delimError  = error "Missing closing delimiter in CSV record!"++-- Examples:+-- writeCSVFile "tmp.csv" [["Name","Value"],["aa\"bb,cc","1"]]+-- readCSVFile "tmp.csv"
+ src/lib/Curry/Module/Char.curry view
@@ -0,0 +1,69 @@+------------------------------------------------------------------------------+--- Library with some useful functions on characters.+---+--- @author Michael Hanus+--- @version November 2001+------------------------------------------------------------------------------++module Char(isUpper,isLower,isAlpha,isDigit,isAlphaNum,isOctDigit,+            isHexDigit,isSpace,toUpper,toLower,digitToInt,intToDigit) where+ +--- Returns true if the argument is an uppercase letter.+isUpper       :: Char -> Bool+isUpper c     =  ord c >= ord 'A' && ord c <= ord 'Z'++--- Returns true if the argument is an lowercase letter.+isLower       :: Char -> Bool+isLower c     =  ord c >= ord 'a' && ord c <= ord 'z'++--- Returns true if the argument is a letter.+isAlpha       :: Char -> Bool+isAlpha c     =  isUpper c || isLower c++--- Returns true if the argument is a decimal digit.+isDigit       :: Char -> Bool+isDigit c     =  ord '0' <= ord c && ord c <= ord '9'++--- Returns true if the argument is a letter or digit.+isAlphaNum    :: Char -> Bool+isAlphaNum c  =  isAlpha c || isDigit c++--- Returns true if the argument is an octal digit.+isOctDigit   :: Char -> Bool+isOctDigit c  =  ord c >= ord '0' && ord c <= ord '7'++--- Returns true if the argument is a hexadecimal digit.+isHexDigit    :: Char -> Bool+isHexDigit c  =  isDigit c || ord c >= ord 'A' && ord c <= ord 'F'+                           || ord c >= ord 'a' && ord c <= ord 'f'++--- Returns true if the argument is a white space.+isSpace       :: Char -> Bool+isSpace c     =  c == ' '  || c == '\t' || c == '\n' ||+                 c == '\r' || ord c == 12 -- form feed++--- Converts lowercase into uppercase letters.+toUpper   :: Char -> Char+toUpper c | isLower c = chr (ord c - ord 'a' + ord 'A')+          | otherwise = c++--- Converts uppercase into lowercase letters.+toLower   :: Char -> Char+toLower c | isUpper c = chr (ord c - ord 'A' + ord 'a')+          | otherwise = c++--- Converts a (hexadecimal) digit character into an integer.+digitToInt :: Char -> Int+digitToInt c+  | isDigit c                            =  ord c - ord '0'+  | ord c >= ord 'A' && ord c <= ord 'F' =  ord c - ord 'A' + 10+  | ord c >= ord 'a' && ord c <= ord 'f' =  ord c - ord 'a' + 10+  | otherwise  =  error "Char.digitToInt: argument is not a digit"++--- Converts an integer into a (hexadecimal) digit character.+intToDigit :: Int -> Char+intToDigit i+  | i >= 0  && i <=  9  =  chr (ord '0' + i)+  | i >= 10 && i <= 15  =  chr (ord 'A' + i - 10)+  | otherwise           =  error "Char.intToDigit: argument not a digit value"+
+ src/lib/Curry/Module/Dequeue.curry view
@@ -0,0 +1,99 @@+------------------------------------------------------------------------------+--- An implementation of double-ended queues supporting access at both+--- ends in constant amortized time.+---+--- @author Bernd Brassel, Olaf Chitil, Michael Hanus, Sebastian Fischer+--- @version October 2006+------------------------------------------------------------------------------++module Dequeue(Queue,empty,isEmpty,deqHead,deqLast,cons,deqTail,snoc,deqInit,+               listToDeq,deqToList,deqReverse,deqLength,rotate,+               matchHead,matchLast)+ where++--- The datatype of a queue.+data Queue a = S Int [a] Int [a]++--- The empty queue.+empty :: Queue _+empty = S 0 [] 0 []++--- Is the queue empty?+isEmpty :: Queue _ -> Bool+isEmpty (S lenf _ lenr _) = lenf+lenr==0++--- The first element of the queue.+deqHead :: Queue a -> a+deqHead (S lenf f _ r) = head (if lenf==0 then r else f)++--- The last element of the queue.+deqLast :: Queue a -> a+deqLast (S _ f lenr r) = head (if lenr==0 then f else r)++--- Inserts an element at the front of the queue.+cons :: a -> Queue a -> Queue a+cons x (S lenf f lenr r) = check (lenf+1) (x:f) lenr r+ +--- Removes an element at the front of the queue.+deqTail :: Queue a -> Queue a+deqTail (S _ [] _ _) = empty+deqTail (S lenf (_:fs) lenr r) = deqReverse (check lenr r (lenf-1) fs)++--- Inserts an element at the end of the queue.+snoc :: a -> Queue a -> Queue a+snoc x (S lenf f lenr r) = deqReverse (check (lenr+1) (x:r) lenf f)++--- Removes an element at the end of the queue.+deqInit :: Queue a -> Queue a+deqInit (S _ _ _ []) = empty+deqInit (S lenf f lenr (_:rs)) = check lenf f (lenr-1) rs++--- Reverses a double ended queue.+deqReverse :: Queue a -> Queue a+deqReverse (S lenf f lenr r) = S lenr r lenf f++check :: Int -> [a] -> Int -> [a] -> Queue a+check lenf f lenr r +  | lenf<=3*lenr+1 = S lenf f lenr r +  | otherwise = S lenf' f' lenr' r'+  where+    len = lenf+lenr+    lenf' = len `div` 2+    lenr' = len - lenf'+    (f',rf') = splitAt lenf' f +    r' = r++reverse rf'++--- Transforms a list to a double ended queue.+listToDeq :: [a] -> Queue a+listToDeq xs = check (length xs) xs 0 []++--- Transforms a double ended queue to a list.+deqToList :: Queue a -> [a]+deqToList (S _ xs _ ys) = xs ++ reverse ys++--- Returns the number of elements in the queue.+deqLength :: Queue _ -> Int+deqLength (S lenf _ lenr _) = lenf+lenr++--- Moves the first element to the end of the queue.+rotate :: Queue a -> Queue a+rotate q = snoc (deqHead q) (deqTail q)++--- Matches the front of a queue.+--- <code>matchHead q</code> is equivalent to+--- <code>if isEmpty q then Nothing else Just (deqHead q,deqTail q)</code>+--- but more efficient.+matchHead :: Queue a -> Maybe (a,Queue a)+matchHead (S _ [] _ []) = Nothing+matchHead (S _ [] _ [x]) = Just (x,empty)+matchHead (S lenf (x:xs) lenr r)+  = Just (x,deqReverse (check lenr r (lenf-1) xs))++--- Matches the end of a queue.+--- <code>matchLast q</code> is equivalent to+--- <code>if isEmpty q then Nothing else Just (deqLast q,deqInit q)</code>+--- but more efficient.+matchLast :: Queue a -> Maybe (a,Queue a)+matchLast (S _ [] _ []) = Nothing+matchLast (S _ [x] _ []) = Just (x,empty)+matchLast (S lenf f lenr (x:xs)) = Just (x,check lenf f (lenr-1) xs)
+ src/lib/Curry/Module/Directory.curry view
@@ -0,0 +1,95 @@+--- Library for accessing the directory structure of the+--- underlying operating system.+---+--- @author Michael Hanus+--- @version March 2008++module Directory(doesFileExist,doesDirectoryExist,fileSize,+                 getModificationTime,+                 getCurrentDirectory,setCurrentDirectory,+                 getDirectoryContents,createDirectory,+                 removeFile,removeDirectory,renameFile,renameDirectory) where++import Time(ClockTime)+++--- Returns true if the argument is the name of an existing file.+doesFileExist :: String -> IO Bool+doesFileExist fname = prim_doesFileExist $## fname++prim_doesFileExist :: String -> IO Bool+prim_doesFileExist external++--- Returns true if the argument is the name of an existing directory.+doesDirectoryExist :: String -> IO Bool+doesDirectoryExist dir = prim_doesDirectoryExist $## dir++prim_doesDirectoryExist :: String -> IO Bool+prim_doesDirectoryExist external++--- Returns the size of the file.+fileSize :: String -> IO Int+fileSize fname = prim_fileSize $## fname++prim_fileSize :: String -> IO Int+prim_fileSize external++--- Returns the modification time of the file.+getModificationTime :: String -> IO ClockTime+getModificationTime fname = prim_getModificationTime $## fname++prim_getModificationTime :: String -> IO ClockTime+prim_getModificationTime external++--- Returns the current working directory.+getCurrentDirectory :: IO String+getCurrentDirectory external++--- Sets the current working directory.+setCurrentDirectory :: String -> IO ()+setCurrentDirectory dir = prim_setCurrentDirectory $## dir++prim_setCurrentDirectory :: String -> IO ()+prim_setCurrentDirectory external++--- Returns the list of all entries in a directory.+getDirectoryContents :: String -> IO [String]+getDirectoryContents dir = prim_getDirectoryContents $## dir++prim_getDirectoryContents :: String -> IO [String]+prim_getDirectoryContents external++--- Creates a new directory with the given name.+createDirectory :: String -> IO ()+createDirectory dir = prim_createDirectory $## dir++prim_createDirectory :: String -> IO ()+prim_createDirectory external++--- Deletes a file from the file system.+removeFile :: String -> IO ()+removeFile file = prim_removeFile $## file++prim_removeFile :: String -> IO ()+prim_removeFile external++--- Deletes a directory from the file system.+removeDirectory :: String -> IO ()+removeDirectory dir = prim_removeDirectory $## dir++prim_removeDirectory :: String -> IO ()+prim_removeDirectory external++--- Renames a file.+renameFile :: String -> String -> IO ()+renameFile file1 file2 = (prim_renameFile $## file1) $## file2++prim_renameFile :: String -> String -> IO ()+prim_renameFile external++--- Renames a directory.+renameDirectory :: String -> String -> IO ()+renameDirectory dir1 dir2 = (prim_renameDirectory $## dir1) $## dir2++prim_renameDirectory :: String -> String -> IO ()+prim_renameDirectory external
+ src/lib/Curry/Module/Directory.hs.include view
@@ -0,0 +1,49 @@+[ForFunction "prim_doesFileExist"+,ForFunction "prim_doesDirectoryExist"+,ForFunction "prim_fileSize"+,ForFunction "prim_getModificationTime"+,ForFunction "prim_getDirectoryContents"+]++import System.Time+import System.Directory+import System.IO++prim_doesFileExist :: C_String -> Result (C_IO C_Bool)+prim_doesFileExist = ioFunc1 doesFileExist++prim_doesDirectoryExist :: C_String -> Result (C_IO C_Bool)+prim_doesDirectoryExist = ioFunc1 doesDirectoryExist++prim_fileSize :: C_String -> Result (C_IO C_Int)+prim_fileSize = ioFunc1 (\s->do h <- openFile s ReadMode +                                i <- hFileSize h+                                hClose h+                                Prelude.return i)++prim_getModificationTime :: C_String -> Result (C_IO C_ClockTime)+prim_getModificationTime = ioFunc1 getModificationTime++prim_getDirectoryContents :: C_String -> Result (C_IO (List C_String))+prim_getDirectoryContents = ioFunc1 getDirectoryContents++getCurrentDirectory :: Result (C_IO C_String)+getCurrentDirectory = ioFunc0 System.Directory.getCurrentDirectory++prim_createDirectory :: C_String -> Result (C_IO T0)+prim_createDirectory = ioFunc1 createDirectory++prim_removeFile :: C_String -> Result (C_IO T0)+prim_removeFile = ioFunc1 removeFile++prim_setCurrentDirectory :: C_String -> Result (C_IO T0)+prim_setCurrentDirectory = ioFunc1 setCurrentDirectory++prim_removeDirectory :: C_String -> Result (C_IO T0)+prim_removeDirectory = ioFunc1 removeDirectory++prim_renameFile :: C_String -> C_String -> Result (C_IO T0)+prim_renameFile = ioFunc2 renameFile++prim_renameDirectory :: C_String -> C_String -> Result (C_IO T0)+prim_renameDirectory = ioFunc2 renameDirectory
+ src/lib/Curry/Module/Distribution.hs.include view
@@ -0,0 +1,32 @@+[ForFunction "curryCompiler"+,ForFunction "curryCompilerMajorVersion"+,ForFunction "curryCompilerMinorVersion"+,ForFunction "curryRuntime"+,ForFunction "curryRuntimeMajorVersion"+,ForFunction "curryRuntimeMinorVersion"+,ForFunction "installDir"+]++import qualified InstallDir as ID++curryCompiler :: Result C_String+curryCompiler _ = toCurry "kics"++curryCompilerMajorVersion :: Result C_Int+curryCompilerMajorVersion _ = 0++curryCompilerMinorVersion :: Result C_Int+curryCompilerMinorVersion _ = 9854++installDir :: Result C_String+installDir _ = toCurry (ID.installDir)++curryRuntime :: Result C_String+curryRuntime _ = toCurry "ghc"++curryRuntimeMajorVersion :: Result C_Int+curryRuntimeMajorVersion _ = 6++curryRuntimeMinorVersion :: Result C_Int+curryRuntimeMinorVersion _ = 8+
+ src/lib/Curry/Module/EasyCheck.curry view
@@ -0,0 +1,387 @@+--- Lightweight, automated, specification-based testing of Curry programs.+--- Currently, EasyCheck is only supported by the Kiel Curry System (KiCS).+--- See +--- <a href="http://www-ps.informatik.uni-kiel.de/currywiki/tools/easycheck"+--- >here</a> for a tutorial introduction to EasyCheck.+---+--- @author Jan Christiansen and Sebastian Fischer+---+--- @version January 2008+---+module EasyCheck (++  -- test specification+  Prop, (==>), for, forValues,++  test, is, isAlways, isEventually, prop, uniquely, always, eventually, +  failing, successful, deterministic, (-=-), (#), (<~>), (~>), (<~),++  isSameSet, isSubsetOf,++  -- test annotations+  label, trivial, classify, collect, collectAs, ++  -- test functions+  easyCheck, easyCheck1, easyCheck2, easyCheck3, easyCheck4, easyCheck5,+  verboseCheck, verboseCheck1, verboseCheck2, verboseCheck3, verboseCheck4,+  verboseCheck5,++  -- useful for other tools accessing EasyCheck+  valuesOf, Result(..), result,++  -- useful auxiliary functions+  diagonal++  ) where++import List             ( nub, group, intersperse, (\\) )+import Sort             ( leqList, leqString, mergeSort )+import Meta             ( searchTree )+import Integer          ( abs )+import Read             ( readNat )+import RandomExternal   ( split, nextInt )++infix  4 `isSameSet`, `isSubsetOf`+infix  1 `is`, `isAlways`, `isEventually`, -=-, #, <~>, ~>, <~, `trivial`+infixr 0 ==>+++data Test = Test Result [String] [String]++data Result = Undef | Ok | Falsified [String] | Ambigious [Bool] [String]++type Prop = [Test]++notest :: Test+notest = Test Undef [] []++result :: Test -> Result+result (Test r _ _) = r++setResult :: Result -> Test -> Test+setResult res (Test _ s a) = Test res a s++args, stamp :: Test -> [String]+args  (Test _ a _) = a+stamp (Test _ _ s) = s++updArgs, updStamp :: ([String] -> [String]) -> Test -> Test+updArgs  upd (Test r a s) = Test r (upd a) s+updStamp upd (Test r a s) = Test r a (upd s)++-- Test Specification++--- Specify a property as predicate on the list of nondeterministic results.+test :: a -> ([a] -> Bool) -> Prop+test x f = [setResult res notest]+ where+  xs  = valuesOf x+  res = case valuesOf (f xs) of+          [True]  -> Ok+          [False] -> Falsified (map show xs)+          bs      -> Ambigious bs (map show xs)++--- Specify a property as predicate that must hold for+--- the unique result, all results or any result.+is, isAlways, isEventually :: a -> (a -> Bool) -> Prop+is x f = test x (\xs -> case xs of [y] -> f y; _ -> False)+isAlways x  = test x . all+isEventually x = test x . any++--- List boolean value to property.+prop, uniquely, always, eventually :: Bool -> Prop+prop       = uniquely+uniquely   = (`is`id)+always     = (`isAlways`id)+eventually = (`isEventually`id)++--- Properties on the number of results.+failing, successful, deterministic :: _ -> Prop+failing x = test x null+successful x = test x (not . null)+deterministic x = x `is` const True++--- Specify the number of different results.+(#) :: _ -> Int -> Prop+x # n = test x ((n==) . length . nub)++--- Deterministic equality.+--- False if any argument is non-deterministic or fails.+(-=-) :: a -> a -> Prop+x -=- y = (x,y) `is` uncurry (==)++--- Three kinds of "Nondeterministic equality".+(<~>), (~>), (<~) :: a -> a -> Prop+x <~> y = test x (isSameSet (valuesOf y))+x  ~> y = test x (isSubsetOf (valuesOf y))+x <~  y = test x (`isSubsetOf` (valuesOf y))++isSameSet, isSubsetOf, subset :: [a] -> [a] -> Bool+xs `isSameSet` ys = xs' `subset` ys' && ys' `subset` xs'+ where xs' = nub xs; ys' = nub ys+xs `isSubsetOf` ys = nub xs `subset` ys+xs `subset` ys = null (xs\\ys)++--- Implication operator to reject invalid test input.+(==>) :: Bool -> Prop -> Prop+True  ==> p = p+False ==> _ = [notest]++forAll :: (b -> Prop) -> a -> (a -> b) -> Prop+forAll c x f = forAllValues c (valuesOf x) f++forAllValues :: (b -> Prop) -> [a] -> (a -> b) -> Prop+forAllValues c xs f+  = diagonal [[ updArgs (show y:) t | t <- c (f y) ] | y <- xs ]++--- Specify a custom input generator for a property.+for :: a -> (a -> Prop) -> Prop+for = forAll id++forValues :: [a] -> (a -> Prop) -> Prop+forValues = forAllValues id++-- Test Annotations++--- Add a label to a property that is shown in the test summary.+label :: String -> Prop -> Prop+label = map . updStamp . (:)++--- Add a label to a property conditionally.+classify :: Bool -> String -> Prop -> Prop+classify True  name = label name+classify False _    = id++--- Add the label 'trivial' to a property conditionally.+trivial :: Bool -> Prop -> Prop+trivial = (`classify`"trivial")++--- Add a string representation of given value as a label to a property. +collect :: a -> Prop -> Prop+collect = label . show++--- Like 'collect' but with discriminating prefix.+collectAs :: String -> a -> Prop -> Prop+collectAs name = label . ((name++": ")++) . show++-- Test Functions++data Config = Config Int Int (Int -> [String] -> String)++maxTest, maxFail :: Config -> Int+maxTest (Config n _ _) = n+maxFail (Config _ n _) = n++every :: Config -> Int -> [String] -> String+every (Config _ _ f) = f++setEvery :: (Int -> [String] -> String) -> Config -> Config+setEvery f (Config n m _) = Config n m f++easy :: Config+easy = Config 100 1000+        (\n _ -> let s = ' ':show (n+1) in s ++ [ chr 8 | _ <- s ])++verbose :: Config+verbose = setEvery (\n xs -> show n ++ ":\n" ++ unlines xs) easy++--- Test a property and print a summary.+easyCheck, verboseCheck :: Prop -> IO ()+easyCheck    = check easy+verboseCheck = check verbose++suc :: (a -> Prop) -> (b -> a) -> Prop+suc n = forAll n unknown++easyCheck1 :: (_ -> Prop) -> IO ()+easyCheck1 = easyCheck . suc id++easyCheck2 :: (_ -> _ -> Prop) -> IO ()+easyCheck2 = easyCheck . suc (suc id)++easyCheck3 :: (_ -> _ -> _ -> Prop) -> IO ()+easyCheck3 = easyCheck . suc (suc (suc id))++easyCheck4 :: (_ -> _ -> _ -> _ -> Prop) -> IO ()+easyCheck4 = easyCheck . suc (suc (suc (suc id)))++easyCheck5 :: (_ -> _ -> _ -> _ -> _ -> Prop) -> IO ()+easyCheck5 = easyCheck . suc (suc (suc (suc (suc id))))++verboseCheck1 :: (_ -> Prop) -> IO ()+verboseCheck1 = verboseCheck . suc id++verboseCheck2 :: (_ -> _ -> Prop) -> IO ()+verboseCheck2 = verboseCheck . suc (suc id)++verboseCheck3 :: (_ -> _ -> _ -> Prop) -> IO ()+verboseCheck3 = verboseCheck . suc (suc (suc id))++verboseCheck4 :: (_ -> _ -> _ -> _ -> Prop) -> IO ()+verboseCheck4 = verboseCheck . suc (suc (suc (suc id)))++verboseCheck5 :: (_ -> _ -> _ -> _ -> _ -> Prop) -> IO ()+verboseCheck5 = verboseCheck . suc (suc (suc (suc (suc id))))+++check :: Config -> Prop -> IO ()+check config p = do+  isOrBased <- evalModeIsOrBased+  if isOrBased then tests config p 0 0 []+   else putStrLn $ unlines+    ["","EasyCheck must be run without suspending computations.",""+    ,"Please",""+    ," - type ':set or' at the command prompt in kicsi or"+    ," - put 'ChoiceMode=OrBased' in your ~/.kicsrc file",""+    ,"to enable this mode for this session or for all sessions respectively."]++tests :: Config -> [Test] -> Int -> Int -> [[String]] -> IO ()+tests _ [] ntest _ stamps = done "Passed" ntest stamps+tests config (t:ts) ntest nfail stamps+  | ntest == maxTest config = done "OK, passed" ntest stamps+  | nfail == maxFail config = done "Arguments exhausted after" ntest stamps+  | otherwise = do+      putStr (every config ntest (args t))+      case result t of+        Undef -> tests config ts ntest (nfail+1) stamps+        Ok    -> tests config ts (ntest+1) nfail (stamp t:stamps)+        Falsified results -> putStr $+          "Falsified by " ++ nth (ntest+1) ++ " test" +++          (if null (args t) then "." else ".\nArguments:") ++ "\n" +++          unlines (args t) +++          if null results then "no result\n"+           else "Results:\n" ++ unlines results+        Ambigious bs results -> putStr $+          "Ambigious property yields " ++ show bs ++ " for " ++ +          nth (ntest+1) ++ " test" +++          (if null (args t) then "." else ".\nArguments:") ++ "\n" +++          unlines (args t) +++          if null results then "no result\n"+           else "Results:\n" ++ unlines results++nth :: Int -> String+nth n = case n of 1 -> "first"; 2 -> "second"; 3 -> "third"; _ -> show n++ "th"++done :: String -> Int -> [[String]] -> IO ()+done mesg ntest stamps = do+  putStr $ mesg ++ " " ++ show ntest ++ " test"+        ++ (if ntest >= 2 then "s" else "") ++ table+ where+  table = display+        . map entry+        . reverse+        . mergeSort (leqPair (<=) (leqList leqString))+        . map pairLength+        . group+        . mergeSort (leqList leqString)+        . filter (not . null)+        $ stamps++  display []         = ".\n"+  display [x]        = " - " ++ x ++ ".\n"+  display xs@(_:_:_) = ".\n" ++ unlines (map (++".") xs)++  pairLength xss@(xs:_) = (length xss,xs)++  entry (n,xs) = percentage n ntest ++ " " ++ concat (intersperse ", " xs)++  percentage n m = let s = show ((100*n)`div`m)+                    in replicate (3-length s) ' ' ++ s ++ "%"++-- Auxiliary Functions++leqPair :: (a -> a -> Bool) -> (b -> b -> Bool) -> ((a,b) -> (a,b) -> Bool)+leqPair leqa leqb (x1,y1) (x2,y2)+  | x1 == x2  = leqb y1 y2+  | otherwise = leqa x1 x2++leList :: (a -> a -> Bool) -> [a] -> [a] -> Bool+leList _  []     []     = False+leList _  []     (_:_)  = True+leList _  (_:_)  []     = False+leList le (x:xs) (y:ys) = le x y || x == y && leList le xs ys++valuesOf :: a -> [a]+valuesOf =+  rndLevelDiagFlat 3 2008 .+  searchTree . (id$##)++--- randomized diagonalization of levels. +---+--- @param rs random seeds+--- @param t search tree+--- @return enumeration of values in given search tree+---+rndLevelDiag :: Int -> SearchTree a -> [a]+rndLevelDiag rnd t =+  [ x | Value x <- diagonal (rndLevels rnd [t]) ]++rndLevels :: Int -> [SearchTree a] -> [[SearchTree a]]+rndLevels rnd ts =+  if null ts then []+   else ts : rndLevels r (concat (zipWith shuffle rs [ us | Choice us <- ts ]))+ where+  r:rs = split rnd++--- randomized diagonalization of levels with flatening. ++rndLevelDiagFlat :: Int -> Int -> SearchTree a -> [a]+rndLevelDiagFlat d rnd t = +  concat $ transpose (zipWith rndLevelDiag rs (flatRep d [t]))+ where+  rs = split rnd++flat :: SearchTree a -> [SearchTree a]+flat t = case t of+           Value _ -> [t]+           Choice ts -> ts+           _ -> []++flatRep :: Int -> [SearchTree a] -> [SearchTree a]+flatRep n ts | n==0      = ts+             | otherwise = flatRep (n-1) (concatMap flat ts)++-- auxiliary functions++--- list diagonalization. +--- Fairly merges (possibly infinite) list of (possibly infinite) lists.+---+--- @param ls lists of lists+--- @return fair enumeration of all elements of inner lists of given lists+---+diagonal :: [[a]] -> [a]+diagonal = concat . foldr diags []+ where+  diags []     ys = ys+  diags (x:xs) ys = [x] : merge xs ys++  merge []       ys     = ys+  merge xs@(_:_) []     = map (:[]) xs+  merge (x:xs)   (y:ys) = (x:y) : merge xs ys+++--- Computes a random permutation of the given list.+---+--- @param rnd random seed+--- @param l lists to shuffle+--- @return shuffled list+---+shuffle :: Int -> [a] -> [a]+shuffle rnd l = shuffleWithLen (nextInt rnd) (length l) l++shuffleWithLen :: [Int] -> Int -> [a] -> [a]+shuffleWithLen (r:rs) len xs+  | len == 0  = []+  | otherwise = z : shuffleWithLen rs (len-1) (ys++zs)+ where+  (ys,z:zs) = splitAt (abs r `mod` len) xs+++transpose :: [[a]] -> [[a]]+transpose [] = []+transpose ([] : xss) = transpose xss+transpose ((x:xs) : xss)+  = (x : [h | (h:_) <- xss]) : transpose (xs : [t | (_:t) <- xss])++evalModeIsOrBased :: IO Bool+evalModeIsOrBased = getSearchTree (id$#unknown) >>= return . (==Value ())
+ src/lib/Curry/Module/FileGoodies.curry view
@@ -0,0 +1,116 @@+------------------------------------------------------------------------------+--- A collection of useful operations when dealing with files.+---+--- @author Michael Hanus, Bernd Brassel+--- @version July 2005+------------------------------------------------------------------------------++module FileGoodies(separatorChar,pathSeparatorChar,suffixSeparatorChar,+                   isAbsolute,dirName,baseName,splitDirectoryBaseName,+                   stripSuffix,fileSuffix,splitBaseName,splitPath,+                   findFileInPath,lookupFileInPath,getFileInPath,+                   replaceFileName) where++import Directory+import List(intersperse)++--- The character for separating hierarchies in file names.+--- On UNIX systems the value is '/'.+separatorChar :: Char+separatorChar = '/'++--- The character for separating names in path expressions.+--- On UNIX systems the value is ':'.+pathSeparatorChar :: Char+pathSeparatorChar = ':'++--- The character for separating suffixes in file names.+--- On UNIX systems the value is '.'.+suffixSeparatorChar :: Char+suffixSeparatorChar = '.'++--- Is the argument an absolute name?+isAbsolute :: String -> Bool+isAbsolute (c:_) = c == separatorChar++--- Extracts the directoy prefix of a given (Unix) file name.+--- Returns "." if there is no prefix.+dirName :: String -> String+dirName name = fst (splitDirectoryBaseName name)++--- Extracts the base name without directoy prefix of a given (Unix) file name.+baseName :: String -> String+baseName name = snd (splitDirectoryBaseName name)++--- Splits a (Unix) file name into the directory prefix and the base name.+--- The directory prefix is "." if there is no real prefix in the name.+splitDirectoryBaseName :: String -> (String,String)+splitDirectoryBaseName name =+  let (rbase,rdir) = break (==separatorChar) (reverse name) in+  if null rdir then (".",reverse rbase)+               else (reverse (tail rdir), reverse rbase)++--- Strips a suffix (the last suffix starting with a dot) from a file name.+stripSuffix :: String -> String+stripSuffix = fst . splitBaseName++--- Yields the suffix (the last suffix starting with a dot) from given file name.+fileSuffix :: String -> String+fileSuffix = snd . splitBaseName++--- Splits a file name into prefix and suffix (the last suffix starting with a dot +--- and the rest).+splitBaseName :: String -> (String,String)+splitBaseName name = let (rsuffix,rbase) = break (==suffixSeparatorChar) (reverse name) in+  if null rbase || elem separatorChar rsuffix+  then (name,"")+  else (reverse (tail rbase),reverse rsuffix)++--- Splits a path string into list of directory names.+splitPath :: String -> [String]+splitPath [] = []+splitPath (x:xs) = let (ys,zs) = break (==pathSeparatorChar) (x:xs)+                    in if null zs then [ys]+                                  else ys : splitPath (tail zs)++--- Included for backward compatibility.+--- Use <code>lookupFileInPath</code> instead!+findFileInPath :: String -> [String] -> [String] -> IO (Maybe String)+findFileInPath = lookupFileInPath++--- Looks up the first file with a possible suffix in a list of directories.+--- Returns Nothing if such a file does not exist.+lookupFileInPath :: String -> [String] -> [String] -> IO (Maybe String)+lookupFileInPath file suffixes path =+  if isAbsolute file+  then lookupFirstFileWithSuffix file suffixes+  else lookupFirstFile path+ where+   lookupFirstFile [] = return Nothing+   lookupFirstFile (dir:dirs) = do+     mbfile <- lookupFirstFileWithSuffix (dir++separatorChar:file) suffixes+     maybe (lookupFirstFile dirs) (return . Just) mbfile++   lookupFirstFileWithSuffix _ [] = return Nothing+   lookupFirstFileWithSuffix f (suf:sufs) = do+     let fsuf = f++suf+     exfile <- doesFileExist fsuf+     if exfile then return (Just fsuf)+               else lookupFirstFileWithSuffix f sufs++--- Gets the first file with a possible suffix in a list of directories.+--- An error message is delivered if there is no such file.+getFileInPath :: String -> [String] -> [String] -> IO String+getFileInPath file suffixes path = do+  mbfile <- lookupFileInPath file suffixes path+  maybe (error $ "File "++file++" not found in path "+++                 concat (intersperse [pathSeparatorChar] path))+        return+        mbfile+++replaceFileName :: (String -> String) -> String -> String+replaceFileName f s = let (dir,fn) = splitDirectoryBaseName s+                  in case dir of+                      "." -> f fn+                      _   -> dir++separatorChar:f fn
+ src/lib/Curry/Module/FiniteMap.curry view
@@ -0,0 +1,695 @@+-----------------------------------------------------------------------------+--- A finite map is an efficient purely functional data structure +--- to store a mapping from keys to values.+--- In order to store the mapping efficiently, an order predicate +--- has to be given. +---+--- Example: To Store a mapping from Int -> String, the finite map needs+--- a boolean predicate like (<).+--- This version was ported from Haskell.+---+--- @author Frank Huch, Bernd Brassel+--- @version May 2005+-----------------------------------------------------------------------------++module FiniteMap (+        FM,                -- abstract type++        emptyFM, +        unitFM, +        listToFM,++        addToFM,+        addToFM_C,+        addListToFM,+        addListToFM_C,+        delFromFM,+        delListFromFM,+        splitFM,++        plusFM,+        plusFM_C,+        minusFM,+        intersectFM,+        intersectFM_C,++        foldFM, +        mapFM, +        filterFM, ++        sizeFM, +        eqFM,+        isEmptyFM, +        elemFM, +        lookupFM, +        lookupWithDefaultFM,+        keyOrder,++        fmToList, +        keysFM, +        eltsFM,+        fmSortBy,++        minFM,maxFM,updFM, fmToListPreOrder+    ) where++import Maybe++--- order predicates are boolean +type LeKey key = key -> key -> Bool++-----------------------------------------------+--        BUILDING finite maps+-----------------------------------------------++--- The empty finite map.+--- @param le an order predicate on the keys.+--- @result an empty finite map++emptyFM :: (LeKey key) -> FM key _+emptyFM le = FM le EmptyFM++--- Construct a finite map with only a single element.+--- @param le an order predicate on the keys.+--- @param key key of +--- @param elt the single element to form+--- @result a finite map with only a single element+unitFM :: (LeKey key) -> key -> elt -> FM key elt+unitFM le key elt = FM le (unitFM' key elt)++unitFM' key elt = Branch key elt 1 EmptyFM EmptyFM+++--- Builts a finite map from given list of tuples (key,element).+--- For multiple occurences of key, the last corresponding +--- element of the list is taken.+--- @param le an order predicate on the keys.+listToFM :: (LeKey key) -> [(key,elt)] -> FM key elt+listToFM le = addListToFM (emptyFM le)++-----------------------------------------------+--        ADDING AND DELETING+-----------------------------------------------++--- Throws away any previous binding and stores the new one given.++addToFM :: FM key elt -> key -> elt  -> FM key elt+addToFM (FM le fm) key elt = FM le (addToFM' le fm key elt)++addToFM' le fm key elt = addToFM_C' le (\ _ new -> new) fm key elt++addToFM_C' _ _ EmptyFM key elt = unitFM' key elt+addToFM_C' le combiner (Branch key elt size fm_l fm_r) new_key new_elt+  = if le new_key key+    then mkBalBranch key elt (addToFM_C' le combiner fm_l new_key new_elt) fm_r+    else+      if new_key==key+      then Branch new_key (combiner elt new_elt) size fm_l fm_r+      else mkBalBranch key elt fm_l (addToFM_C' le combiner fm_r new_key new_elt)+++--- Throws away any previous bindings and stores the new ones given.+--- The items are added starting with the first one in the list+addListToFM :: FM key elt -> [(key,elt)] -> FM key elt+addListToFM (FM le fm) key_elt_pairs =+  FM le (addListToFM' le fm key_elt_pairs)++addListToFM' le fm key_elt_pairs =+  addListToFM_C' le (\ _ new -> new) fm key_elt_pairs++addListToFM_C' le combiner fm key_elt_pairs+  = foldl add fm key_elt_pairs        -- foldl adds from the left+  where+    add fmap (key,elt) = addToFM_C' le combiner fmap key elt+++--- Instead of throwing away the old binding, +--- addToFM_C combines the new element with the old one.+--- @param combiner a function combining to elements+--- @param fm a finite map +--- @param key the key of the elements to be combined+--- @param elt the new element+--- @result a modified finite map+addToFM_C :: (elt -> elt -> elt) -> FM key elt -> key -> elt+                                 -> FM key elt+addToFM_C combiner (FM le fm) key elt =  +  FM le (addToFM_C' le combiner fm key elt)++--- Combine with a list of tuples (key,element), cf. addToFM_C+addListToFM_C :: (elt -> elt -> elt) -> FM key elt -> [(key,elt)]+                                      -> FM key elt+addListToFM_C combiner (FM le fm) key_elt_pairs =+  FM le (addListToFM_C' le combiner fm key_elt_pairs)++--- Deletes key from finite map.+--- Deletion doesn't complain if you try to delete something+--- which isn't there+delFromFM :: FM key elt -> key   -> FM key elt+delFromFM (FM le fm) del_key = FM le (delFromFM' le fm del_key)++delFromFM' _ EmptyFM _ = EmptyFM+delFromFM' le (Branch key elt _ fm_l fm_r) del_key+  = if le del_key key+    then mkBalBranch key elt (delFromFM' le fm_l del_key) fm_r+    else+      if del_key==key+        then glueBal le fm_l fm_r+        else mkBalBranch key elt fm_l (delFromFM' le fm_r del_key)++--- Deletes a list of keys from finite map.+--- Deletion doesn't complain if you try to delete something+--- which isn't there+delListFromFM        :: FM key elt -> [key] -> FM key elt+delListFromFM (FM le fm) keys = FM le (foldl (delFromFM' le) fm keys)++--- Applies a function to element bound to given key.+updFM :: FM a b -> a -> (b -> b) -> FM a b+updFM (FM lt fm) i f = FM lt (upd fm)+  where+    upd EmptyFM                          =  EmptyFM+    upd (Branch k x h l r) +            | i==k       =  Branch k (f x) h l r   +            | lt i k     =  Branch k x h (upd l) r  +            | otherwise  =  Branch k x h l (upd r) ++--- Combines delFrom and lookup.+splitFM :: FM a b -> a -> Maybe (FM a b,(a,b))+splitFM g v = maybe Nothing (\x->Just (delFromFM g v,(v,x))) (lookupFM g v)++-------------------------------------------------+-- COMBINING finite maps+-------------------------------------------------++--- Efficiently add key/element mappings of two maps into a single one.+--- Bindings in right argument shadow those in the left+plusFM :: FM key elt -> FM key elt -> FM key elt+plusFM (FM le1 fm1) (FM _ fm2) = FM le1 (plusFM' le1 fm1 fm2)++plusFM' _  EmptyFM fm2 = fm2+plusFM' _  (Branch split_key1 elt1 s1 left1 right1) EmptyFM =+  (Branch split_key1 elt1 s1 left1 right1)+plusFM' le (Branch split_key1 elt1 s1 left1 right1)+           (Branch split_key elt2 _ left right)+  = mkVBalBranch le split_key elt2 (plusFM' le lts left) (plusFM' le gts right)+  where+    fm1 = Branch split_key1 elt1 s1 left1 right1+    lts     = splitLT le fm1 split_key+    gts     = splitGT le fm1 split_key++--- Efficiently combine key/element mappings of two maps into a single one, +--- cf. addToFM_C+plusFM_C :: (elt -> elt -> elt)+                           -> FM key elt -> FM key elt -> FM key elt+plusFM_C combiner (FM le1 fm1) (FM _ fm2) =+  FM le1 (plusFM_C' le1 combiner fm1 fm2)++plusFM_C' _  _        EmptyFM fm2 = fm2+plusFM_C' _  _        (Branch split_key1 elt1 s1 left1 right1) EmptyFM =+          Branch split_key1 elt1 s1 left1 right1+plusFM_C' le combiner (Branch split_key1 elt1 s1 left1 right1)+                      (Branch split_key elt2 _ left right)+  = mkVBalBranch le split_key new_elt+                 (plusFM_C' le combiner lts left)+                 (plusFM_C' le combiner gts right)+  where+    fm1 = Branch split_key1 elt1 s1 left1 right1+    lts     = splitLT le fm1 split_key+    gts     = splitGT le fm1 split_key+    new_elt = case lookupFM' le fm1 split_key of+                Nothing   -> elt2+                Just elt1' -> combiner elt1' elt2++--- (minusFM a1 a2) deletes from a1 any bindings which are bound in a2+minusFM :: FM key elt -> FM key elt -> FM key elt+minusFM (FM le1 fm1) (FM _ fm2) = FM le1 (minusFM' le1 fm1 fm2)++minusFM' _  EmptyFM _ = EmptyFM+minusFM' _  (Branch split_key1 elt1 s1 left1 right1) EmptyFM =+  Branch split_key1 elt1 s1 left1 right1+minusFM' le (Branch split_key1 elt1 s1 left1 right1)+            (Branch split_key _ _ left right)+  = glueVBal le (minusFM' le lts left) (minusFM' le gts right)+       -- The two can be way different, so we need glueVBal+  where+    fm1 = Branch split_key1 elt1 s1 left1 right1+    lts = splitLT le fm1 split_key  -- NB gt and lt, so the equal ones+    gts = splitGT le fm1 split_key  -- are not in either.++--- Filters only those keys that are bound in both of the given maps.+--- The elements will be taken from the second map.+intersectFM :: FM key elt -> FM key elt -> FM key elt+intersectFM (FM le1 fm1) (FM _ fm2) = FM le1 (intersectFM' le1 fm1 fm2)++intersectFM' le fm1 fm2 = intersectFM_C' le (\ _ right -> right) fm1 fm2++--- Filters only those keys that are bound in both of the given maps+--- and combines the elements as in addToFM_C.+intersectFM_C :: (elt -> elt -> elt2) -> FM key elt -> FM key elt -> FM key elt2++intersectFM_C combiner (FM le1 fm1) (FM _ fm2) =+  FM le1 (intersectFM_C' le1 combiner fm1 fm2)++intersectFM_C' _  _        _        EmptyFM = EmptyFM+intersectFM_C' _  _        EmptyFM (Branch _ _ _ _ _) = EmptyFM+intersectFM_C' le combiner (Branch split_key1 elt1 s1 left1 right1)+                           (Branch split_key elt2 _ left right)++  | isJust maybe_elt1   -- split_elt *is* in intersection+  = mkVBalBranch le split_key (combiner elt1' elt2) +                 (intersectFM_C' le combiner lts left)+                 (intersectFM_C' le combiner gts right)++  | otherwise           -- split_elt is *not* in intersection+  = glueVBal le (intersectFM_C' le combiner lts left)+                (intersectFM_C' le combiner gts right)++  where+    fm1 = Branch split_key1 elt1 s1 left1 right1+    lts = splitLT le fm1 split_key      -- NB gt and lt, so the equal ones+    gts = splitGT le fm1 split_key      -- are not in either.++    maybe_elt1 = lookupFM' le fm1 split_key+    Just elt1'  = maybe_elt1++-------------------------------------------------------------+--  MAPPING, FOLDING, FILTERING on finite maps+-------------------------------------------------------------++--- Folds finite map by given function.+foldFM :: (key -> elt -> a -> a) -> a -> FM key elt -> a+foldFM k z (FM le fm) = foldFM' le k z fm++foldFM' _  _ z EmptyFM = z+foldFM' le k z (Branch key elt _ fm_l fm_r)+  = foldFM' le k (k key elt (foldFM' le k z fm_r)) fm_l++--- Applies a given function on every element in the map.+mapFM :: (key -> elt1 -> elt2) -> FM key elt1 -> FM key elt2+mapFM f (FM le fm) = FM le (mapFM' le f fm)++mapFM' _  _ EmptyFM = EmptyFM+mapFM' le f (Branch key elt size fm_l fm_r)+  = Branch key (f key elt) size (mapFM' le f fm_l) (mapFM' le f fm_r)++--- Yields a new finite map with only those key/element pairs matching the+--- given predicate.+filterFM  :: (key -> elt -> Bool) -> FM key elt -> FM key elt+filterFM p (FM le fm) = FM le (filterFM' le p fm)++filterFM' _  _ EmptyFM = EmptyFM+filterFM' le p (Branch key elt _ fm_l fm_r)+  | p key elt          -- Keep the item+  = mkVBalBranch le key elt (filterFM' le p fm_l) (filterFM' le p fm_r)++  | otherwise          -- Drop the item+  = glueVBal le (filterFM' le p fm_l) (filterFM' le p fm_r)++-----------------------------------------------------+-- INTERROGATING finite maps+-----------------------------------------------------++--- How many elements does given map contain?+sizeFM :: FM _ _ -> Int+sizeFM (FM _ EmptyFM)               = 0+sizeFM (FM _ (Branch _ _ size _ _)) = size++sizeFM' EmptyFM              = 0+sizeFM' (Branch _ _ size _ _) = size+++--- Do two given maps contain the same key/element pairs?+eqFM :: FM key elt -> FM key elt -> Bool+fm_1 `eqFM` fm_2 =+  (sizeFM   fm_1 == sizeFM   fm_2) &&   -- quick test+  (fmToList fm_1 == fmToList fm_2)++--- Is the given finite map empty?+isEmptyFM        :: FM _ _ -> Bool+isEmptyFM fm = sizeFM fm == 0++--- Does given map contain given key?+elemFM :: key -> FM key _ -> Bool+key `elemFM` fm = isJust (lookupFM fm key)++--- Retrieves element bound to given key+lookupFM :: FM key elt -> key -> Maybe elt+lookupFM (FM le fm) key = lookupFM' le fm key++lookupFM' _  EmptyFM _   = Nothing+lookupFM' le (Branch key elt _ fm_l fm_r) key_to_find+  = if le key_to_find key+    then lookupFM' le fm_l key_to_find+    else if key_to_find==key+         then Just elt+         else lookupFM' le fm_r key_to_find+++--- Retrieves element bound to given key.+--- If the element is not contained in map, return +--- default value.+lookupWithDefaultFM :: FM key elt -> elt -> key -> elt+lookupWithDefaultFM fm deflt key+  = case lookupFM fm key of+      Nothing -> deflt+      Just elt -> elt++--- Retrieves the ordering on which the given finite map is built.+keyOrder :: FM key _ -> (key->key->Bool)+keyOrder (FM lt _) = lt++--- Retrieves the smallest key/element pair in the finite map +--- according to the basic key ordering.+minFM :: FM a b -> Maybe (a,b)+minFM = min . tree+  where+   min EmptyFM            = Nothing+   min (Branch k x _ l _) | l==EmptyFM = Just (k,x)+                          | otherwise  = min l++--- Retrieves the greatest key/element pair in the finite map +--- according to the basic key ordering.+maxFM :: FM a b -> Maybe (a,b)+maxFM = max . tree+  where+    max EmptyFM            = Nothing+    max (Branch k x _ _ r) | r==EmptyFM = Just (k,x)+                           | otherwise  = max r++++----------------------------------------------------+-- LISTIFYING: transform finite maps to lists+----------------------------------------------------++--- Builds a list of key/element pairs. The list is ordered +--- by the initially given order predicate on keys.+fmToList        :: FM key elt -> [(key,elt)]+fmToList fm = foldFM (\ key elt rest -> (key,elt) : rest) [] fm++--- Retrieves a list of keys contained in finite map. +--- The list is ordered +--- by the initially given order predicate on keys.+keysFM                :: FM key _ -> [key]+keysFM fm   = foldFM (\ key _   rest -> key : rest)       [] fm++--- Retrieves a list of elements contained in finite map. +--- The list is ordered +--- by the initially given order predicate on keys.+eltsFM                :: FM _ elt -> [elt]+eltsFM fm   = foldFM (\ _   elt rest -> elt : rest)       [] fm++--- Retrieves list of key/element pairs in preorder of the internal tree.+--- Useful for lists that will be retransformed into a tree or to match +--- any elements regardless of basic order.++fmToListPreOrder :: FM key elt -> [(key,elt)]+fmToListPreOrder (FM _ fm) = pre fm []+   where+     pre EmptyFM xs = xs+     pre (Branch k x _ l r) xs = (k,x):pre l (pre r xs)++--- Sorts a given list by inserting and retrieving from finite map.+--- Duplicates are deleted.+fmSortBy :: LeKey key -> [key] -> [key]+fmSortBy p l = keysFM (listToFM p (zip l (repeat ())))++-----------------------------------------------------+-- internal Implementation+-----------------------------------------------------++data FM key elt = FM (LeKey key) (FiniteMap key elt)++tree (FM _ fm) = fm+++data FiniteMap key elt+  = EmptyFM+  | Branch key elt             -- Key and elt stored here+    Int{-STRICT-}              -- Size >= 1+    (FiniteMap key elt)        -- Children+    (FiniteMap key elt)++toGT le x y = not (le x y) && x/=y++isEmptyFM' fm = sizeFM' fm == 0++-------------------------------------------------------------------------+--                                                                        -+--  The implementation of balancing                                     -+--                                                                        -+-------------------------------------------------------------------------+-------------------------------------------------------------------------+--                                                                        -+--  Basic construction of a FiniteMap                                   -+--                                                                        -+-------------------------------------------------------------------------+sIZE_RATIO :: Int+sIZE_RATIO = 5++mkBranch :: Int+         -> key -> elt+         -> FiniteMap key elt -> FiniteMap key elt+         -> FiniteMap key elt++mkBranch _{-which-} key elt fm_l fm_r =+    let result = Branch key elt (unbox (1 + left_size + right_size)) fm_l fm_r+    in+      result+      --    if sizeFM result <= 8 then+      --     result+      --    else+      --      pprTrace ("mkBranch:"++(show which)) (ppr result) (+      --      result+      --      )+  where+    {-left_ok  = case fm_l of+                 EmptyFM                         -> True+                 Branch _ _ _ _ _  -> cmpWithBiggest_left_key key++    cmpWithBiggest_left_key key' = le (fst (findMax fm_l)) key'++    right_ok = case fm_r of+                 EmptyFM                         -> True+                 Branch _ _ _ _ _ -> cmpWithSmallest_right_key key++    cmpWithSmallest_right_key key' = le key' (fst (findMin fm_r))++    balance_ok = True -- sigh-}+    left_size  = sizeFM' fm_l+    right_size = sizeFM' fm_r+++    unbox :: Int -> Int+    unbox x = x+++-------------------------------------------------------------------------+--                                                                        -+-- Balanced construction of a FiniteMap                                 -+--                                                                        -+-------------------------------------------------------------------------+mkBalBranch :: key -> elt+            -> FiniteMap key elt -> FiniteMap key elt+            -> FiniteMap key elt++mkBalBranch key elt fm_L fm_R++  | size_l + size_r < 2+  = mkBranch 1{-which-} key elt fm_L fm_R++  | size_r > sIZE_RATIO * size_l        -- Right tree too big+  = case fm_R of+        Branch _ _ _ fm_rl fm_rr ->+              if sizeFM' fm_rl < 2 * sizeFM' fm_rr+                then single_L fm_L fm_R+                else double_L fm_L fm_R+        -- Other case impossible++  | size_l > sIZE_RATIO * size_r        -- Left tree too big+  = case fm_L of+        Branch _ _ _ fm_ll fm_lr ->+              if sizeFM' fm_lr < 2 * sizeFM' fm_ll+                then single_R fm_L fm_R+                else double_R fm_L fm_R+        -- Other case impossible++  | otherwise                                -- No imbalance+  = mkBranch 2{-which-} key elt fm_L fm_R++  where+    size_l   = sizeFM' fm_L+    size_r   = sizeFM' fm_R++    single_L fm_l (Branch key_r elt_r _ fm_rl fm_rr)+        = mkBranch 3{-which-} key_r elt_r (mkBranch 4{-which-} key elt fm_l fm_rl) fm_rr++    double_L fm_l (Branch key_r elt_r _ (Branch key_rl elt_rl _ fm_rll fm_rlr) fm_rr)+        = mkBranch 5{-which-} key_rl elt_rl (mkBranch 6{-which-} key   elt   fm_l   fm_rll)+                                 (mkBranch 7{-which-} key_r elt_r fm_rlr fm_rr)++    single_R (Branch key_l elt_l _ fm_ll fm_lr) fm_r+        = mkBranch 8{-which-} key_l elt_l fm_ll (mkBranch 9{-which-} key elt fm_lr fm_r)++    double_R (Branch key_l elt_l _ fm_ll (Branch key_lr elt_lr _ fm_lrl fm_lrr)) fm_r+        = mkBranch 10{-which-} key_lr elt_lr (mkBranch 11{-which-} key_l elt_l fm_ll  fm_lrl)+                                 (mkBranch 12{-which-} key   elt   fm_lrr fm_r)+++mkVBalBranch :: (LeKey key)+             -> key -> elt+             -> FiniteMap key elt -> FiniteMap key elt+             -> FiniteMap key elt++-- Assert: in any call to (mkVBalBranch_C comb key elt l r),+--           (a) all keys in l are < all keys in r+--           (b) all keys in l are < key+--           (c) all keys in r are > key++mkVBalBranch le key elt EmptyFM fm_r = addToFM' le fm_r key elt+mkVBalBranch le key elt (Branch key_l elt_l s_l fm_ll fm_lr) EmptyFM = +   addToFM' le (Branch key_l elt_l s_l fm_ll fm_lr) key elt+  +mkVBalBranch le key elt (Branch key_l elt_l s_l fm_ll fm_lr)+                        (Branch key_r elt_r s_r fm_rl fm_rr)+  | sIZE_RATIO * size_l < size_r+  = mkBalBranch key_r elt_r (mkVBalBranch le key elt fm_l fm_rl) fm_rr++  | sIZE_RATIO * size_r < size_l+  = mkBalBranch key_l elt_l fm_ll (mkVBalBranch le key elt fm_lr fm_r)++  | otherwise+  = mkBranch 13{-which-} key elt fm_l fm_r++  where+    fm_l = Branch key_l elt_l s_l fm_ll fm_lr+    fm_r = Branch key_r elt_r s_r fm_rl fm_rr+    size_l = sizeFM' fm_l+    size_r = sizeFM' fm_r++-------------------------------------------------------------------------+--                                                                        -+-- Gluing two trees together                                            -+--                                                                        -+-------------------------------------------------------------------------+glueBal :: (LeKey key)+        -> FiniteMap key elt -> FiniteMap key elt+        -> FiniteMap key elt++glueBal le fm1 fm2 = +  if isEmptyFM' fm1+    then fm2+    else if isEmptyFM' fm2+           then fm1+           else +        -- The case analysis here (absent in Adams' program) is really to deal+        -- with the case where fm2 is a singleton. Then deleting the minimum means+        -- we pass an empty tree to mkBalBranch, which breaks its invariant.+             let (mid_key1, mid_elt1) = findMax fm1+                 (mid_key2, mid_elt2) = findMin fm2+             in+             if sizeFM' fm2 > sizeFM' fm1+               then mkBalBranch mid_key2 mid_elt2 fm1 (deleteMin le fm2)+               else mkBalBranch mid_key1 mid_elt1 (deleteMax le fm1) fm2++glueVBal :: (LeKey key)+         -> FiniteMap key elt -> FiniteMap key elt+         -> FiniteMap key elt++glueVBal le fm_l fm_r = +  if isEmptyFM' fm_l+    then fm_r+    else if isEmptyFM' fm_r+           then fm_l+           else +             let Branch key_l elt_l _ fm_ll fm_lr = fm_l+                 Branch key_r elt_r _ fm_rl fm_rr = fm_r+                 --(mid_key_l,mid_elt_l) = findMax fm_l+                 --(mid_key_r,mid_elt_r) = findMin fm_r+                 size_l = sizeFM' fm_l+                 size_r = sizeFM' fm_r+             in+               if sIZE_RATIO * size_l < size_r+               then+                 mkBalBranch key_r elt_r (glueVBal le fm_l fm_rl) fm_rr+                else if sIZE_RATIO * size_r < size_l+                    then+                      mkBalBranch key_l elt_l fm_ll (glueVBal le fm_lr fm_r)++                      -- We now need the same two cases as in glueBal above.+                    else glueBal le fm_l fm_r+  +-------------------------------------------------------------------------+--                                                                        -+-- Local utilities                                                      -+--                                                                        -+-------------------------------------------------------------------------++splitLT, splitGT :: (LeKey key) -> FiniteMap key elt -> key+                    -> FiniteMap key elt++-- splitLT fm split_key  =  fm restricted to keys <  split_key+-- splitGT fm split_key  =  fm restricted to keys >  split_key++splitLT _  EmptyFM _ = EmptyFM+splitLT le (Branch key elt _ fm_l fm_r) split_key+  = if le split_key key+    then splitLT le fm_l split_key+    else if split_key == key+         then fm_l+         else mkVBalBranch le key elt fm_l (splitLT le fm_r split_key)++splitGT _  EmptyFM _ = EmptyFM+splitGT le (Branch key elt _ fm_l fm_r) split_key+  = if le split_key key+    then mkVBalBranch le key elt (splitGT le fm_l split_key) fm_r+    else if split_key == key+         then fm_r+         else splitGT le fm_r split_key++findMin :: FiniteMap key elt -> (key,elt)+findMin (Branch key elt _ EmptyFM _) = (key,elt)+findMin (Branch _   _   _ (Branch key_l elt_l s_l fm_ll fm_lr)_) =+      findMin (Branch key_l elt_l s_l fm_ll fm_lr)++deleteMin :: (LeKey key) -> FiniteMap key elt -> FiniteMap key elt+deleteMin _  (Branch _   _   _ EmptyFM fm_r) = fm_r+deleteMin le (Branch key elt _ (Branch key_l elt_l s_l fm_ll fm_lr) fm_r) =+  mkBalBranch key elt (deleteMin le (Branch key_l elt_l s_l fm_ll fm_lr))+                         fm_r++findMax :: FiniteMap key elt -> (key,elt)+findMax (Branch key elt _ _ EmptyFM) = (key,elt)+findMax (Branch _   _   _ _  (Branch key_r elt_r s_r fm_rl fm_rr)) =+  findMax (Branch key_r elt_r s_r fm_rl fm_rr)++deleteMax :: (LeKey key) -> FiniteMap key elt -> FiniteMap key elt+deleteMax _  (Branch _   _   _ fm_l EmptyFM) = fm_l+deleteMax le (Branch key elt _ fm_l (Branch key_r elt_r s_r fm_rl fm_rr)) =+  mkBalBranch key elt fm_l+              (deleteMax le (Branch key_r elt_r s_r fm_rl fm_rr))++++-------------------------------------------------------------------------+--                                                                      -+--   FiniteSets---a thin veneer                                         -+--                                                                      -+-------------------------------------------------------------------------+type FiniteSet key = FM key ()+emptySet         :: (LeKey key) -> FiniteSet key+mkSet            :: (LeKey key) -> [key] -> FiniteSet key+isEmptySet       :: FiniteSet _ -> Bool+elementOf        :: key -> FiniteSet key -> Bool+minusSet         :: FiniteSet key -> FiniteSet key -> FiniteSet key+setToList        :: FiniteSet key -> [key]+union            :: FiniteSet key -> FiniteSet key -> FiniteSet key++emptySet = emptyFM+mkSet le xs = listToFM le [ (x, ()) | x <- xs]+isEmptySet = isEmptyFM+elementOf = elemFM+minusSet  = minusFM+setToList = keysFM+union = plusFM++
+ src/lib/Curry/Module/Float.curry view
@@ -0,0 +1,170 @@+------------------------------------------------------------------------------+--- A collection of operations on floating point numbers.+------------------------------------------------------------------------------++module Float (+  (*.),(/.),(+.),(-.),(<.),(>.),(<=.),(>=.),+  +  i2f, truncate, round,++  sqrt, log, exp, sin, cos, tan, atan+  ) where++-- The operator declarations are similar to the standard arithmetic operators.++infixl 7 *., /.+infixl 6 +., -.+infix  4 <., >., <=., >=.+++--- Addition on floats.++-- Types of primitive arithmetic functions and predicates++--- Adds two Floats.+(+.)   :: Float -> Float -> Float+x +. y = (prim_Float_plus $# x) $# y++prim_Float_plus :: Float -> Float -> Float+prim_Float_plus external++--- Subtraction on floats.++(-.)   :: Float -> Float -> Float+x -. y = (prim_Float_minus $# x) $# y++prim_Float_minus :: Float -> Float -> Float+prim_Float_minus external++--- Multiplication on floats.++(*.)   :: Float -> Float -> Float+x *. y = (prim_Float_times $# x) $# y++prim_Float_times :: Float -> Float -> Float+prim_Float_times external++--- Division on floats.++(/.)   :: Float -> Float -> Float+x /. y = (prim_Float_divide $# x) $# y++prim_Float_divide :: Float -> Float -> Float+prim_Float_divide external++--- Predicate "less than" on floats.++(<.)   :: Float -> Float -> Bool+x <. y = (prim_Float_lt $# x) $# y++prim_Float_lt :: Float -> Float -> Bool+prim_Float_lt external++--- Predicate "greater than" on floats.++(>.)   :: Float -> Float -> Bool+x >. y = (prim_Float_gt $# x) $# y++prim_Float_gt :: Float -> Float -> Bool+prim_Float_gt external++--- Predicate "less than or equal" on floats.++(<=.)  :: Float -> Float -> Bool+x <=. y = (prim_Float_leq $# x) $# y++prim_Float_leq :: Float -> Float -> Bool+prim_Float_leq external++--- Predicate "greater than or equal" on floats.++(>=.)  :: Float -> Float -> Bool+x >=. y = (prim_Float_geq $# x) $# y++prim_Float_geq :: Float -> Float -> Bool+prim_Float_geq external+++--- Conversion function from integers to floats.++i2f    :: Int -> Float+i2f x = prim_i2f $# x++prim_i2f :: Int -> Float+prim_i2f external++--- Conversion function from floats to integers.+--- The result is the closest integer between the argument and 0.++truncate :: Float -> Int+truncate x = prim_truncate $# x++prim_truncate :: Float -> Int+prim_truncate external++--- Conversion function from floats to integers.+--- The result is the nearest integer to the argument.+--- If the argument is equidistant between two integers,+--- it is rounded to the closest even integer value.++round :: Float -> Int+round x = prim_round $# x++prim_round :: Float -> Int+prim_round external++--- Square root.++sqrt :: Float -> Float+sqrt x = prim_sqrt $# x++prim_sqrt :: Float -> Float+prim_sqrt external++--- Natural logarithm.++log :: Float -> Float+log x = prim_log $# x++prim_log :: Float -> Float+prim_log external++--- Natural exponent.++exp :: Float -> Float+exp x = prim_exp $# x++prim_exp :: Float -> Float+prim_exp external++--- Sine.++sin :: Float -> Float+sin x = prim_sin $# x++prim_sin :: Float -> Float+prim_sin external++--- Cosine.++cos :: Float -> Float+cos x = prim_cos $# x++prim_cos :: Float -> Float+prim_cos external++--- Tangent.++tan :: Float -> Float+tan x = prim_tan $# x++prim_tan :: Float -> Float+prim_tan external++atan :: Float -> Float+atan x = prim_atan $# x++prim_atan :: Float -> Float+prim_atan external++
+ src/lib/Curry/Module/Float.hs.include view
@@ -0,0 +1,95 @@+[ForFunction "prim_Float_plus"+,ForFunction "prim_Float_minus"+,ForFunction "prim_Float_times"+,ForFunction "prim_Float_divide"+,ForFunction "prim_Float_lt"+,ForFunction "prim_Float_gt"+,ForFunction "prim_Float_leq"+,ForFunction "prim_Float_geq"+,ForFunction "prim_i2f"+,ForFunction "prim_truncate"+,ForFunction "prim_round"+,ForFunction "prim_sqrt"+,ForFunction "prim_log"+,ForFunction "prim_exp"+,ForFunction "prim_sin"+,ForFunction "prim_cos"+,ForFunction "prim_tan"+]++instance Fractional C_Float where+  fromRational x = PrimValue (fromRational x)+  recip (PrimValue x) = PrimValue (recip x)++instance Floating C_Float where+  pi = PrimValue pi+  exp (PrimValue x) = PrimValue (exp x)+  log (PrimValue x) = PrimValue (log x)+  sin (PrimValue x) = PrimValue (sin x)+  cos (PrimValue x) = PrimValue (cos x)+  sinh (PrimValue x) = PrimValue (sinh x)+  cosh (PrimValue x) = PrimValue (cosh x)+  asin (PrimValue x) = PrimValue (asin x)+  acos (PrimValue x) = PrimValue (acos x)+  atan (PrimValue x) = PrimValue (atan x)+  asinh (PrimValue x) = PrimValue (asinh x)+  acosh (PrimValue x) = PrimValue (acosh x)+  atanh (PrimValue x) = PrimValue (atanh x)+  +instance RealFrac C_Float where+  properFraction (PrimValue x) = case properFraction x of (b,a) -> (b,PrimValue a)++prim_Float_plus :: C_Float -> C_Float -> Result C_Float+prim_Float_plus x y _ = x+y++prim_Float_minus :: C_Float -> C_Float -> Result C_Float+prim_Float_minus x y _ = x-y++prim_Float_times :: C_Float -> C_Float -> Result C_Float+prim_Float_times x y _ = x*y++prim_Float_divide :: C_Float -> C_Float -> Result C_Float+prim_Float_divide x y _ = x/y++prim_Float_lt :: C_Float -> C_Float -> Result C_Bool+prim_Float_lt x y _ = toCurry (x<y)++prim_Float_gt :: C_Float -> C_Float -> Result C_Bool+prim_Float_gt x y _ = toCurry (x>y)++prim_Float_leq :: C_Float -> C_Float -> Result C_Bool+prim_Float_leq x y _ = toCurry (x<=y)++prim_Float_geq :: C_Float -> C_Float -> Result C_Bool+prim_Float_geq x y _ = toCurry (x>=y)++prim_i2f :: C_Int -> Result C_Float+prim_i2f x _ = fromInteger (fromCurry x)++prim_truncate :: C_Float -> Result C_Int+prim_truncate x _ = toCurry (truncate x :: Integer)++prim_round :: C_Float  -> Result C_Int+prim_round x _ = toCurry (round x :: Integer)++prim_sqrt :: C_Float  -> Result C_Float+prim_sqrt x _ = sqrt x++prim_log :: C_Float   -> Result C_Float+prim_log x _ = log x++prim_exp :: C_Float   -> Result C_Float+prim_exp x _ = exp x++prim_sin :: C_Float   -> Result C_Float+prim_sin x _ = sin x++prim_cos :: C_Float   -> Result C_Float+prim_cos x _ = cos x++prim_tan :: C_Float   -> Result C_Float+prim_tan x _ = tan x++prim_atan :: C_Float   -> Result C_Float+prim_atan x _ = atan x+
+ src/lib/Curry/Module/Generic.hs.include view
@@ -0,0 +1,1 @@+[ForFunction "fold"]
+ src/lib/Curry/Module/Global.curry view
@@ -0,0 +1,63 @@+------------------------------------------------------------------------------+--- Library for handling global entities.+--- A global entity has a name declared in the program.+--- Its value can be accessed and modified by IO actions.+--- Furthermore, global entities can be declared as persistent so that+--- their values are stored across different program executions.+---+--- Currently, it is still experimental so that its interface might+--- be slightly changed in the future.+---+--- A global entity <code>g</code> with an initial value <code>v</code>+--- of type <code>t</code> must be declared by:+--- +--- <code>g :: Global t</code><br/>+--- <code>g = global v spec</code>+---+--- Here, the type <code>t</code> must not contain type variables and+--- <code>spec</code> specifies the storage mechanism for the+--- global entity (see type <code>GlobalSpec</code>).+---+---+--- @author Michael Hanus+--- @version June 2007+------------------------------------------------------------------------------++module Global(Global,GlobalSpec(..),global,readGlobal,writeGlobal) where++----------------------------------------------------------------------++--- The general type of dynamic predicates.+data Global a -- = GlobalDef a GlobalSpec++--- <code>global</code> is only used for the declaration of a global value+--- and should not be used elsewhere. In the future, it might become a keyword.+global :: a -> GlobalSpec -> Global a+global external --v s = GlobalDef v s++--- The storage mechanism for the global entity.+--- @cons Temporary - the global value exists only during a single execution+---                   of a program+--- @cons Persistent f - the global value is stored persisently in file f+---                     (which is created and initialized if it does not exists)+data GlobalSpec = Temporary  | Persistent String+++--- Reads the current value of a global.+readGlobal :: Global a -> IO a+readGlobal g = prim_readGlobal $# g++prim_readGlobal :: Global a -> IO a+prim_readGlobal external+++--- Updates the value of a global.+--- The value is evaluated to a ground constructor term before it is updated.+writeGlobal :: Global a -> a -> IO ()+writeGlobal g v = (prim_writeGlobal $# g) $## v++prim_writeGlobal :: Global a -> a -> IO ()+prim_writeGlobal external+++------------------------------------------------------------------------
+ src/lib/Curry/Module/Global.hs.include view
@@ -0,0 +1,47 @@+[ForType "Global" Nothing,ForFunction "global"+,ForFunction "prim_readGlobal"+,ForFunction "prim_writeGlobal"+]++import System.IO.Unsafe+import qualified Data.IORef as Ref++type C_Global t0 = Prim (Ref.IORef t0)++global :: (Curry t0) => t0 -> C_GlobalSpec -> Result (C_Global t0)+global x spec = ref `seq` (\ _ -> PrimValue ref)+  where ref = unsafePerformIO (Ref.newIORef x) ++prim_readGlobal :: (Curry t0) => C_Global t0 -> Result (C_IO t0)+prim_readGlobal  = prim_readIORef++prim_writeGlobal :: (Curry t0) => C_Global t0 -> t0 -> Result (C_IO T0)+prim_writeGlobal  = prim_writeIORef++----------------------+-- preparing io ref+----------------------++type C_IORef a = Prim (Ref.IORef a)++instance Show (Ref.IORef a) where+  show _ = "IOREF"++instance Read (Ref.IORef a) where+  readsPrec = error "reading IOREF"++instance Generate (Ref.IORef a) where+  genFree    = error "free variable of type IOExts.IORef"+  maxArity _ = error "free variable of type IOExts.IORef"++newIORef :: Curry t0 => t0 -> Result (C_IO (C_IORef t0))+newIORef x = ioFunc0 (Ref.newIORef x) ++prim_readIORef :: Curry t0 => C_IORef t0 -> Result (C_IO t0)+prim_readIORef (PrimValue ref) _ = +   C_IO (\ _ -> do +           v <- Ref.readIORef ref +           Prelude.return (IOVal v))++prim_writeIORef :: Curry t0 => C_IORef t0 -> t0 -> Result (C_IO T0)+prim_writeIORef (PrimValue ref) x = ioFunc0 (Ref.writeIORef ref x) 
+ src/lib/Curry/Module/GraphInductive.curry view
@@ -0,0 +1,575 @@+------------------------------------------------------------------------------+--- Library for inductive graphs (port of a Haskell library by Martin Erwig).+---+--- In this library, graphs are composed and decomposed in an inductive way.+---+--- The key idea is as follows: +---+--- A graph is either <i>empty</i> or it consists of <i>node-context</i> +--- and a <i>graph g'</i> which +--- are put together by a constructor <i>(:&)</i>.+---+--- This constructor <i>(:&)</i>, however, is not a constructor in +--- the sense of abstract +--- data type, but more basically a defined constructing funtion. +---+--- A <i>context</i> is a node together withe the edges to and from this node into+--- the nodes in the graph g'.+--- +--- For examples of how to use this library, cf. the module "GraphAlgorithms".+---+--- @author Bernd Braßel+--- @version May 2005+------------------------------------------------------------------------------+++module GraphInductive (+  empty,+  mkGraph,+  buildGr,+  mkUGraph,++  (:&),+  insNode, insNodes,+  insEdge, insEdges,+  delNode, delNodes,+  delEdge, delEdges,+  +  isEmpty,+  match,+  matchAny,+  noNodes,+  nodeRange,+  context,+  lab,+  neighbors,+  suc,lsuc,+  pre,lpre,+  out,outdeg,+  inn,indeg,+  deg, +  gelem,+  equal,++  node',+  lab',+  labNode',+  neighbors',+  suc',lsuc',+  pre',lpre',+  out',outdeg',+  inn',indeg',+  deg',++  labNodes,+  labEdges,+  nodes,+  edges,+  newNodes,+  +  ufold, +  gmap,nmap,emap,+  labUEdges,labUNodes,++  showGraph,++  Graph,+  Node,LNode,UNode,+  Edge,LEdge,UEdge,+  Context,MContext,Context',UContext,+  GDecomp,Decomp,UDecomp,+  +  Path,LPath,UPath,+  UGr) where++import FiniteMap+import Sort (mergeSort)+import Maybe ++infixr 5 .:+++---------------------------------------+--- Graph composition+---------------------------------------++infixr 5 :&+++--- (:&) takes a node-context and a Graph and yields a new graph.+---+--- The according key idea is detailed at the beginning.+--- +--- nl is the type of the node labels and el the edge labels.+---+--- Note that it is an error to induce a context for +--- a node already contained in the graph.++(:&) :: Context nl el -> Graph nl el -> Graph nl el+(p,v,l,s) :& (Gr g) +  | elemFM v g = error ("Node Exception, Node: "++show v++": "++show l)+  | otherwise  = Gr g3+      where g1 = addToFM g v (p,l,s)+            g2 = updAdj g1 p (addSucc v)+            g3 = updAdj g2 s (addPred v)++--- The type variables of Graph are <i>nodeLabel</i> and <i>edgeLabel</i>.+--- The internal representation of Graph is hidden.++data Graph nodeLabel edgeLabel = Gr (GraphRep nodeLabel edgeLabel)++--- Nodes and edges themselves (in contrast to their labels) are coded as integers.+---+--- For both of them, there are variants as labeled, unlabelwd and quasi unlabeled +--- (labeled with ()).+---+-- Nodes and their labels+---+--- Unlabeled node+type  Node   = Int              +--- Labeled node+type LNode a = (Node,a)         +--- Quasi-unlabeled node+type UNode   = LNode ()++-- Edges and their labels+---+--- Unlabeled edge+type  Edge   = (Node,Node)      +--- Labeled edge+type LEdge b = (Node,Node,b)    +--- Quasi-unlabeled edge+type UEdge   = LEdge ()         ++--- The context of a node is the node itself (along with label) and its adjacent nodes.+--- Thus, a context is a quadrupel, for node n it is of the form+--- (edges to n,node n,n's label,edges from n)++type Context a b  = (Adj b,Node,a,Adj b) -- Context a b "=" Context' a b "+" Node++--- Labeled links to or from a 'Node'.+type Adj b = [(b,Node)]++-- there are some useful variants of the context type +--- maybe context+type MContext a b = Maybe (Context a b)+--- context with edges and node label only, without the node identifier itself+type Context' a b = (Adj b,a,Adj b)+--- Unlabeled context.+type UContext     = ([Node],Node,[Node])++------------------------------------+-- graph decomposition+------------------------------------++--- decompose a graph into the 'Context' for an arbitrarily-chosen 'Node'+--- and the remaining 'Graph'.+--- +--- In order to use graphs as abstract data structures, we also need means to+--- decompose a graph. This decompostion should work as much like pattern matching+--- as possible. The normal matching is done by the function matchAny, which takes+--- a graph and yields a graph decompostion.+---+--- According to the main idea, matchAny . (:&) should be an identity.++matchAny  :: Graph a b -> GDecomp a b+matchAny (Gr g)+  | isEmptyFM g = error "Match Exception, Empty Graph"+  | otherwise = case head (fmToListPreOrder g) of+                  (v,_) -> case match v (Gr g) of+                            (Just c,g') -> (c,g') ++--- A graph decompostion is a context for a node n and the remaining graph without+--- that node.++type GDecomp a b  = (Context a b,Graph a b)++--- a decomposition with a maybe context +type Decomp a b = (MContext a b,Graph a b)++--- Unlabeled decomposition.+type UDecomp g    = (Maybe UContext,g)++----------------------------------------------------------------------+-- basic graph operations+----------------------------------------------------------------------++----------------------------------+-- creating graphs+----------------------------------++--- An empty 'Graph'.+-- internal representation by finite maps+empty :: Graph _ _+empty = Gr (emptyFM (<))++--- Create a 'Graph' from the list of 'LNode's and 'LEdge's.+mkGraph   :: [LNode a] -> [LEdge b] -> Graph a b+mkGraph vs es  = (insEdges es . insNodes vs) empty++--- Build a 'Graph' from a list of 'Context's.+buildGr ::  [Context a b] -> Graph a b+buildGr = foldr (:&) empty++--- Build a quasi-unlabeled 'Graph' from the list of 'Node's and 'Edge's.+mkUGraph ::  [Node] -> [Edge] -> Graph () ()+mkUGraph vs es = mkGraph (labUNodes vs) (labUEdges es) ++----------------------------------------------+-- adding to and deleting from graphs+----------------------------------------------+++--- Insert a 'LNode' into the 'Graph'.+insNode ::  LNode a -> Graph a b -> Graph a b+insNode (v,l) = (([],v,l,[]):&)++--- Insert a 'LEdge' into the 'Graph'.+insEdge ::  LEdge b -> Graph a b -> Graph a b+insEdge (v,w,l) g = (pr,v,la,(l,w):su) :& g'+                    where (Just (pr,_,la,su),g') = match v g++--- Remove a 'Node' from the 'Graph'.+delNode ::  Node -> Graph a b -> Graph a b+delNode v = delNodes [v]++--- Remove an 'Edge' from the 'Graph'.+delEdge ::  Edge -> Graph a b -> Graph a b+delEdge (v,w) g = case match v g of+                  (Nothing,_)        -> g+                  (Just (p,v',l,s),g') -> (p,v',l,filter ((/=w).snd) s) :& g'++--- Insert multiple 'LNode's into the 'Graph'.+insNodes   ::  [LNode a] -> Graph a b -> Graph a b+insNodes vs g = foldr insNode g vs++--- Insert multiple 'LEdge's into the 'Graph'.+insEdges ::  [LEdge b] -> Graph a b -> Graph a b+insEdges es g = foldr insEdge g es++--- Remove multiple 'Node's from the 'Graph'.+delNodes ::  [Node] -> Graph a b -> Graph a b+delNodes []     g = g+delNodes (v:vs) g = delNodes vs (snd (match v g))  ++--- Remove multiple 'Edge's from the 'Graph'.+delEdges ::  [Edge]    -> Graph a b -> Graph a b+delEdges es g = foldr delEdge g es+++-----------------------------------------+-- retrieving information about graphs+-----------------------------------------++--- test if the given 'Graph' is empty.+isEmpty :: Graph _ _ -> Bool+isEmpty (Gr g)  = isEmptyFM g++--- match is the complement side of (:&), decomposing a 'Graph' into the +--- 'MContext' found for the given node and the remaining 'Graph'.+match     :: Node -> Graph a b -> Decomp a b+match v (Gr g) = +  maybe +   (Nothing,Gr g) +   (\ (g',(_,(p,l,s))) ->+             let s'   = filter ((/=v) . snd) s+                 p'   = filter ((/=v) . snd) p+                 g1   = updAdj g' s' (clearPred v)+                 g2   = updAdj g1 p' (clearSucc v)+              in (Just (p',v,l,s),Gr g2))+   (splitFM g v)++++--- The number of 'Node's in a 'Graph'.+noNodes   :: Graph _ _ -> Int+noNodes   (Gr g) = sizeFM g++--- The minimum and maximum 'Node' in a 'Graph'.+nodeRange :: Graph _ _ -> (Node,Node)+nodeRange (Gr g) | isEmptyFM g = (0,0)+                 | otherwise = (ix (minFM g),ix (maxFM g)) where ix = fst . fromJust+++--- Find the context for the given 'Node'.  In contrast to "match",+--- "context" causes an error if the 'Node' is+--- not present in the 'Graph'.+context ::  Graph a b -> Node -> Context a b+context g v = case match v g of+                (Nothing,_) -> error ("Match Exception, Node: "++show v)+                (Just c,_)  -> c ++--- Find the label for a 'Node'.+lab ::  Graph a _ -> Node -> Maybe a+lab g v = fst (match v g) >>- Just . lab' ++--- Find the neighbors for a 'Node'.+neighbors ::  Graph _ _ -> Node -> [Node] +neighbors = (\(p,_,_,s) -> map snd (p++s)) .: context++--- Find all 'Node's that have a link from the given 'Node'.+suc ::  Graph _ _ -> Node -> [Node]+suc = map snd .: context4++--- Find all 'Node's that link to to the given 'Node'.+pre ::  Graph _ _ -> Node -> [Node] +pre = map snd .: context1++--- Find all Nodes and their labels, which are linked from the given 'Node'.+lsuc ::  Graph _ b -> Node -> [(Node,b)]+lsuc = map flip2 .: context4++--- Find all 'Node's that link to the given 'Node' and the label of each link.+lpre ::  Graph _ b -> Node -> [(Node,b)] +lpre = map flip2 .: context1++--- Find all outward-bound 'LEdge's for the given 'Node'.+out ::  Graph _ b -> Node -> [LEdge b] +out g v = map (\(l,w)->(v,w,l)) (context4 g v)++--- Find all inward-bound 'LEdge's for the given 'Node'.+inn ::  Graph _ b -> Node -> [LEdge b] +inn g v = map (\(l,w)->(w,v,l)) (context1 g v)++--- The outward-bound degree of the 'Node'.+outdeg ::  Graph _ _ -> Node -> Int+outdeg = length .: context4++--- The inward-bound degree of the 'Node'.+indeg ::  Graph _ _ -> Node -> Int+indeg  = length .: context1++--- The degree of the 'Node'.+deg ::  Graph _ _ -> Node -> Int+deg = (\(p,_,_,s) -> length p+length s) .: context++--- 'True' if the 'Node' is present in the 'Graph'.+gelem ::  Node -> Graph _ _ -> Bool+gelem v g = isJust (fst (match v g)) +           ++--- graph equality+equal :: Graph a b -> Graph a b -> Bool+equal g g' = slabNodes g == slabNodes g' && slabEdges g == slabEdges g'++-- comparing nodes +nodeComp :: LNode b -> LNode b -> Ordering+nodeComp n n' | n == n'      = EQ+              | fst n<fst n' = LT+              | otherwise    = GT++-- sort contained nodes +slabNodes :: Graph a _ -> [LNode a]+slabNodes = sortBy nodeComp . labNodes++-- comparing edges+edgeComp :: LEdge b -> LEdge b -> Ordering+edgeComp e e' | e == e'              = EQ+              | v<x || (v==x && w<y) = LT+              | otherwise            = GT++  where+    (v,w,_) = e+    (x,y,_) = e'++-- sort contained edges+slabEdges :: Graph _ b -> [LEdge b]+slabEdges = sortBy edgeComp . labEdges++-------------------------------------------+-- retrieving information from contexts+-------------------------------------------++--- The 'Node' in a 'Context'.+node' :: Context _ _ -> Node+node' (_,v,_,_) = v++--- The label in a 'Context'.+lab' :: Context a _ -> a+lab' (_,_,l,_) = l++--- The 'LNode' from a 'Context'.+labNode' :: Context a _ -> LNode a+labNode' (_,v,l,_) = (v,l)++--- All 'Node's linked to or from in a 'Context'.+neighbors' :: Context _ _ -> [Node] +neighbors' (p,_,_,s) = map snd p++map snd s++--- All 'Node's linked to in a 'Context'.+suc' :: Context _ _ -> [Node]+suc' (_,_,_,s) = map snd s++--- All 'Node's linked from in a 'Context'.+pre' :: Context _ _ -> [Node] +pre' (p,_,_,_) = map snd p++--- All 'Node's linked from in a 'Context', and the label of the links.+lpre' :: Context _ b -> [(Node,b)] +lpre' (p,_,_,_) = map flip2 p++--- All 'Node's linked from in a 'Context', and the label of the links.+lsuc' :: Context _ b -> [(Node,b)]+lsuc' (_,_,_,s) = map flip2 s++--- All outward-directed 'LEdge's in a 'Context'.+out' :: Context _ b -> [LEdge b] +out' (_,v,_,s) = map (\(l,w)->(v,w,l)) s++--- All inward-directed 'LEdge's in a 'Context'.+inn' :: Context _ b -> [LEdge b] +inn' (p,v,_,_) = map (\(l,w)->(w,v,l)) p++--- The outward degree of a 'Context'.+outdeg' :: Context _ _ -> Int+outdeg' (_,_,_,s) = length s++--- The inward degree of a 'Context'.+indeg' :: Context _ _ -> Int+indeg' (p,_,_,_) = length p++--- The degree of a 'Context'.+deg' :: Context _ _ -> Int+deg' (p,_,_,s) = length p+length s++------------------------------------+-- listifying graphs+------------------------------------++--- A list of all 'LNode's in the 'Graph'.+labNodes (Gr g) = map (\(v,(_,l,_))->(v,l)) (fmToList g)++--- A list of all 'LEdge's in the 'Graph'.+labEdges  :: Graph _ b -> [LEdge b]+labEdges  (Gr g) = concatMap (\(v,(_,_,s))->map (\(l,w)->(v,w,l)) s) (fmToList g)++--- List all 'Node's in the 'Graph'.+nodes ::  Graph _ _ -> [Node]+nodes = map fst . labNodes++--- List all 'Edge's in the 'Graph'.+edges ::  Graph _ _ -> [Edge]+edges = map (\(v,w,_)->(v,w)) . labEdges++--- List N available 'Node's, ie 'Node's that are not used in the 'Graph'.+newNodes ::  Int -> Graph _ _ -> [Node]+newNodes i g = [n+1..n+i] where (_,n) = nodeRange g++------------------------------------+-- some convenient type synonyms+------------------------------------++-- Paths and their labels+--- Unlabeled path+type Path    = [Node]           +--- Labeled path+type LPath a = [LNode a]+--- Quasi-unlabeled path+type UPath   = [UNode]          ++type GraphRep a b = FM Node (Context' a b)++--- a graph without any labels+type UGr = Graph () ()++------------------------+-- Functions on Graphs+------------------------++--- Fold a function over the graph.+ufold :: ((Context a b) -> c -> c) -> c -> Graph a b -> c+ufold f u g | isEmpty g = u+            | otherwise = f c (ufold f u g') +            where (c,g') = matchAny g++--- Map a function over the graph.+gmap :: (Context a b -> Context c d) -> Graph a b -> Graph c d+gmap f = ufold (\c->((f c):&)) empty++--- Map a function over the 'Node' labels in a graph.+nmap ::  (a -> c) -> Graph a b -> Graph c b+nmap f = gmap (\(p,v,l,s)->(p,v,f l,s))++--- Map a function over the 'Edge' labels in a graph.+emap ::  (b -> c) -> Graph a b -> Graph a c+emap f = gmap (\(p,v,l,s)->(map1 f p,v,l,map1 f s))+         where map1 g = map (\(l,v)->(g l,v))++--- add label () to list of edges (node,node)+labUEdges = map (\(v,w)->(v,w,()))++--- add label () to list of nodes+labUNodes = map (\v->(v,()))+ +----------------------------------------------------------------------+-- textual Graph representation +----------------------------------------------------------------------++--- Represent Graph as String+showGraph :: Graph _ _ -> String+showGraph (Gr g) = unlines (map showNode (fmToList g))++--  +showNode (v,(_,l',s)) = show v ++ ":" ++ show l' ++ "->"++ show s ++----------------------------------------------------------------------+-- UTILITIES+----------------------------------------------------------------------+-- auxiliary functions used in the implementation of the +-- derived class members+-- +(.:) :: (c -> d) -> (a -> b -> c) -> (a -> b -> d)+-- f .: g = \x y->f (g x y)+-- f .: g = (f .) . g+-- (.:) f = ((f .) .)+-- (.:) = (.) (.) (.)+(.:) = (.) . (.)++fst4 (x,_,_,_) = x+{- not used+snd4 (_,x,_,_) = x+thd4 (_,_,x,_) = x+-}+fth4 (_,_,_,x) = x++{- not used+fst3 (x,_,_) = x+snd3 (_,x,_) = x+thd3 (_,_,x) = x+-}++flip2 (x,y) = (y,x)++-- projecting on context elements+--+-- context1 g v = fst4 (contextP g v)+context1 :: Graph _ b -> Node -> Adj b+{- not used+context2 :: Graph gr => gr a b -> Node -> Node+context3 :: Graph gr => gr a b -> Node -> a+-}+context4 :: Graph _ b -> Node -> Adj b++context1 = fst4 .: context+{- not used+context2 = snd4 .: context+context3 = thd4 .: context+-}+context4 = fth4 .: context++addSucc v l (p,l',s) = (p,l',(l,v):s)+addPred v l (p,l',s) = ((l,v):p,l',s)++clearSucc v _ (p,l,s) = (p,l,filter ((/=v).snd) s)+clearPred v _ (p,l,s) = (filter ((/=v).snd) p,l,s)++updAdj :: GraphRep a b -> Adj b -> (b -> Context' a b -> Context' a b) -> GraphRep a b+updAdj g []         _              = g+updAdj g ((l,v):vs) f +   | elemFM v g = updAdj (updFM g v (f l)) vs f+   | otherwise  = error ("Edge Exception, Node: "++show v)++sortBy p = mergeSort (\x y -> let pxy = p x y in pxy==EQ||pxy==LT)+++
+ src/lib/Curry/Module/IArray.hs.include view
@@ -0,0 +1,1 @@+[ForType "Array" Nothing,ForFunction "array",ForFunction "!",ForFunction "bounds",ForFunction "assocs",ForFunction "//",ForFunction "accum"]
+ src/lib/Curry/Module/IO.curry view
@@ -0,0 +1,178 @@+-----------------------------------------------------------------------------+--- Library for IO operations like reading and writing files+--- that are not already contained in the prelude.+---+--- @author Michael Hanus, Bernd Braßel+--- @version June 2006+-----------------------------------------------------------------------------++module IO(Handle,IOMode(..),SeekMode(..),stdin,stdout,stderr,+          openFile,hClose,hFlush,hIsEOF,isEOF,+          hSeek,hWaitForInput,hWaitForInputs,hReady, +          hGetChar,hGetLine,hGetContents,getContents,+          hPutChar,hPutStr,hPutStrLn,hPrint,+          hIsReadable,hIsWritable) where++--- The abstract type of a handle for a stream.+data Handle -- internally defined++--- The modes for opening a file.+data IOMode = ReadMode | WriteMode | AppendMode++--- The modes for positioning with <code>hSeek</code> in a file.+data SeekMode = AbsoluteSeek | RelativeSeek | SeekFromEnd+++--- Standard input stream.+stdin :: Handle+stdin external++--- Standard output stream.+stdout :: Handle+stdout external++--- Standard error stream.+stderr :: Handle+stderr external++--- Opens a file in specified mode and returns a handle to it.+openFile :: String -> IOMode -> IO Handle+openFile filename mode = (prim_openFile $## filename) $# mode++prim_openFile :: String -> IOMode -> IO Handle+prim_openFile external++--- Closes a file handle and flushes the buffer in case of output file.+hClose :: Handle -> IO ()+hClose h = prim_hClose $# h++prim_hClose :: Handle -> IO ()+prim_hClose external++--- Flushes the buffer associated to handle in case of output file.+hFlush :: Handle -> IO ()+hFlush h = prim_hFlush $# h++prim_hFlush :: Handle -> IO ()+prim_hFlush external++--- Is handle at end of file?+hIsEOF :: Handle -> IO Bool+hIsEOF h = prim_hIsEOF $# h++prim_hIsEOF :: Handle -> IO Bool+prim_hIsEOF external++--- Is standard input at end of file?+isEOF :: IO Bool+isEOF = hIsEOF stdin+++--- Set the position of a handle to a seekable stream (e.g., a file).+--- If the second argument is <code>AbsoluteSeek</code>,+--- <code>SeekFromEnd</code>, or <code>RelativeSeek</code>,+--- the position is set relative to the beginning of the file,+--- to the end of the file, or to the current position, respectively.+hSeek :: Handle -> SeekMode -> Int -> IO ()+hSeek h sm pos = ((prim_hSeek $# h) $# sm) $## pos++prim_hSeek :: Handle -> SeekMode -> Int -> IO ()+prim_hSeek external+++--- Waits until input is available on the given handle.+--- If no input is available within t milliseconds, it returns False,+--- otherwise it returns True.+--- @param handle - a handle for an input stream+--- @param timeout - milliseconds to wait for input (< 0 : no time out)++hWaitForInput :: Handle -> Int -> IO Bool+hWaitForInput h i = (prim_hWaitForInput $# h)  $## i++prim_hWaitForInput :: Handle -> Int -> IO Bool+prim_hWaitForInput external++--- Waits until input is available on some of the given handles.+--- If no input is available within t milliseconds, it returns -1,+--- otherwise it returns the index of the corresponding handle with the available+--- data.+--- @param handles - a list of handles for input streams+--- @param timeout - milliseconds to wait for input (< 0 : no time out)+--- @return -1 if no input is available within the time out, otherwise i+---         if (handles!!i) has data available+hWaitForInputs :: [Handle] -> Int -> IO Int+hWaitForInputs handles timeout =+   (prim_hWaitForInputs $## handles) $## timeout++prim_hWaitForInputs :: [Handle] -> Int -> IO Int+prim_hWaitForInputs external++--- Checks whether an input is available on a given handle.+hReady :: Handle -> IO Bool+hReady h = hWaitForInput h 0+++--- Reads a character from an input handle and returns it.+hGetChar    :: Handle -> IO Char+hGetChar h = prim_hGetChar $# h++prim_hGetChar :: Handle -> IO Char+prim_hGetChar external++--- Reads a line from an input handle and returns it.+hGetLine  :: Handle -> IO String+hGetLine h = do c <- hGetChar h+                if c=='\n' then return ""+                           else do cs <- hGetLine h+                                   return (c:cs)++--- Reads the complete contents from an input handle and closes the input handle+--- before returning the contents.+hGetContents  :: Handle -> IO String+hGetContents h = do+  eof <- hIsEOF h+  if eof then hClose h >> return ""+         else do c <- hGetChar h+                 cs <- hGetContents h+                 return (c:cs)++--- Reads the complete contents from the standard input stream until EOF.+getContents  :: IO String+getContents = hGetContents stdin++--- Puts a character to an output handle.+hPutChar    :: Handle -> Char -> IO ()+hPutChar h c = (prim_hPutChar $# h)  $## c++prim_hPutChar :: Handle -> Char -> IO ()+prim_hPutChar external++--- Puts a string to an output handle.+hPutStr :: Handle -> String -> IO ()+hPutStr _ []     = done+hPutStr h (c:cs) = hPutChar h c >> hPutStr h cs++--- Puts a string with a newline to an output handle.+hPutStrLn :: Handle -> String -> IO ()+hPutStrLn h s = hPutStr h s >> hPutChar h '\n'++--- Converts a term into a string and puts it to an output handle.+hPrint :: Handle -> _ -> IO ()+hPrint h = hPutStrLn h . show+++--- Is the handle readable?+hIsReadable :: Handle -> IO Bool+hIsReadable  h = prim_hIsReadable  $# h++prim_hIsReadable :: Handle -> IO Bool+prim_hIsReadable external++--- Is the handle writable?+hIsWritable :: Handle -> IO Bool+hIsWritable h = prim_hIsWritable  $# h++prim_hIsWritable :: Handle -> IO Bool+prim_hIsWritable external++
+ src/lib/Curry/Module/IO.hs.include view
@@ -0,0 +1,129 @@+[ForType "Handle" Nothing+,ForFunction "stdin"+,ForFunction "stdout"+,ForFunction "stderr"+,ForFunction "prim_openFile"+,ForFunction "prim_hClose"+,ForFunction "prim_hFlush"+,ForFunction "prim_hIsEOF"+,ForFunction "prim_hSeek"+,ForFunction "prim_hWaitForInput"+,ForFunction "prim_hGetChar"+,ForFunction "prim_hPutChar"+,ForFunction "prim_hIsReadable"+,ForFunction "prim_hIsWritable"+]++import System.IO+import qualified System.IO as SI+import Control.Concurrent+import qualified Control.Exception as CE++-- somehow using an either type did not get the curry class for prim through.+data IOHandle = One Handle | Two Handle Handle deriving (Show,Eq)+type C_Handle = Prim IOHandle++inputHandle, outputHandle :: IOHandle -> Handle+inputHandle  (One h)   = h+inputHandle  (Two h _) = h+outputHandle (One h)   = h+outputHandle (Two _ h) = h+++instance Read IOHandle where+  readsPrec = error "reading Handle"++instance Generate IOHandle where+  genFree    = error "free variable of type IO-Handle"+  maxArity _ = error "free variable of type IO-Handle"+++instance ConvertCH C_IOMode SI.IOMode where+  toCurry SI.ReadMode = C_ReadMode+  toCurry SI.WriteMode = C_WriteMode+  toCurry SI.AppendMode = C_AppendMode++  fromCurry C_ReadMode = SI.ReadMode+  fromCurry C_WriteMode = SI.WriteMode+  fromCurry C_AppendMode = SI.AppendMode++instance ConvertCH C_SeekMode SI.SeekMode where+  toCurry SI.AbsoluteSeek = C_AbsoluteSeek+  toCurry SI.RelativeSeek = C_RelativeSeek+  toCurry SI.SeekFromEnd  = C_SeekFromEnd++  fromCurry C_AbsoluteSeek = SI.AbsoluteSeek+  fromCurry C_RelativeSeek = SI.RelativeSeek+  fromCurry C_SeekFromEnd  = SI.SeekFromEnd++stdin :: Result C_Handle+stdin _ = PrimValue (One SI.stdin)++stdout :: Result C_Handle+stdout _ = PrimValue (One SI.stdout)++stderr :: Result C_Handle+stderr _ = PrimValue (One SI.stderr)++prim_openFile :: List C_Char -> C_IOMode -> Result (C_IO C_Handle)+prim_openFile = ioFunc2 (\ s m -> do+  h <- SI.openFile s m+  Prelude.return (One h))++prim_hClose :: C_Handle -> Result (C_IO T0)+prim_hClose = ioFunc1 (\ eh -> case eh of+  One h     -> SI.hClose h+  Two h1 h2 -> SI.hClose h1 Prelude.>> SI.hClose h2)++prim_hFlush :: C_Handle -> Result (C_IO T0)+prim_hFlush = ioFunc1 (SI.hFlush . outputHandle)++prim_hIsEOF :: C_Handle -> Result (C_IO C_Bool)+prim_hIsEOF = ioFunc1 (SI.hIsEOF . inputHandle)++prim_hSeek :: C_Handle -> C_SeekMode -> C_Int -> Result (C_IO T0)+prim_hSeek = ioFunc3 (\ h -> SI.hSeek (inputHandle h))++prim_hWaitForInput ::  C_Handle -> C_Int -> Result (C_IO C_Bool)+prim_hWaitForInput = ioFunc2 (\ h -> myhWaitForInput (inputHandle h))++myhWaitForInput :: SI.Handle -> Int -> IO Bool+myhWaitForInput h i =+  if i Prelude.< 0 +  then SI.hIsEOF h Prelude.>>= Prelude.return . Prelude.not+  else SI.hWaitForInput h i ++selectHandle :: [IOHandle] -> Int -> IO Int+selectHandle handles t = do+  mvar <- newEmptyMVar+  threads <- mapM (\ (i,h) -> forkIO (waitOnHandle (inputHandle h) i t mvar)) +                  (zip [0..] handles)+  inspectRes (length handles) mvar threads++inspectRes :: Int -> MVar (Maybe Int) -> [ThreadId] ->  IO Int+inspectRes 0 _    _       = Prelude.return (-1)+inspectRes n mvar threads = do+  res <- readMVar mvar+  case res of +    Nothing -> inspectRes (n-1) mvar threads+    Just v  -> mapM_ killThread threads Prelude.>> Prelude.return v++waitOnHandle :: SI.Handle -> Int -> Int -> MVar (Maybe Int) -> IO ()+waitOnHandle h v t mvar = do+   	    ready <- myhWaitForInput h t+  	    putMVar mvar (if ready then Just v else Nothing)++prim_hWaitForInputs :: List C_Handle -> C_Int -> Result (C_IO C_Int)+prim_hWaitForInputs  = ioFunc2 selectHandle++prim_hGetChar :: C_Handle -> Result (C_IO C_Char)+prim_hGetChar = ioFunc1 (SI.hGetChar . inputHandle)++prim_hPutChar :: C_Handle -> C_Char -> Result (C_IO T0)+prim_hPutChar = ioFunc2 (SI.hPutChar . outputHandle)++prim_hIsReadable :: C_Handle -> Result (C_IO C_Bool)+prim_hIsReadable = ioFunc1 (SI.hIsReadable . inputHandle)++prim_hIsWritable :: C_Handle -> Result (C_IO C_Bool)+prim_hIsWritable = ioFunc1 (SI.hIsWritable . outputHandle)
+ src/lib/Curry/Module/IOExts.curry view
@@ -0,0 +1,126 @@+------------------------------------------------------------------------------+--- Library with some useful extensions to the IO monad.+---+--- @author Michael Hanus+--- @version June 2007+------------------------------------------------------------------------------++module IOExts(execCmd,connectToCommand,+              readCompleteFile,updateFile,+              exclusiveIO,setAssoc,getAssoc,+              IORef,newIORef,readIORef,writeIORef) where++import System+import IO(Handle)++--- Executes a command with a new default shell process.+--- The standard I/O streams of the new process (stdin,stdout,stderr)+--- are returned as handles so that they can be explicitly manipulated.+--- They should be closed with <code>IO.hClose</code> since they are not+--- closed automatically when the process terminates.+--- @param cmd - the shell command to be executed+--- @return the handles of the input/output/error streams of the new process+execCmd :: String -> IO (Handle,Handle,Handle)+execCmd cmd = prim_execCmd $## cmd++prim_execCmd :: String -> IO (Handle,Handle,Handle)+prim_execCmd external+++--- Executes a command with a new default shell process.+--- The input and output streams of the new process is returned+--- as one handle which is both readable and writable.+--- Thus, writing to the handle produces input to the process and+--- output from the process can be retrieved by reading from this handle.+--- The handle should be closed with <code>IO.hClose</code> since they are not+--- closed automatically when the process terminates.+--- @param cmd - the shell command to be executed+--- @return the handle connected to the input/output streams+---         of the new process+connectToCommand :: String -> IO Handle+connectToCommand cmd = prim_connectToCmd $## cmd++prim_connectToCmd :: String -> IO Handle+prim_connectToCmd external+++--- An action that reads the complete contents of a file and returns it.+--- This action can be used instead of the (lazy) <code>readFile</code>+--- action if the contents of the file might be changed.+--- @param file - the name of the file+--- @return the complete contents of the file+readCompleteFile :: String -> IO String+readCompleteFile file = do+  s <- readFile file+  f s (return s)+ where+   f []     r = r+   f (_:cs) r = f cs r+++--- An action that updates the contents of a file.+--- @param f - the function to transform the contents+--- @param file - the name of the file+updateFile :: (String -> String) -> String -> IO ()+updateFile f file = do+  s <- readCompleteFile file+  writeFile file (f s)+++--- Forces the exclusive execution of an action via a lock file.+--- For instance, (exclusiveIO "myaction.lock" act) ensures that+--- the action "act" is not executed by two processes on the same+--- system at the same time.+--- @param lockfile - the name of a global lock file+--- @param action - the action to be exclusively executed+--- @return the result of the execution of the action+exclusiveIO :: String -> IO a -> IO a+exclusiveIO lockfile action = do+  system ("lockfile -1 "++lockfile)+  catchFail (do actionResult <- action+                system ("rm -f "++lockfile)+                return actionResult )+            (system ("rm -f "++lockfile) >> failed)+++--- Defines a global association between two strings.+--- Both arguments must be evaluable to ground terms before applying+--- this operation.+setAssoc :: String -> String -> IO ()+setAssoc key val = (prim_setAssoc $## key) $## val++prim_setAssoc :: String -> String -> IO ()+prim_setAssoc external+++--- Gets the value associated to a string.+--- Nothing is returned if there does not exist an associated value.+getAssoc :: String -> IO (Maybe String)+getAssoc key = prim_getAssoc $## key++prim_getAssoc :: String -> IO (Maybe String)+prim_getAssoc external+++--- Mutable variables containing values of some type.+--- The values are not evaluated when they are assigned to an IORef.+data IORef _ ++--- Creates a new IORef with an initial values.+newIORef :: a -> IO (IORef a)+newIORef external++--- Reads the current value of an IORef.+readIORef :: IORef a -> IO a+readIORef ref = prim_readIORef $# ref++prim_readIORef :: IORef a -> IO a+prim_readIORef external++--- Updates the value of an IORef.+writeIORef :: IORef a -> a -> IO ()+writeIORef ref val = (prim_writeIORef $# ref) val++prim_writeIORef :: IORef a -> a -> IO ()+prim_writeIORef external+
+ src/lib/Curry/Module/IOExts.hs.include view
@@ -0,0 +1,81 @@+[ForType "IORef" Nothing+,ForFunction "prim_execCmd"+,ForFunction "choiceStreamOrMsgs"+,ForFunction "prim_setAssoc"+,ForFunction "prim_getAssoc"+,ForFunction "newIORef"+,ForFunction "prim_readIORef"+,ForFunction "prim_writeIORef"+]++import Data.IORef+import qualified Data.IORef as Ref+import System.Process+import Network+import qualified Network.Socket as SO+import System.IO.Unsafe+import Control.Concurrent+import System.IO++import Curry.Module.IO+import qualified Curry.Module.Global++instance Eq (List C_Char) where+  List == List = True+  List == (_ :< _) = False+  (_ :< _) == List = False+  (C_Char c :< xs) == (C_Char c' :< ys) = c Prelude.== c' && xs Prelude.== ys++type Assocs = [(C_String,C_String)]++assocs :: Ref.IORef Assocs+assocs = unsafePerformIO (Ref.newIORef [])++getAssocs :: IO Assocs+getAssocs = Ref.readIORef assocs++setAssocs :: Assocs -> IO ()+setAssocs as = Ref.writeIORef assocs as++prim_execCmd :: List C_Char -> Result (C_IO (T3 C_Handle C_Handle C_Handle))+prim_execCmd = ioFunc1 (\s -> do+     (h1,h2,h3,_) <- runInteractiveCommand s+     Prelude.return (One h1,One h2,One h3))++prim_connectToCmd :: List C_Char -> Result (C_IO C_Handle)+prim_connectToCmd = ioFunc1 (\s -> do+  (hin,hout,herr,_) <- runInteractiveCommand s+  forkIO (forwardError herr)+  Prelude.return (Two hout hin))++forwardError :: Handle -> IO ()+forwardError h = do+   eof <- hIsEOF h +   if eof then Prelude.return ()+          else do+            line <- hGetLine h +            hPutStrLn System.IO.stderr line+            forwardError h++prim_setAssoc :: List C_Char -> List C_Char -> Result (C_IO T0)+prim_setAssoc key val = ioFunc0 (do +                    as <- getAssocs +                    setAssocs ((key,val):as))+++prim_getAssoc :: List C_Char -> Result (C_IO (C_Maybe (List C_Char)))+prim_getAssoc key _ = C_IO (\_ -> do +         as <- getAssocs+         Prelude.return (IOVal (maybe C_Nothing C_Just (lookup key as))))+++type C_IORef a = Curry.Module.Global.C_IORef a++newIORef :: Curry t0 => t0 -> Result (C_IO (C_IORef t0))+newIORef = Curry.Module.Global.newIORef++prim_readIORef :: Curry t0 => C_IORef t0 -> Result (C_IO t0)+prim_readIORef = Curry.Module.Global.prim_readIORef++prim_writeIORef :: Curry t0 => C_IORef t0 -> t0 -> Result (C_IO T0)+prim_writeIORef = Curry.Module.Global.prim_writeIORef
+ src/lib/Curry/Module/Integer.curry view
@@ -0,0 +1,209 @@+------------------------------------------------------------------------------+--- A collection of common operations on integer numbers.+--- Most operations make no assumption on the precision of integers.+--- Operation <EM>bitNot</EM> is necessarily an exception.+---+--- @author Sergio Antoy+--- @version Sept 4, 2003+--  Thu Sep  4 12:42:05 PDT 2003+------------------------------------------------------------------------------++module Integer(pow, ilog, isqrt, factorial, binomial,+               abs, max, min, max3, min3, maxlist, minlist,+               bitTrunc, bitAnd, bitOr, bitNot, bitXor,+               even, odd) where++------------------------------------------------------------------+--                       Public Operations+------------------------------------------------------------------++--- The value of <EM>pow a b</EM> is <EM>a</EM>+--- raised to the power of <EM>b</EM>.+--- Fails if <EM>b < 0</EM>.+--- Executes in <EM>O(log b)</EM> steps.+---+--- @param a - The base.+--- @param b - The exponent.+--- @return <EM>a</EM> raised to the power of <EM>b</EM>.++pow a b | b>= 0 = powaux 1 a b+  where+    powaux n x y = if y == 0 then n+                   else powaux (n * if (y `mod` 2 == 1) then x else 1)+                               (x * x)+                               (y `div` 2)++--- The value of <EM>ilog n</EM> is the floor of the logarithm+--- in the base 10 of <EM>n</EM>.+--- Fails if <EM>n <= 0</EM>.+--- For positive integers, the returned value is+--- 1 less the number of digits in the decimal representation of <EM>n</EM>.+---+--- @param n - The argument.+--- @return the floor of the logarithm in the base 10 of <EM>n</EM>.++ilog n | n>0 = if n<10 then 0 else 1 + ilog (n `div` 10)++--- The value of <EM>isqrt n</EM> is the floor+--- of the square root of <EM>n</EM>.+--- Fails if <EM>n < 0</EM>.+--- Executes in <EM>O(log n)</EM> steps, but there must be a better way.+---+--- @param n - The argument.+--- @return the floor of the square root of <EM>n</EM>.++isqrt n | n >= 0 =+  if n == 0 then 0 else+  if n <  4 then 1 else+  aux 2 n+  where aux low past = -- invariant low <= result < past+          if past == low+1 then low+          else let cand = (past + low) `div` 2+                in if cand*cand > n then aux low cand else aux cand past++--- The value of <EM>factorial n</EM> is the factorial of <EM>n</EM>.+--- Fails if <EM>n < 0</EM>.+---+--- @param n - The argument.+--- @return the factorial of <EM>n</EM>.++factorial n | n >= 0 = if n == 0 then 1 else n * factorial (n-1)++--- The value of <EM>binomial n m</EM> is +--- n*(n-1)*...*(n-m+1)/m*(m-1)*...1+--- Fails if <EM>m <= 0</EM> or <EM>n < m</EM>.+---+--- @param n - Argument.+--- @param m - Argument.+--- @return the binomial coefficient of <EM>n</EM> over <EM>m</EM>.++binomial n m | m > 0 && n >= m = aux m n `div` factorial m+  where aux x y = if x == 0 then 1 else y * aux (x-1) (y-1)++--- The value of <EM>abs n</EM> is the absolute value of <EM>n</EM>.+---+--- @param n - The argument.+--- @return the absolute value of <EM>n</EM>.++abs n = if n<0 then -n else n++--- Returns the maximum of the two arguments+---+--- @param n - Argument.+--- @param m - Argument.+--- @return the maximum of <EM>n</EM> and <EM>m</EM>.++max n m = if n<m then m else n++--- Returns the minimum of the two arguments.+---+--- @param n - Argument.+--- @param m - Argument.+--- @return the minimum of <EM>n</EM> and <EM>m</EM>.++min n m = if n<m then n else m++--- Returns the maximum of the three arguments.+---+--- @param n - Argument.+--- @param m - Argument.+--- @param p - Argument.+--- @return the maximum among <EM>n</EM>, <EM>m</EM> and <EM>p</EM>.++max3 n m p = max n (max m p)++--- Returns the minimum of the three arguments.+---+--- @param n - Argument.+--- @param m - Argument.+--- @param p - Argument.+--- @return the minimum among <EM>n</EM>, <EM>m</EM> and <EM>p</EM>.++min3 n m p = min n (min m p)++--- Returns the maximum of a list of integer values.+--- Fails if the list is empty.+---+--- @param l - The list of values.+--- @return the maximum element of <EM>l</EM>.++maxlist [n] = n+maxlist (n:m:ns) = max n (maxlist (m:ns))++--- Returns the minimum of a list of integer values.+--- Fails if the list is empty.+---+--- @param l - The list of values.+--- @return the minimum element of <EM>l</EM>.++minlist [n] = n+minlist (n:m:ns) = min n  (minlist (m:ns))++--- The value of <EM>bitTrunc n m</EM> is the value of the <EM>n</EM>+--- least significant bits of <EM>m</EM>.+---+--- @param n - Argument.+--- @param m - Argument.+--- @return <EM>m</EM> truncated to the <EM>n</EM> least significant bits.++bitTrunc n m = bitAnd (pow 2 n - 1) m++--- Returns the bitwise AND of the two arguments.+---+--- @param n - Argument.+--- @param m - Argument.+--- @return the bitwise and of <EM>n</EM> and <EM>m</EM>.++bitAnd n m = if m == 0 then 0+             else let p = 2 * bitAnd (n `div` 2) (m `div` 2)+                      q = if m `mod` 2 == 0 then 0 else n `mod` 2+                   in p + q++--- Returns the bitwise inclusive OR of the two arguments.+---+--- @param n - Argument.+--- @param m - Argument.+--- @return the bitwise inclusive or of <EM>n</EM> and <EM>m</EM>.++bitOr n m = if m == 0 then n+            else let p = 2 * bitOr (n `div` 2) (m `div` 2)+                     q = if m `mod` 2 == 1 then 1 else n `mod` 2+                  in p + q++--- Returns the bitwise NOT of the argument.+--- Since integers have unlimited precision,+--- only the 32 least significant bits are computed.+---+--- @param n - Argument.+--- @return the bitwise negation of <EM>n</EM> truncated to 32 bits.++bitNot n = aux 32 n+  where aux c m = if c==0 then 0+                  else let p = 2 * aux (c-1) (m `div` 2)+                           q = 1 - m `mod` 2+                        in p + q++--- Returns the bitwise exclusive OR of the two arguments.+---+--- @param n - Argument.+--- @param m - Argument.+--- @return the bitwise exclusive of <EM>n</EM> and <EM>m</EM>.++bitXor n m = if m == 0 then n+             else let p = 2 * bitXor (n `div` 2) (m `div` 2)+                      q = if m `mod` 2 == n `mod` 2 then 0 else 1+                   in p + q++--- Returns whether an integer is even+---+--- @param n - Argument.+--- @return whether <EM>n</EM> is even.++even n = n `mod` 2 == 0++--- Returns whether an integer is odd+---+--- @param n - Argument.+--- @return whether <EM>n</EM> is odd.++odd n = n `mod` 2 /= 0
+ src/lib/Curry/Module/Interactive.curry view
@@ -0,0 +1,40 @@+module Interactive where++interactiveSols :: [_] -> IO ()+interactiveSols [] = putStrLn "No more Solutions"+interactiveSols (x:xs) = do+  printTerm x +  putStrLn "More?"+  line <- getLine+  case line of+   'n':_ -> return ()+   'N':_ -> return ()+   _ -> interactiveSols xs++printIO :: IO a -> IO ()+printIO act = act >>= \x -> putStr "IO: " >> (printTerm $!! x)++printTerm :: _ -> IO ()+printTerm external++{-+--showTreeToDepth :: Int -> Int -> SearchTree a -> String +showTreeToDepth _ _ _ Fail = showString "Fail"+showTreeToDepth _ _ _ Suspend = showString "Suspend"+showTreeToDepth _ _ d (Value x1) = showParen (d>10) showStr+   where+    showStr  = showString "Value " . showsPrec 11 x1+showTreeToDepth maxDepth curDepth d (Or xs) = showParen (d>10) showStr+  where+    showStr | maxDepth==curDepth = showString "Or [...]"+            | otherwise          = +      showString "Or [" . +      foldr1 (showString "," . (.)) +             (map (showTreeToDepth maxDepth (curDepth+1) 0) xs) .+      showString "]"++showString s = +++-}+
+ src/lib/Curry/Module/Interactive.hs.include view
@@ -0,0 +1,5 @@+[ForFunction "printTerm"]++printTerm :: (Show t0,Curry t0) => t0 -> Result (C_IO T0)+printTerm x _ = C_IO (\ _ -> do print x +                                Prelude.return (IOVal T0))
+ src/lib/Curry/Module/List.curry view
@@ -0,0 +1,156 @@+------------------------------------------------------------------------------+--- Library with some useful operations on lists.+---+--- @author Michael Hanus+--- @version October 2003+------------------------------------------------------------------------------++module List(elemIndex,elemIndices,find,findIndex,findIndices,+            nub,nubBy,delete,(\\),union,intersect,+            intersperse,transpose,partition,+            group,groupBy,replace,isPrefixOf,sortBy,insertBy,last)  where++import Maybe(listToMaybe)++infix 5 \\++--- Returns the index i of the first occurrence of an element in a list+--- as (Just i), otherwise Nothing is returned.+elemIndex               :: a -> [a] -> Maybe Int+elemIndex x              = findIndex (x ==)++--- Returns the list of indices of occurrences of an element in a list.+elemIndices             :: a -> [a] -> [Int]+elemIndices x            = findIndices (x ==)+                        +--- Returns the first element e of a list satisfying a predicate as (Just e),+--- otherwise Nothing is returned.+find                    :: (a -> Bool) -> [a] -> Maybe a+find p                   = listToMaybe . filter p++--- Returns the index i of the first occurrences of a list element+--- satisfying a predicate as (Just i), otherwise Nothing is returned.+findIndex               :: (a -> Bool) -> [a] -> Maybe Int+findIndex p              = listToMaybe . findIndices p++--- Returns the list of indices of list elements satisfying a predicate.+findIndices             :: (a -> Bool) -> [a] -> [Int]+findIndices p xs         = [ i | (x,i) <- zip xs [0..], p x ]+++--- Removes all duplicates in the argument list.+nub                   :: [a] -> [a]+nub xs                 = nubBy (==) xs++--- Removes all duplicates in the argument list according to an+--- equivalence relation.+nubBy                 :: (a -> a -> Bool) -> [a] -> [a]+nubBy _  []            = []+nubBy eq (x:xs)        = x : nubBy eq (filter (\y -> not (eq x y)) xs)++--- Deletes the first occurrence of an element in a list.+delete                :: a -> [a] -> [a]+delete _ []            = []+delete x (y:ys)        = if x==y then ys else y : delete x ys++--- Computes the difference of two lists.+--- @param xs - a list+--- @param ys - a list+--- @return the list where the first occurrence of each element of+---         <code>ys</code> has been removed from <code>xs</code>+(\\) :: [a] -> [a] -> [a]+xs \\ ys = foldl (flip delete) xs ys++--- Computes the union of two lists.+union                 :: [a] -> [a] -> [a]+union []     ys        = ys+union (x:xs) ys        = if x `elem` ys then union xs ys+                                        else x : union xs ys++--- Computes the intersection of two lists.+intersect             :: [a] -> [a] -> [a]+intersect []     _     = []+intersect (x:xs) ys    = if x `elem` ys then x : intersect xs ys+                                        else intersect xs ys++--- Puts a separator element between all elements in a list.+---+--- Example: <CODE>(intersperse 9 [1,2,3,4]) = [1,9,2,9,3,9,4]</CODE>+intersperse               :: a -> [a] -> [a]+intersperse _   []         = []+intersperse _   [x]        = [x]+intersperse sep (x1:x2:xs) = x1 : sep : intersperse sep (x2:xs)++--- Transposes the rows and columns of the argument.+---+--- Example: <CODE>(transpose [[1,2,3],[4,5,6]]) = [[1,4],[2,5],[3,6]]</CODE>+transpose               :: [[a]] -> [[a]]+transpose []             = []+transpose ([] : xss)     = transpose xss+transpose ((x:xs) : xss) = (x : map head xss) : transpose (xs : map tail xss)++--- Partitions a list into a pair of lists where the first list+--- contains those elements that satisfy the predicate argument+--- and the second list contains the remaining arguments.+---+--- Example: <CODE>(partition (<4) [8,1,5,2,4,3]) = ([1,2,3],[8,5,4])</CODE>+partition       :: (a -> Bool) -> [a] -> ([a],[a])+partition p xs  = foldr select ([],[]) xs+       where select x (ts,fs) = if p x then (x:ts,fs)+                                       else (ts,x:fs)++--- Splits the list argument into a list of lists of equal adjacent+--- elements.+---+--- Example: <CODE>(group [1,2,2,3,3,3,4]) = [[1],[2,2],[3,3,3],[4]]</CODE>+group :: [a] -> [[a]]+group = groupBy (==)++--- Splits the list argument into a list of lists of related adjacent+--- elements.+--- @param eq - the relation to classify adjacent elements+--- @param xs - the list of elements+--- @return the list of lists of related adjacent elements+groupBy :: (a -> a -> Bool) -> [a] -> [[a]]+groupBy _  []     = []+groupBy eq (x:xs) = (x:ys) : groupBy eq zs+                    where (ys,zs) = span (eq x) xs++--- Replaces an element in a list.+--- @param x - the new element+--- @param p - the position of the new element (head = 0)+--- @param ys - the old list+--- @return the new list where the p. element is replaced by x+replace :: a -> Int -> [a] -> [a]+replace _ _ [] = []+replace x p (y:ys) | p==0      = x:ys+                   | otherwise = y:(replace x (p-1) ys)++--- Checks whether a list is a prefix of another.+--- @param xs - a list+--- @param ys - a list+--- @return True if xs is a prefix of ys+isPrefixOf :: [a] -> [a] -> Bool+isPrefixOf [] _ = True+isPrefixOf (_:_) [] = False+isPrefixOf (x:xs) (y:ys) = x==y && (isPrefixOf xs ys)++--- Sorts a list w.r.t. an ordering relation by the insertion method.+sortBy :: (a -> a -> Bool) -> [a] -> [a]+sortBy le = foldr (insertBy le) []++--- Inserts an object into a list according to an ordering relation.+--- @param le - an ordering relation (e.g., less-or-equal)+--- @param x - an element+--- @param xs - a list+--- @return a list where the element has been inserted+insertBy :: (a -> a -> Bool) -> a -> [a] -> [a]+insertBy _ x []     = [x]+insertBy le x (y:ys) = if le x y +                         then x : y : ys+                         else y : insertBy le x ys++--- Returns the last element of a non-empty list.+last :: [a] -> a+last [x] = x+last (_:x:xs) = last (x:xs)
+ src/lib/Curry/Module/Maybe.curry view
@@ -0,0 +1,72 @@+------------------------------------------------------------------------------+--- Library with some useful functions on the Maybe datatype+---+--- @author Frank Huch (source from the corresponding Hugs module)+---         Bernd Brassel (sequence, mapM)+--- @version April 2005+------------------------------------------------------------------------------++module Maybe(+    isJust, isNothing,+    fromJust, fromMaybe, listToMaybe, maybeToList,+    catMaybes, mapMaybe,(>>-), sequenceMaybe, mapMMaybe,++    -- ... and what the Prelude exports+    Maybe(..),+    maybe+    ) where++infixl 1 >>-++isJust :: Maybe _ -> Bool+isJust (Just _) = True+isJust Nothing  = False++isNothing :: Maybe _ -> Bool+isNothing Nothing  = True+isNothing (Just _) = False++fromJust :: Maybe a -> a+fromJust (Just a) = a+fromJust Nothing  = error "Maybe.fromJust: Nothing"++fromMaybe :: a -> Maybe a -> a+fromMaybe d Nothing  = d+fromMaybe _ (Just a) = a++maybeToList :: Maybe a -> [a]+maybeToList Nothing  = []+maybeToList (Just a) = [a]++listToMaybe :: [a] -> Maybe a+listToMaybe []     = Nothing+listToMaybe (a:_) = Just a+ +catMaybes :: [Maybe a] -> [a]+catMaybes ms = [ m | (Just m) <- ms ]++mapMaybe :: (a -> Maybe b) -> [a] -> [b]+mapMaybe f = catMaybes . map f++--- Monadic bind for Maybe.+--- Maybe can be interpreted as a monad where Nothing is interpreted+--- as the error case by this monadic binding.+--- @param maybeValue - Nothing or Just x+--- @param f - function to be applied to x+--- @return Nothing if maybeValue is Nothing,+---         otherwise f is applied to x+(>>-) :: Maybe a -> (a -> Maybe b) -> Maybe b+Nothing >>- _ = Nothing+(Just x) >>- f  = f x++--- monadic sequence for maybe+sequenceMaybe :: [Maybe a] -> Maybe [a]+sequenceMaybe [] = Just []+sequenceMaybe (c:cs) = c >>- \x -> sequenceMaybe cs >>- \xs -> Just (x:xs)++--- monadic map for maybe+mapMMaybe :: (a -> Maybe b) -> [a] -> Maybe [b]+mapMMaybe f = sequenceMaybe . map f+++-----------------------------------------------------------------------------
+ src/lib/Curry/Module/Meta.curry view
@@ -0,0 +1,143 @@+module Meta +  (isFree, ++   headNormalFormIO, hnfIO,nfIO,ghnfIO,gnfIO,++   searchTree, +   RichSearchTree(..), --Suspension,+   getRichSearchTree, richSearchTree, +   st, richST,++   cover, ors, OrRef,++   parallelSearch,++   Exception(..), throw,++   allValuesI++  ) where+++--- Evaluate the given term to head normal form and+--- return this head normal form as either +--- a) Left  if the hnf is a free variable+--- b) Right if the hnf is a value+isFree :: a -> IO (Either a a)+isFree x = headNormalFormIO prim_isFree x++prim_isFree :: a -> IO (Either a a)+prim_isFree external++--- Evaluate the given term to head normal form and+--- call the given continuation with this head +--- normal form.+headNormalFormIO :: (a -> IO b) -> a -> IO b+headNormalFormIO external++--- The declarative form of encapsulated search:+--- It is both strong and referentially transparent+--- in the sense that the result only depends on the+--- given value and not on the state of bindings+--- or non-deterministic branchings of the remaining +--- computation.+searchTree :: a -> SearchTree a+searchTree external++hnfIO, nfIO, gnfIO, ghnfIO :: a -> IO a+gnfIO  external+ghnfIO external+nfIO   external+hnfIO  external+++--- A SearchTree with more information than the Prelude one.++data RichSearchTree a +  = RichFail Exception+  | RichValue a +  | RichChoice OrRef [RichSearchTree a] +  | RichSuspend ++data Exception +  = ErrorCall String+  | PatternMatchFail String+  | AssertionFailed String+  | IOException String+  | PreludeFailed++data OrRef +++--- external representation of the non-determinism context+--- of a value +--data Context +--type Suspension _ = () --not yet implemented, might be Context -> RichSearchTree a++getRichSearchTree :: a -> IO (RichSearchTree a)+getRichSearchTree external++richSearchTree :: a -> RichSearchTree a+richSearchTree external++-- parallel search+parallelSearch :: a -> IO [a]+parallelSearch external++--- cover safes an expression from being drawn into a search tree+cover :: a -> a+cover external++--- an encapsulation to head normal form only+st :: a -> SearchTree a+st external++--- an encapsulation to head normal form only+richST :: a -> RichSearchTree a+richST external++--- a question mark on lists+ors :: [a] -> a+ors external++++-- Exception handling++throw :: Exception -> a+throw e = prim_throw $## e++prim_throw :: Exception -> a+prim_throw external+++-- Interleaved search++data Seq a = Nil | Cons a (Seq a) | Continued (Seq a)++list :: Seq a -> [a]+list Nil = []+list (Cons x xs) = x : list xs+list (Continued xs) = list xs++interleave :: Seq a -> Seq a -> Seq a+interleave Nil              ys             = Continued ys+interleave (Cons x xs)      ys             = Cons x (interleave ys xs)+interleave xs@(Continued _) Nil            = xs+interleave (Continued xs)   (Cons x ys)    = Cons x (interleave xs ys)+interleave (Continued xs)   (Continued ys) = Continued (interleave xs ys)++seq :: SearchTree a -> Seq a+seq Fail        = Nil+seq (Value x)   = Cons x Nil+seq (Choice ts) = foldr1 interleave (Nil : map seq (filter isValOrChoice ts))+seq Suspend     = Nil++isValOrChoice :: SearchTree _ -> Bool+isValOrChoice Fail       = False+isValOrChoice (Value _)  = True+isValOrChoice (Choice _) = True+isValOrChoice Suspend    = False++allValuesI :: SearchTree a -> [a]+allValuesI = list . seq
+ src/lib/Curry/Module/Meta.hs.include view
@@ -0,0 +1,298 @@+[ForFunction "prim_isFree"+,ForFunction "headNormalFormIO"+,ForFunction "searchTree"+,ForFunction "gnfIO"+,ForFunction "ghnfIO"+,ForFunction "nfIO"+,ForFunction "hnfIO"+,ForType "OrRef" Nothing]++import System.Mem.Weak ( addFinalizer )+import Control.Concurrent+import System.IO.Unsafe ( unsafeInterleaveIO )+import Debug.Trace ( trace )+import Data.List++data C_OrRef = C_OrRef OrRef+  | C_OrRefFail Curry.RunTimeSystem.C_Exceptions+  | C_OrRefOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches C_OrRef)++instance BaseCurry C_OrRef where+  nf f x state = f(x)(state)++  gnf f x state = f(x)(state)++  generator _ = error "free Variable of type OrRef"++  failed  = C_OrRefFail++  branching  = C_OrRefOr++  consKind (C_OrRefOr _ _) = Curry.RunTimeSystem.Branching+  consKind (C_OrRefFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (C_OrRefFail x) = x++  orRef (C_OrRefOr x _) = x++  branches (C_OrRefOr _ x) = x++instance Curry C_OrRef where+  strEq (C_OrRef x1) (C_OrRef y1) _ +     = if x1 Prelude.== y1 then strEqSuccess else strEqFail "OrRef"+  strEq x0 _ _ = Curry.Module.Prelude.strEqFail(Curry.Module.Prelude.typeName(x0))++  eq (C_OrRef x1) (C_OrRef y1) _ = +    if x1 Prelude.== y1 then C_True else C_False+  eq _ _ _ = C_False++  typeName _ = "OrRef"++  propagate _ o _ = o+  +  foldCurry _ c _ _ = c++  showQ d (C_OrRef x1) = showParen (d>10) (showString "Unsafe.OrRef" . showsPrec d x1)++++++instance Show C_OrRef where+  showsPrec d (C_OrRef x1) = showParen (d>10) (showString "OrRef" . showsPrec d x1)+++instance Read C_OrRef where+  readsPrec d r = [ (C_OrRef ref,s) | (ref,s) <- readsPrec d r]+++---------------------------------------------------------------------------------+-- test for free variable+---------------------------------------------------------------------------------++prim_isFree :: (Curry t0) => t0 -> Result (C_IO (C_Either t0 t0))+prim_isFree x _ = C_IO (\ _ -> case consKind x of+  Branching -> Prelude.return (IOVal (if isGenerator (orRef x) +                              then C_Left x +                              else C_Right x))+  _         -> Prelude.return (IOVal (C_Right x)))++---------------------------------------------------------------------------------+-- various normal forms in io monad+---------------------------------------------------------------------------------++-- yield head normal form with current state +-- (including fetching and looking up variable bindings)+-- then apply continuation on it and make sure that you got a value+-- of type io before finally executing that action.++headNormalFormIO :: (Curry a,Curry b) => Prim (a -> Result (C_IO b)) -> a -> Result (C_IO b)+headNormalFormIO cont x _ = +  C_IO (hnfCTC (\ x' st -> hnfCTC exec2 (apply cont x' st) st) x)++searchTree :: Curry a => a -> Result (C_SearchTree a)+searchTree = searchTr ++hnfIO  x _ = C_IO (hnfCTC  (\ x _ -> Prelude.return (IOVal x)) x)+nfIO   x _ = C_IO (nfCTC   (\ x _ -> Prelude.return (IOVal x)) x)+gnfIO  x _ = C_IO (ghnfCTC (\ x _ -> Prelude.return (IOVal x)) x)+ghnfIO x _ = C_IO (ghnfCTC (\ x _ -> Prelude.return (IOVal x)) x)++---------------------------------------------------------------------------------+-- rich search trees+---------------------------------------------------------------------------------++getRichSearchTree :: Curry a => a -> Result (C_IO (C_RichSearchTree a))+getRichSearchTree x _ = C_IO (\ state -> Prelude.return (IOVal (richSearchTr x state)))++richSearchTree :: Curry a => a -> Result (C_RichSearchTree a)+richSearchTree = richSearchTr ++--inject :: Curry a => C_Context -> a -> C_RichSearchTree a+--inject (Context c) = richSearchTr c+ +richSearchTr :: Curry a => a -> Result (C_RichSearchTree a)+richSearchTr x state = +  transVal (nfCTC (nfCTC (\ x _ -> x)) x state)+  where+    transVal x = case consKind x of+                   Val       -> C_RichValue x+                   Failed    -> C_RichFail (toCurry (exceptions x))+                   Branching -> transBranching (orRef x) (branches x)++    transBranching _  []         = C_RichFail (C_ErrorCall List)+    transBranching _  [x]        = transVal x+    transBranching r  xs@(_:_:_) = C_RichChoice (C_OrRef r)+                                            (fromHaskellList (map transVal xs))++instance ConvertCH C_Exception Exception where+  toCurry (ErrorCall s)        = C_ErrorCall (toCurry s)+  toCurry (PatternMatchFail s) = C_PatternMatchFail (toCurry s)+  toCurry (AssertionFailed s)  = C_AssertionFailed (toCurry s)+  toCurry (IOException s)      = C_IOException (toCurry s)+  toCurry PreludeFailed        = C_PreludeFailed++  fromCurry (C_ErrorCall s)        = ErrorCall (fromCurry s)+  fromCurry (C_PatternMatchFail s) = PatternMatchFail (fromCurry s)+  fromCurry (C_AssertionFailed s)  = AssertionFailed (fromCurry s)+  fromCurry (C_IOException s)      = IOException (fromCurry s)+  fromCurry C_PreludeFailed        = PreludeFailed++---------------------------------------------------------------------------------+-- parallel search+---------------------------------------------------------------------------------++parallelSearch :: Curry a => a -> Result (C_IO (List a))+parallelSearch v _ = C_IO (\state -> do+  chan <- newChan+  mvar <- newEmptyMVar+  qsem <- newMyQSem 0+  tid <- forkIO (searchThread qsem mvar chan +                              (nfCTC (nfCTC (\ x _ -> x)) v state))+  putMVar mvar [tid]+  --addFinalizer res (stopSearch mvar2)+  res <- myGetChanContents qsem chan+  Prelude.return (IOVal (fromHaskellList res)))+++myGetChanContents :: Show a => MyQSem -> Chan (Maybe a) -> IO [a]+myGetChanContents qsem chan =+  unsafeInterleaveIO ( do+    decMyQSem qsem+    x <- readChan chan+    case x of+         Nothing -> Prelude.return []+         Just y -> do+            xs <- myGetChanContents qsem chan+            Prelude.return (y:xs) )+++stopSearch :: MVar [ThreadId] -> IO ()+stopSearch mvar = do+  print "start"+  ids <- takeMVar mvar+  mapM_ killThread ids+  --putMVar mvar []+++removeId :: MVar [ThreadId] -> Chan (Maybe a) -> ThreadId -> IO ()+removeId mvar chan tid = do+  ids <- takeMVar mvar+  let newids = delete tid ids+  case newids of+       [] -> writeChan chan Nothing -- >> putMVar mvar []+       _  -> putMVar mvar newids +++searchThread :: Curry a => MyQSem -> MVar [ThreadId] -> Chan (Maybe a) +             -> a -> IO ()+searchThread qsem mvar chan x = do+  case consKind x of+    Val       -> incMyQSem qsem >> writeChan chan (Just x) >> terminate+    Failed    -> terminate+    Branching -> do+      --yield+      testMyQSem qsem+      let b:bs = branches x+      -- to prevent the threads from terminating till their Ids are registered+      ids <- takeMVar mvar  +      newIds <- mapM (forkIO . searchThread qsem mvar chan) bs+      putMVar mvar (newIds++ids)+      searchThread qsem mvar chan b+ where+  noThreads = do+    ids <- takeMVar mvar+    putStrLn ("noThreads: " ++ show (length ids))+    putMVar mvar ids+  terminate = do+    tid <- myThreadId+    removeId mvar chan tid++newtype MyQSem = MyQSem (MVar (Int, [MVar ()]))++-- |Build a new 'MyQSem'+newMyQSem :: Int -> IO MyQSem+newMyQSem init = do+   sem <- newMVar (init,[])+   Prelude.return (MyQSem sem)+++-- |Wait for a unit to become available+incMyQSem :: MyQSem -> IO ()+incMyQSem (MyQSem sem) = do+   (avail,blocked) <- takeMVar sem+   putMVar sem (avail+1,blocked)+++-- |Signal that a unit of the 'MyQSem' is available+decMyQSem :: MyQSem -> IO ()+decMyQSem (MyQSem sem) = do+   (avail,blocked) <- takeMVar sem+   if avail>0 then putMVar sem (avail-1,blocked)+              else mapM_ (flip putMVar ()) blocked >> putMVar sem (avail-1,[]) +++testMyQSem :: MyQSem -> IO ()+testMyQSem (MyQSem sem) = do+   x@(avail,blocked) <- takeMVar sem+   if avail<0 then putMVar sem x+              else do+                block <- newEmptyMVar+                putMVar sem (avail,block:blocked)+                takeMVar block++-------------------------------+-- covering non-determinism+-------------------------------++cover :: Curry a => a -> Result a+cover x st = case consKind x of+              Branching -> branching (Curry.RunTimeSystem.cover (orRef x)) +                                     (map (flip Curry.Module.Meta.cover st) (branches x))+              _ -> x++-----------------------------------+-- encapsulate to head normal form+-----------------------------------++st :: Curry a => a -> Result (C_SearchTree a)+st x s = transVal (hnfCTC (\ x _ -> x) x s)+  where+    transVal x = case consKind x of+        Val       -> C_Value x+        Failed    -> C_Fail+        Branching -> let ref = orRef x in +          if   isCovered ref+          then C_SearchTreeOr (uncover ref) (map (flip st s) (branches x))+          else C_Choice (fromHaskellList (map transVal (branches x)))++-----------------------------------+-- encapsulate to head normal form+-----------------------------------++richST :: Curry a => a -> Result (C_RichSearchTree a)+richST x s = transVal (hnfCTC (\ x _ -> x) x s)+  where+    transVal x = case consKind x of+        Val       -> C_RichValue x+        Failed    -> C_RichFail (toCurry (exceptions x))+        Branching -> let ref = orRef x in +          if   isCovered ref+          then C_RichSearchTreeOr (uncover ref) +                                  (map (flip richST s) (branches x))+          else C_RichChoice (C_OrRef (orRef x))+                        (fromHaskellList (map transVal (branches x)))++-----------------------------+-- the general question mark+-----------------------------++ors :: Curry a => List a -> Result a+ors xs _ = branching (error "Unsafe.ors") (toHaskellList xs)+++-- temporarily added++prim_throw :: Curry a => C_Exception -> Result a+prim_throw e _ = Curry.RunTimeSystem.failed (fromCurry e)
+ src/lib/Curry/Module/OptimizeST.hs.include view
@@ -0,0 +1,1 @@+[ForFunction "showSearchTree"]
+ src/lib/Curry/Module/Parser.curry view
@@ -0,0 +1,122 @@+------------------------------------------------------------------------------+--- Library with functional logic parser combinators.+---+--- Adapted from: Rafael Caballero and Francisco J. Lopez-Fraguas:+---               A Functional Logic Perspective of Parsing.+---               In Proc. FLOPS'99, Springer LNCS 1722, pp. 85-99, 1999+---+--- @author Michael Hanus+--- @version March 2000+------------------------------------------------------------------------------++module Parser where++-- Operator declarations for the parser combinators:++infixr 4 <*>+infixr 3 >>>+infixr 2 <|>, <||>++-- We distinguish two kind of parsers:++-- A parser without a representation has type "[token] -> [token]":+-- it parses a list of tokens and returns the remaining unparsed tokens++type Parser token = [token] -> [token]++-- A parser with representation has type "rep -> [token] -> [token]":+-- in addition to the input tokens, it has the representation as an argument+-- (which is usually a free variable bound to the representation after parsing)++type ParserRep rep token = rep -> Parser token+++-- Now we can define the basic combinators for parsers:++--- Combines two parsers without representation in an alternative manner.+(<|>)  :: Parser t -> Parser t -> Parser t+p <|> _ = \sentence -> p sentence+_ <|> q = \sentence -> q sentence+++--- Combines two parsers with representation in an alternative manner.+(<||>)  :: ParserRep r t -> ParserRep r t -> ParserRep r t+p <||> q = \rep -> p rep <|> q rep+++--- Combines two parsers (with or without representation) in a+--- sequential manner.+(<*>)    :: Parser t -> Parser t -> Parser t+p1 <*> p2 = seq+ where seq sentence = p2 $!! p1 sentence +++--- Attaches a representation to a parser without representation.+(>>>) :: Parser token -> rep -> ParserRep rep token+(parser >>> repexp) rep sentence = attach $!! parser sentence+  where attach rest | repexp =:= rep = rest +++-- Finally, we define some useful basic parsers and derived combinators:++--- The empty parser which recognizes the empty word.+empty :: Parser _+empty sentence = sentence++--- A parser recognizing a particular terminal symbol.+terminal :: token -> Parser token+terminal sym (token:tokens) | sym=:=token = tokens++--- A parser (with representation) recognizing a terminal satisfying+--- a given predicate.+satisfy :: (token->Bool) -> ParserRep token token+satisfy pred sym (token:tokens) | pred token =:= True & sym=:=token = tokens++--- A star combinator for parsers. The returned parser+--- repeats zero or more times a parser p with representation and+--- returns the representation of all parsers in a list.+star :: ParserRep rep token -> ParserRep [rep] token+star p =    p x <*> (star p) xs >>> (x:xs)+       <||> empty               >>> []         where x,xs free++--- A some combinator for parsers. The returned parser+--- repeats the argument parser (with representation) at least once.+some :: ParserRep rep token -> ParserRep [rep] token+some p = p x <*> (star p) xs >>> (x:xs)        where x,xs free+++{-----------------------------------------------------------------------++As a simple example we define a parser for arithmetic expressions+over natural numbers. The presentation of this parser is the value+of the expression.++expression   =  term t <*> plus_minus op <*> expression e  >>> (op t e)+           <||> term+ where op,t,e free++term         =  factor f <*> prod_div op <*> term t        >>> (op f t)+           <||> factor+ where op,f,t free++factor       =  terminal '(' <*> expression e <*> terminal ')'  >>> e+           <||> num+ where e free++plus_minus   =  terminal '+'  >>> (+)+           <||> terminal '-'  >>> (-)++prod_div     =  terminal '*'  >>> (*)+           <||> terminal '/'  >>> div++num = some digit l >>> numeric_value l+  where l free+        numeric_value ds = foldl1 ((+).(10*)) (map (\c->ord c - ord '0') ds)++digit = satisfy isDigit+++-- example application: expression val "(10+5*2)/4" =:= []++-----------------------------------------------------------------------}+
+ src/lib/Curry/Module/Prelude.curry view
@@ -0,0 +1,988 @@+----------------------------------------------------------------------------+--- The standard prelude of Curry.+--- All top-level functions defined in this module+--- are always available in any Curry program.+----------------------------------------------------------------------------++module Prelude where+-- Lines beginning with "--++" are part of the prelude+-- but cannot parsed by the compiler++-- Infix operator declarations:++infixl 9 !!+infixr 9 .+infixl 7 *, *^, `div`, `mod`+infixl 6 +, +^, -, -^+-- infixr 5 :                          -- declared together with list+infixr 5 +++infix  4 =:=, ==, ===, /=, <, >, <=, >=, =:<=, <^, <=^, >^, >=^+infix  4  `elem`, `notElem`+infixr 3 &&+infixr 2 ||+infixl 1 >>, >>=+infixr 0 $, $!, $!!, $#, $##, `seq`, &, &>, ?++-- external base types for numbers and characters+data Float+data Char +type String = [Char]++-- Some standard combinators:++--- Function composition.+(.)   :: (b -> c) -> (a -> b) -> (a -> c)+f . g = \x -> f (g x)++--- Identity function.+id              :: a -> a+id x            = x++--- Constant function.+const           :: a -> _ -> a+const x _       = x++--- Converts an uncurried function to a curried function.+curry           :: ((a,b) -> c) -> a -> b -> c+curry f a b     =  f (a,b)++--- Converts an curried function to a function on pairs.+uncurry         :: (a -> b -> c) -> (a,b) -> c+uncurry f (a,b) = f a b++--- (flip f) is identical to f but with the order of arguments reversed.+flip            :: (a -> b -> c) -> b -> a -> c+flip  f x y     = f y x++--- Repeats application of a function until a predicate holds.+until          :: (a -> Bool) -> (a -> a) -> a -> a+until p f x     = if p x then x else until p f (f x)++--- Right-associative application.+($)             :: (a -> b) -> a -> b+f $ x           = f x++--- Right-associative application with strict evaluation of its argument+--- to head normal form.+($!)    :: (a -> b) -> a -> b+($!) external++--- Right-associative application with strict evaluation of its argument+--- to normal form.+($!!)    :: (a -> b) -> a -> b+($!!) external++--- Right-associative application with strict evaluation of its argument+--- to head normal form. +--- Suspends until the result is bound to a non-variable term.+($#) :: (a->b) -> a -> b+($#) external++--- Right-associative application with strict evaluation of its argument+--- to ground normal form. +--- Suspends until the result is bound to a non-variable term.+($##) :: (a->b) -> a -> b+($##) external++--- Evaluates the argument to spine form and returns it.+--- Suspends until the result is bound to a non-variable spine.+ensureSpine :: [a] -> [a] +ensureSpine = (ensureList $#)+ where ensureList []     = []+       ensureList (x:xs) = x : ensureSpine xs++--- Evaluates the first argument to head normal form (which could also+--- be a free variable) and returns the second argument.+seq     :: _ -> a -> a+seq x y = (const y) $! x++++--- Aborts the execution with an error message.+error :: String -> _+error s = prim_error $## s++prim_error    :: String -> _+prim_error external++--- A non-reducible polymorphic function.+--- It is useful to express a failure in a search branch of the execution.+failed :: _ +failed external++-- Boolean values+data Bool = False | True ++--- Sequential conjunction on Booleans.+(&&)            :: Bool -> Bool -> Bool+True  && x      = x+False && _      = False+ ++--- Sequential disjunction on Booleans.+(||)            :: Bool -> Bool -> Bool+True  || _      = True+False || x      = x+ ++--- Negation on Booleans.+not             :: Bool -> Bool+not True        = False+not False       = True++--- Useful name for the last condition in a sequence of conditional equations.+otherwise       :: Bool+otherwise       = True+++--- The standard conditional. It suspends if the condition is a free variable.+if_then_else           :: Bool -> a -> a -> a+if_then_else b t f = case b of True  -> t+                               False -> f+++--- Ordering type. Useful as a result of comparison functions.+data Ordering = LT | EQ | GT++isLT LT = True+isLT GT = False+isLT EQ = False++isGT LT = False+isGT GT = True+isGT EQ = False++isEQ LT = False+isEQ GT = False+isEQ EQ = True++{-compare :: Int -> Int -> Ordering+compare x y | (prim_Int_le $# x) $# y = LT+            | (prim_Int_le $# y) $# x = GT+            | otherwise = EQ -}++compare :: Int -> Int -> Ordering+compare Zero    Zero    = EQ+compare Zero    (Pos _) = LT+compare Zero    (Neg _) = GT+compare (Pos _) Zero    = GT+compare (Pos x) (Pos y) = cmpNat x y+compare (Pos _) (Neg _) = GT+compare (Neg _) Zero    = LT+compare (Neg _) (Pos _) = LT+compare (Neg x) (Neg y) = cmpNat y x++{-+compare x y = compareData [toNumData x] [toNumData y]+  where+    compareData :: [NumData] -> [NumData] -> Ordering+    compareData [] []    = EQ+    compareData (NumData xi xts:xs) (NumData yi yts:ys)+      | int_le xi yi = LT+      | int_le yi xi = GT+      | otherwise    = compareData (xts++xs) (yts++ys)++-}+--- Less-than on ground data terms.+(<)  :: Int -> Int -> Bool  +x < y = compare x y == LT+          +--- Greater-than on ground data terms.+(>)  :: Int -> Int -> Bool  +x > y = compare x y == GT++--- Less-or-equal on ground data terms.+(<=)  ::  Int -> Int -> Bool +x <= y = compare x y /= GT++--- Greater-or-equal on ground data terms.+(>=) ::  Int -> Int -> Bool+x >= y = compare x y /= LT++--- Maximum of ground data terms.+max  ::  Int -> Int -> Int  +max x y = case compare x y of +  LT -> y+  _  -> x++---  Minimum of ground data terms+min  :: Int -> Int -> Int+min  x y = case compare x y of +  GT -> y+  _  -> x+         +--- Equality on finite ground data terms.+(==)            :: a -> a -> Bool+(==) external++--- Disequality.+(/=)            :: a -> a -> Bool+x /= y          = not (x==y)+++-- Pairs++--++ data (a,b) = (a,b)++--- Selects the first component of a pair.+fst             :: (a,_) -> a+fst (x,_)       = x++--- Selects the second component of a pair.+snd             :: (_,b) -> b+snd (_,y)       = y+++-- Unit type+--++ data () = ()++-- Lists++--++ data [a] = [] | a : [a]++--- Computes the first element of a list.+head            :: [a] -> a+head (x:_)      = x++--- Computes the remaining elements of a list.+tail            :: [a] -> [a]+tail (_:xs)     = xs++--- Is a list empty?+null            :: [_] -> Bool+null []         = True+null (_:_)      = False++--- Concatenates two lists.+--- Since it is flexible, it could be also used to split a list+--- into two sublists etc.+(++)            :: [a] -> [a] -> [a]+[]     ++ ys    = ys+(x:xs) ++ ys    = x : xs++ys++--- Computes the length of a list.+length          :: [_] -> Int+length []       = 0+length (_:xs)   = 1 + length xs++--- List index (subscript) operator, head has index 0.+(!!)            :: [a] -> Int -> a+(x:xs) !! n | n==0      = x+            | n>0       = xs !! (n-1)++--- Map a function on all elements of a list.+map             :: (a->b) -> [a] -> [b]+map _ []        = []+map f (x:xs)    = f x : map f xs++--- Accumulates all list elements by applying a binary operator from+--- left to right. Thus,+--- <CODE>foldl f z [x1,x2,...,xn] = (...((z `f` x1) `f` x2) ...) `f` xn</CODE>+foldl            :: (a -> b -> a) -> a -> [b] -> a+foldl _ z []     = z+foldl f z (x:xs) = foldl f (f z x) xs++--- Accumulates a non-empty list from left to right.+foldl1           :: (a -> a -> a) -> [a] -> a+foldl1 f (x:xs)  = foldl f x xs++--- Accumulates all list elements by applying a binary operator from+--- right to left. Thus,+--- <CODE>foldr f z [x1,x2,...,xn] = (x1 `f` (x2 `f` ... (xn `f` z)...))</CODE>+foldr            :: (a->b->b) -> b -> [a] -> b+foldr _ z []     = z+foldr f z (x:xs) = f x (foldr f z xs)++--- Accumulates a non-empty list from right to left:+foldr1              :: (a -> a -> a) -> [a] -> a+foldr1 _ [x]        = x+foldr1 f (x1:x2:xs) = f x1 (foldr1 f (x2:xs))++--- Filters all elements satisfying a given predicate in a list.+filter            :: (a -> Bool) -> [a] -> [a]+filter _ []       = []+filter p (x:xs)   = if p x then x : filter p xs+                           else filter p xs++--- Joins two lists into one list of pairs. If one input list is shorter than+--- the other, the additional elements of the longer list are discarded.+zip               :: [a] -> [b] -> [(a,b)]+zip []     _      = []+zip (_:_)  []     = []+zip (x:xs) (y:ys) = (x,y) : zip xs ys++--- Joins three lists into one list of triples. If one input list is shorter+--- than the other, the additional elements of the longer lists are discarded.+zip3                      :: [a] -> [b] -> [c] -> [(a,b,c)]+zip3 []     _      _      = []+zip3 (_:_)  []     _      = []+zip3 (_:_)  (_:_)  []     = []+zip3 (x:xs) (y:ys) (z:zs) = (x,y,z) : zip3 xs ys zs++--- Joins two lists into one list by applying a combination function to+--- corresponding pairs of elements. Thus <CODE>zip = zipWith (,)</CODE>+zipWith                 :: (a->b->c) -> [a] -> [b] -> [c]+zipWith _ []     _      = []+zipWith _ (_:_)  []     = []+zipWith f (x:xs) (y:ys) = f x y : zipWith f xs ys++--- Joins three lists into one list by applying a combination function to+--- corresponding triples of elements. Thus <CODE>zip3 = zipWith3 (,,)</CODE>+zipWith3                        :: (a->b->c->d) -> [a] -> [b] -> [c] -> [d]+zipWith3 _ []     _      _      = []+zipWith3 _ (_:_)  []     _      = []+zipWith3 _ (_:_)  (_:_)  []     = []+zipWith3 f (x:xs) (y:ys) (z:zs) = f x y z : zipWith3 f xs ys zs++--- Transforms a list of pairs into a pair of lists.+unzip               :: [(a,b)] -> ([a],[b])+unzip []            = ([],[])+unzip ((x,y):ps)    = (x:xs,y:ys) where (xs,ys) = unzip ps++--- Transforms a list of triples into a triple of lists.+unzip3              :: [(a,b,c)] -> ([a],[b],[c])+unzip3 []           = ([],[],[])+unzip3 ((x,y,z):ts) = (x:xs,y:ys,z:zs) where (xs,ys,zs) = unzip3 ts++--- Concatenates a list of lists into one list.+concat            :: [[a]] -> [a]+concat l          = foldr (++) [] l++--- Maps a function from elements to lists and merges the result into one list.+concatMap         :: (a -> [b]) -> [a] -> [b]+concatMap f       = concat . map f++--- Infinite list of repeated applications of a function f to an element x.+--- Thus, <CODE>iterate f x = [x, f x, f (f x),...]</CODE>+iterate           :: (a -> a) -> a -> [a]+iterate f x       = x : iterate f (f x)++--- Infinite list where all elements have the same value.+--- Thus, <CODE>repeat x = [x, x, x,...]</CODE>+repeat            :: a -> [a]+repeat x          = x : repeat x++--- List of length n where all elements have the same value.+replicate         :: Int -> a -> [a]+replicate n x     = take n (repeat x)++--- Returns prefix of length n.+take              :: Int -> [a] -> [a]+take (Neg _)   _      = []+take Zero      _      = []+take (Pos _)   []     = []+take (Pos n) (x:xs) = x : take (Pos n-1) xs++--- Returns suffix without first n elements.+drop              :: Int -> [a] -> [a]+drop n l          = if n<=0 then l else dropp n l+   where dropp _ []     = []+         dropp m (_:xs) = drop (m-1) xs++--- (splitAt n xs) is equivalent to (take n xs, drop n xs)+splitAt           :: Int -> [a] -> ([a],[a])+splitAt n l       = if n<=0 then ([],l) else splitAtp n l+   where splitAtp _ []     = ([],[])+         splitAtp m (x:xs) = let (ys,zs) = splitAt (m-1) xs in (x:ys,zs)++--- Returns longest prefix with elements satisfying a predicate.+takeWhile          :: (a -> Bool) -> [a] -> [a]+takeWhile _ []     = []+takeWhile p (x:xs) = if p x then x : takeWhile p xs else []++--- Returns suffix without takeWhile prefix.+dropWhile          :: (a -> Bool) -> [a] -> [a]+dropWhile _ []     = []+dropWhile p (x:xs) = if p x then dropWhile p xs else x:xs++--- (span p xs) is equivalent to (takeWhile p xs, dropWhile p xs)+span               :: (a -> Bool) -> [a] -> ([a],[a])+span _ []          = ([],[])+span p (x:xs)+       | p x       = let (ys,zs) = span p xs in (x:ys, zs)+       | otherwise = ([],x:xs)++--- (break p xs) is equivalent to (takeWhile (not.p) xs, dropWhile (not.p) xs).+--- Thus, it breaks a list at the first occurrence of an element satisfying p.+break              :: (a -> Bool) -> [a] -> ([a],[a])+break p            = span (not . p)++--- Breaks a string into a list of lines where a line is terminated at a+--- newline character. The resulting lines do not contain newline characters.+lines        :: String -> [String]+lines []     = []+lines (x:xs) = let (l,xs_l) = splitline (x:xs) in l : lines xs_l+ where splitline []     = ([],[])+       splitline (c:cs) = if c=='\n'+                          then ([],cs)+                          else let (ds,es) = splitline cs in (c:ds,es)++--- Concatenates a list of strings with terminating newlines.+unlines    :: [String] -> String+unlines ls = concatMap (++"\n") ls++--- Breaks a string into a list of words where the words are delimited by+--- white spaces.+words      :: String -> [String]+words s    = let s1 = dropWhile isSpace s+              in if s1=="" then []+                           else let (w,s2) = break isSpace s1+                                 in w : words s2+ where+   isSpace c = c == ' '  || c == '\t' || c == '\n' || c == '\r'++--- Concatenates a list of strings with a blank between two strings.+unwords    :: [String] -> String+unwords ws = if ws==[] then []+                       else foldr1 (\w s -> w ++ ' ':s) ws++--- Reverses the order of all elements in a list.+reverse    :: [a] -> [a]+reverse    = foldl (flip (:)) []++--- Computes the conjunction of a Boolean list.+and        :: [Bool] -> Bool+and        = foldr (&&) True++--- Computes the disjunction of a Boolean list.+or         :: [Bool] -> Bool+or         = foldr (||) False++--- Is there an element in a list satisfying a given predicate?+any        :: (a -> Bool) -> [a] -> Bool+any p      = or . map p++--- Is a given predicate satisfied by all elements in a list?+all        :: (a -> Bool) -> [a] -> Bool+all p      = and . map p++--- Element of a list?+elem       :: a -> [a] -> Bool+elem x     = any (x==)++--- Not element of a list?+notElem    :: a -> [a] -> Bool+notElem x  = all (x/=)++--- Looks up a key in an association list.+lookup            :: a -> [(a,b)] -> Maybe b+lookup _ []       = Nothing+lookup k ((x,y):xys)+      | k==x      = Just y+      | otherwise = lookup k xys++--- Generates an infinite sequence of ascending integers.+enumFrom               :: Int -> [Int]                   -- [n..]+enumFrom n             = n : enumFrom (n+1)++--- Generates an infinite sequence of integers with a particular in/decrement.+enumFromThen           :: Int -> Int -> [Int]            -- [n1,n2..]+enumFromThen n1 n2     = iterate ((n2-n1)+) n1++--- Generates a sequence of ascending integers.+enumFromTo             :: Int -> Int -> [Int]            -- [n..m]+enumFromTo n m         = if n>m then [] else n : enumFromTo (n+1) m++--- Generates a sequence of integers with a particular in/decrement.+enumFromThenTo         :: Int -> Int -> Int -> [Int]     -- [n1,n2..m]+enumFromThenTo n1 n2 m = takeWhile p (enumFromThen n1 n2)+                         where p x | n2 >= n1  = (x <= m)+                                   | otherwise = (x >= m)+++--- Converts a character into its ASCII value.+ord :: Char -> Int+ord c = prim_ord $## c++prim_ord :: Char -> Int+prim_ord external++--- Converts an ASCII value into a character.+chr :: Int -> Char+chr i = prim_chr $## i++prim_chr :: Int -> Char+prim_chr external++-- Natural numbers++data Nat = IHi | O Nat | I Nat++succ :: Nat -> Nat+succ (O bs) = I bs+succ (I bs) = O (succ bs)+succ IHi = O IHi++(+^) :: Nat -> Nat -> Nat+O x +^ O y = O (x +^ y)+O x +^ I y = I (x +^ y)+O x +^ IHi = I x+I x +^ O y = I (x +^ y)+I x +^ I y = O (succ x +^ y)+I x +^ IHi = O (succ x)+IHi +^ y   = succ y++cmpNat :: Nat -> Nat -> Ordering+cmpNat IHi IHi   = EQ+cmpNat IHi (O _) = LT+cmpNat IHi (I _) = LT+cmpNat (O _) IHi = GT+cmpNat (I _) IHi = GT+cmpNat (O x) (O y) = cmpNat x y+cmpNat (I x) (I y) = cmpNat x y+cmpNat (O x) (I y) = cmpNatLT x y+cmpNat (I x) (O y) = cmpNatGT x y++cmpNatLT :: Nat -> Nat -> Ordering+cmpNatLT IHi _     = LT+cmpNatLT (O _) IHi = GT+cmpNatLT (I _) IHi = GT+cmpNatLT (O x) (O y) = cmpNatLT x y+cmpNatLT (I x) (I y) = cmpNatLT x y+cmpNatLT (O x) (I y) = cmpNatLT x y+cmpNatLT (I x) (O y) = cmpNatGT x y++cmpNatGT :: Nat -> Nat -> Ordering+cmpNatGT _   IHi   = GT+cmpNatGT IHi (O _) = LT+cmpNatGT IHi (I _) = LT+cmpNatGT (O x) (O y) = cmpNatGT x y+cmpNatGT (I x) (I y) = cmpNatGT x y+cmpNatGT (O x) (I y) = cmpNatLT x y+cmpNatGT (I x) (O y) = cmpNatGT x y++(<^), (>^), (<=^), (>=^) :: Nat -> Nat -> Bool++x <^  y = isLT (cmpNat x y)+x >^  y = isGT (cmpNat x y)+x <=^ y = not (isGT (cmpNat x y))+x >=^ y = not (isLT (cmpNat x y))++(*^) :: Nat -> Nat -> Nat+IHi *^ y = y+I x *^ y = O (y *^ x) +^ y+O x *^ y = O (x *^ y)++pred :: Nat -> Nat+pred (O IHi)     = IHi+pred (O x@(O _)) = I (pred x)+pred (O (I x))   = I (O x) +pred (I x)       = O x++-- Integers++data Int = Neg Nat | Zero | Pos Nat++-- basic operations (+1), (-1), (*2)++inc, dec, mult2 :: Int -> Int++inc Zero = Pos IHi+inc (Pos n) = Pos (succ n)+inc (Neg IHi) = Zero+inc (Neg (O n)) = Neg (pred (O n))+inc (Neg (I n)) = Neg (O n)++dec Zero = Neg IHi+dec (Neg n) = Neg (succ n)+dec (Pos IHi) = Zero+dec (Pos (O n)) = Pos (pred (O n))+dec (Pos (I n)) = Pos (O n)++mult2 (Pos n) = Pos (O n)+mult2 Zero    = Zero+mult2 (Neg n) = Neg (O n)++(-^) :: Nat -> Nat -> Int+IHi -^ y   = inc (Neg y)             -- 1-n = 1+(-n)+O x -^ IHi = Pos (pred (O x))    +O x -^ O y = mult2 (x -^ y)+O x -^ I y = dec (mult2 (x -^ y))+I x -^ IHi = Pos (O x)+I x -^ O y = inc (mult2 (x -^ y))    -- 2*n+1 - 2*m = 1+2*(n-m)+I x -^ I y = mult2 (x -^ y)          -- 2*n+1 - (2*m+1) = 2*(n-m)++div2 :: Nat -> Nat+div2 (O x) = x+div2 (I x) = x++mod2 :: Nat -> Int+mod2 IHi   = Pos IHi+mod2 (O _) = Zero+mod2 (I _) = Pos IHi+ +divmodNat :: Nat -> Nat -> (Int,Int)+divmodNat x y +  | y==IHi    = (Pos x,Zero) +  | otherwise = case cmpNat x y of+    EQ -> (Pos IHi,Zero)+    LT -> (Zero, Pos x)+    GT -> case divmodNat (div2 x) y of+      (Zero,_)      -> (Pos IHi,x -^ y)+      (Pos d,Zero)  -> (Pos (O d),mod2 x)+      (Pos d,Pos m) -> case divmodNat (shift x m) y of+        (Zero,m')   -> (Pos (O d),m')+        (Pos d',m') -> (Pos (O d +^ d'),m')+  where+    shift (O _) n = O n+    shift (I _) n = I n+++--- Adds two integers.+(+)   :: Int -> Int -> Int+Pos x + Pos y = Pos (x +^ y)+Neg x + Neg y = Neg (x +^ y)+Pos x + Neg y = x -^ y+Neg x + Pos y = y -^ x+Zero  + x     = x+x@(Pos _) + Zero = x+x@(Neg _) + Zero = x++--- Subtracts two integers.+(-)   :: Int -> Int -> Int+x - Neg y = x + Pos y+x - Pos y = x + Neg y+x - Zero  = x++--- Multiplies two integers.+(*)   :: Int -> Int -> Int+Pos x * Pos y = Pos (x *^ y)+Pos x * Neg y = Neg (x *^ y)+Neg x * Neg y = Pos (x *^ y)+Neg x * Pos y = Neg (x *^ y)+Zero  * _     = Zero+Pos _ * Zero  = Zero+Neg _ * Zero  = Zero++--- Integer division. The value is the integer quotient of its arguments+--- and always truncated towards zero.+--- Thus, the value of <code>13 `div` 5</code> is <code>2</code>,+--- and the value of <code>-15 `div` 4</code> is <code>-3</code>.+--- Integer remainder. The value is the remainder of the integer division and+--- it obeys the rule <code>x `mod` y = x - y * (x `div` y)</code>.+--- Thus, the value of <code>13 `mod` 5</code> is <code>3</code>,+--- and the value of <code>-15 `mod` 4</code> is <code>-3</code>.++divmod   :: Int -> Int -> (Int,Int)+divmod Zero    _       = (Zero,Zero)+divmod (Pos _) Zero    = error "division by 0"+divmod (Pos x) (Pos y) = divmodNat x y+divmod (Pos x) (Neg y) = let (d,m) = divmodNat x y in (negate d,m)+divmod (Neg _) Zero    = error "division by 0"+divmod (Neg x) (Pos y) = let (d,m) = divmodNat x y in (negate d,negate m)+divmod (Neg x) (Neg y) = let (d,m) = divmodNat x y in (d,negate m)++div,mod :: Int -> Int -> Int+x `div` y = fst (divmod x y)++x `mod` y = snd (divmod x y)++--- Unary minus. Usually written as "- e".+negate :: Int -> Int+negate Zero    = Zero+negate (Pos x) = Neg x+negate (Neg x) = Pos x++++-- Constraints+data Success = Success++--- The always satisfiable constraint.+success :: Success+success = Success++--- The equational constraint.+--- (e1 =:= e2) is satisfiable if both sides e1 and e2 can be+--- reduced to a unifiable data term (i.e., a term without defined+--- function symbols).+(=:=)   :: a -> a -> Success+x =:= y | x===y = success++(===)   :: a -> a -> Bool+(===) external+++--- Concurrent conjunction on constraints.+--- An expression like (c1 & c2) is evaluated by evaluating+--- the constraints c1 and c2 in a concurrent manner.+(&)     :: Success -> Success -> Success+(&) external++--- Constrained expression.+--- An expression like (c &> e) is evaluated by first solving+--- constraint c and then evaluating e.+(&>)          :: Success -> a -> a+c &> x | c = x++--andBreadth :: [Bool] -> Bool+--andBreadth external++-- Maybe type++data Maybe a = Nothing | Just a ++maybe              :: b -> (a -> b) -> Maybe a -> b+maybe n _ Nothing  = n+maybe _ f (Just x) = f x+++-- Either type++data Either a b = Left a | Right b++either               :: (a -> c) -> (b -> c) -> Either a b -> c+either f _ (Left x)  = f x+either _ g (Right x) = g x+++-- Monadic IO++data IO _  -- conceptually: World -> (a,World)++--- Sequential composition of actions.+--- @param a - An action+--- @param fa - A function from a value into an action+--- @return An action that first performs a (yielding result r)+---         and then performs (fa r)+(>>=)             :: IO a -> (a -> IO b) -> IO b+(>>=) external++--- The empty action that directly returns its argument.+return            :: a -> IO a+return external++--- Sequential composition of actions.+--- @param a1 - An action+--- @param a2 - An action+--- @return An action that first performs a1 and then a2+(>>)              :: IO _ -> IO b        -> IO b+a >> b            = a >>= const b++--- The empty action that returns nothing.+done              :: IO ()+done              = return ()++--- An action that puts its character argument on standard output.+putChar           :: Char -> IO ()+putChar c = prim_putChar $## c++prim_putChar           :: Char -> IO ()+prim_putChar external++--- An action that reads a character from standard output and returns it.+getChar           :: IO Char+getChar external++--- An action that (lazily) reads a file and returns its contents.+readFile :: String -> IO String+readFile s = prim_readFile $## s++prim_readFile          :: String -> IO String+prim_readFile external++--- An action that writes a file.+--- @param filename - The name of the file to be written.+--- @param contents - The contents to be written to the file.+writeFile         :: String -> String -> IO ()+writeFile fn s = (prim_writeFile $## fn) $## s++prim_writeFile         :: String -> String -> IO ()+prim_writeFile external++--- An action that appends a string to a file.+--- It behaves like writeFile if the file does not exist.+--- @param filename - The name of the file to be written.+--- @param contents - The contents to be appended to the file.+appendFile        :: String -> String -> IO ()+appendFile fn s = (prim_appendFile  $## fn) $## s++prim_appendFile         :: String -> String -> IO ()+prim_appendFile external++--- Catches a possible failure during the execution of an I/O action.+--- <CODE>(catchFail act err)</CODE>:+--- apply action <CODE>act</CODE> and, if it fails,+--- apply action <CODE>err</CODE>+catchFail         :: IO a -> IO a -> IO a+catchFail external++--- Action to print a string on stdout.+putStr            :: String -> IO ()+putStr []         = done+putStr (c:cs)     = putChar c >> putStr cs+ +--- Action to print a string with a newline on stdout.+putStrLn          :: String -> IO ()+putStrLn cs       = putStr cs >> putChar '\n'++--- Action to read a line from stdin.+getLine           :: IO String+getLine           = do c <- getChar+                       if c=='\n' then return []+                                  else do cs <- getLine+                                          return (c:cs)++--- Converts an arbitrary term into an external string representation.+show    :: _ -> String+show s = prim_show $## s++prim_show    :: _ -> String+prim_show external++--- Converts a term into a string and prints it.+print   :: _ -> IO ()+print t = putStrLn (show t)++--- Solves a constraint as an I/O action.+--- Note: the constraint should be always solvable in a deterministic way+doSolve :: Success -> IO ()+doSolve constraint | constraint = done+++-- IO monad auxiliary functions:++--- Executes a sequence of I/O actions and collects all results in a list.+sequenceIO       :: [IO a] -> IO [a]+sequenceIO []     = return []+sequenceIO (c:cs) = do x  <- c+                       xs <- sequenceIO cs+                       return (x:xs)++--- Executes a sequence of I/O actions and ignores the results.+sequenceIO_        :: [IO _] -> IO ()+sequenceIO_         = foldr (>>) done++--- Maps an I/O action function on a list of elements.+--- The results of all I/O actions are collected in a list.+mapIO             :: (a -> IO b) -> [a] -> IO [b]+mapIO f            = sequenceIO . map f++--- Maps an I/O action function on a list of elements.+--- The results of all I/O actions are ignored.+mapIO_            :: (a -> IO _) -> [a] -> IO ()+mapIO_ f           = sequenceIO_ . map f+++----------------------------------------------------------------+-- Non-determinism:++--- Non-deterministic choice <EM>par excellence</EM>.+--- The value of <EM>x ? y</EM> is either <EM>x</EM> or <EM>y</EM>.+--- @param x - The right argument.+--- @param y - The left argument.+--- @return either <EM>x</EM> or <EM>y</EM> non-deterministically.+(?)   :: a -> a -> a+x ? _ = x+_ ? y = y++----------------------------------------------------------------+-- Encapsulated search:+----------------------------------------------------------------++--- Search trees represent the search space of evaluating a given +--- term. For example, the search tree corresponding to +--- the evaluation of+--- (0?1) + (0?1) +--- is Or [Or [Value 0,Value 1],Or [Value 1,Value 2]]+--- whereas the one corresponding to +--- let x=0?1 in x+x +--- is Or [Value 0,Value 2]. +data SearchTree a +  = Fail+  | Value a +  | Choice [SearchTree a] +  | Suspend + +--- Basic search control operator, providing the searchtree lazily with +--- respect to Or branches. The argument of the Value constructor is +--- always evaluated to full normal form. This guarantees that it is +--- really a value and does neither induce another fail nor a +--- branching.+getSearchTree :: a -> IO (SearchTree a)+getSearchTree external++{-+--- Basic operation for generic programming+--- type Data represents arbitrary data types+--- with the strings containing the names of +--- constructors++data Data = Data String [Data]++--- toData residuates on free variables+--- example: toData (Just False) = Data "Just" [Data "False"]++toData :: a -> Data+toData external++--- E.g. fromData (Data unknown "Nothing") = (Data 1 unknown) = Nothing +--- (modulo variable instanciation)+fromData :: Data -> a+fromData external++--- num data might make +data NumData = NumData Int [NumData]++--- toNumData residuates on free variables+toNumData :: a -> NumData+toNumData external++--- toData/fromData are enough for basic generics like +--- show, read, compare and (==).+--- See compare above for a simple example.+--- Other operations can be found in Module Generic+-}+ +--- depth first search+allValuesD :: SearchTree a -> [a]+allValuesD (Value x) = [x]+allValuesD Fail      = []+allValuesD Suspend   = []+allValuesD (Choice xs)   = concatMap allValuesD xs++--- breadth first search+allValuesB :: SearchTree a -> [a]+allValuesB st = unfoldOrs [st]+  where+    partition (Value x) y = let (vs,ors) = y in (x:vs,ors)+    partition (Choice xs)   y = let (vs,ors) = y in (vs,xs++ors)+    partition Fail      y = y+    partition Suspend   y = y++    unfoldOrs [] = []+    unfoldOrs (x:xs) = let (vals,ors) = foldr partition ([],[]) (x:xs) in+      vals ++ unfoldOrs ors++--- Inject operator which adds the application of the unary+--- procedure p to the search variable to the search goal+--- taken from Oz. p x comes before g x to enable a test+generate+--- form in a sequential implementation.+inject  :: (a->Success) -> (a->Success) -> (a->Success) +inject g p = \x -> p x & g x++--- Identity function used by the partial evaluator+--- to mark expressions to be partially evaluated.+PEVAL   :: a -> a+PEVAL x = x++-- Only for internal use:+-- Represenation of higher-order applications in FlatCurry.+apply :: (a->b) -> a -> b+apply external+++-- Only for internal use:+-- Representation of conditional rules in FlatCurry.+cond :: Success -> a -> a+cond external++unknown :: a+unknown = let x free in x++-- the end+++--- Non-strict equational constraint. Experimental.+(=:<=) :: a -> a -> Success+(=:<=) external
+ src/lib/Curry/Module/Prelude.hs.include view
@@ -0,0 +1,1359 @@+[ForType "IO" Nothing+,ForType "Float" Nothing+,ForType "Char" Nothing+,ForType "[]" (Just [Show,Read,BaseCurry,Curry])+,ForType "Nat" (Just [Show,Read])+,ForType "Int" (Just [Show,Read])+,ForType "Success" (Just [Show,Read,BaseCurry])+,ForType "Bool" (Just [Declaration,BaseCurry])+,SomeFunctions+]++import Char+import List+import System.IO.Unsafe+import Data.IORef++import Prelude hiding ((==),(>>=),return,catch)+import qualified Prelude ((==),(>>=),return) +import System.IO++#if __GLASGOW_HASKELL__ >= 610+import Control.OldException (catch)+#else+import Control.Exception (catch)+#endif++-----------------------------------------------------------------+-- curry number types+-----------------------------------------------------------------++type C_Float = Prim Float++-----------------------------------------------------------------+-- The curry IO monad+-----------------------------------------------------------------++data C_IO t0 = C_IO (State -> IO (IOVal t0))+  | C_IOFail C_Exceptions+  | C_IOOr OrRef (Branches (C_IO t0))++data IOVal t0 = IOVal t0+  | IOValFail C_Exceptions+  | IOValOr OrRef (Branches (IO (IOVal t0)))++data C_Bool = C_False+  | C_True+  | C_BoolFail Curry.RunTimeSystem.C_Exceptions+  | C_BoolOr Curry.RunTimeSystem.OrRef (Curry.RunTimeSystem.Branches C_Bool)+  | C_BoolAnd [C_Bool]++data C_Char = C_Char !Char+  | SearchChar  C_Four  C_Four  C_Four  C_Four+  | C_CharFail C_Exceptions+  | C_CharOr OrRef (Branches C_Char)++trace s x = unsafePerformIO (putStrLn s >> preturn x) +-----------------------------------------------------------------+-- type classes to extend BaseCurry to full Curry+-----------------------------------------------------------------++type StrEqResult = C_Bool++class (BaseCurry a,Show a,Read a) => Curry a where+  -- basic equalities +  strEq :: a -> a -> Result StrEqResult+  eq    :: a -> a -> Result C_Bool++  -- some generics+  propagate :: (forall b. Curry b => Int -> b -> Result b) -> a -> Result a+  foldCurry :: (forall c. Curry c => c -> b -> Result b) -> b -> a -> Result b++  -- name of the type+  typeName :: a -> String++  -- show qualified terms+  showQ :: Int -> a -> String -> String +  showQ = showsPrec++  showQList :: [a] -> String -> String+  showQList = showQStandardList++  -- generic programming+  --toC_Term   :: HNFMode -> State  -> a -> C_Data+  --fromC_Term :: C_Data -> a++class Generate a where+  genFree    :: Int -> [a]+  maxArity   :: a -> Int++-----------------------------------------------------------------+-- external Show instances+-----------------------------------------------------------------+++instance (Show t0) => Show (IOVal t0) where+  showsPrec d (IOVal x1) = showParen (d>10) showStr+   where+    showStr  = showString "IOVal" . showsPrec 11 x1+  showsPrec _ (IOValOr i _) = showString ('_':show (deref i))++instance Show (IO (IOVal a)) where+  show _  = "IO"++instance Show (C_IO a) where+  show _  = "IO"++instance Show C_Success where+  showsPrec _ C_Success = showString "success"+  showsPrec _ (C_SuccessOr ref _) = showString ('_':show (deref ref))++instance Show (a->b) where+  show _ = "FUNCTION"++instance Show a => Show (Prim a) where+  show (PrimValue x) = show x+  show (PrimOr r _) = "_"++show (deref r)++instance Show a => Show (List a) where+    showsPrec = showsPrecList (showsPrec 0) (showsPrec 0)++showsPrecList :: (a -> ShowS) -> ([a] -> ShowS) -> Int -> List a -> ShowS+showsPrecList recursiveCall listCall _ (ListOr r _) = +  showString ('_':show (deref r))+showsPrecList recursiveCall listCall _ xs +  | isFreeList xs = showChar '(' . showFreel xs+  | otherwise     = listCall (toHaskellList xs)+      where+        isFreeList List = False+        isFreeList (ListOr _ _) = True+        isFreeList (_ :< xs) = isFreeList xs+        isFreeList _ = True++        showFreel (x:<xs)         = recursiveCall x . showChar ':' . showFreel xs+	showFreel (ListOr r _)    = showString ('_':show (deref r)++")")++showQStandardList :: Curry a => [a] -> ShowS+showQStandardList xs = showChar '[' . +                       foldr (.) (showChar ']') +                             (intersperse (showChar ',') (map (showQ 0) xs))++fourToInt :: C_Four -> Either String Int+fourToInt  C_F0 = Right 0+fourToInt  C_F1 = Right 1+fourToInt  C_F2 = Right 2+fourToInt  C_F3 = Right 3+fourToInt  x@(C_FourOr _ _) = Left (show x)++intToFour :: Int -> C_Four+intToFour  0 = C_F0+intToFour  1 = C_F1+intToFour  2 = C_F2+intToFour  3 = C_F3++scToChar ::  C_Four ->  C_Four ->  C_Four ->  C_Four -> Either String Char+scToChar f1 f2 f3 f4 +  = chr' ((fourToInt f1**64)+++(fourToInt f2**16)+++(fourToInt f3**4)+++fourToInt f4)+  where +    Left s  ** _  = Left s+    Right i ** j  = Right (i*j)+    +    Left s  +++ _  = Left s+    Right i +++ Left s  = Left s+    Right i +++ Right j = Right (i+j)+    chr' (Right i) = Right (chr i)+    chr' (Left s)  = Left s++charToSc ::  Char -> C_Char+charToSc c = SearchChar (intToFour d64) (intToFour d16) (intToFour d4) (intToFour m4)+  where+    o = ord c+    (d64,m64) = divMod o 64+    (d16,m16) = divMod m64 16+    (d4,m4)   = divMod m16 4+    +instance Show C_Four where+  showsPrec d (C_FourOr r _) = showChar '_' . showsPrec d (deref r)+  showsPrec _ _ = error "probably due to usage of ($#) instead of ($##) \+                        \for an external function with argument type string or character"++instance Show C_Char where+  show (C_Char c) = show c+  show (SearchChar f1 f2 f3 f4) +    = either id show (scToChar f1 f2 f3 f4)+  show (C_CharOr r _) = '_':show (deref r)++  showList cs = if any isFreeChar cs+                  then showChar '[' . showFreel cs+                  else showChar '"' . showl cs   -- "+    where +      showl []       = showChar '"'+      showl (C_Char '"':cs) = showString "\\\"" . showl cs+      showl (C_Char c:cs)+       | oc <= 7   = showString "\\00" . shows oc . showl cs+       | oc <= 10  = showLitChar c . showl cs+       | oc <= 12  = showString "\\0" . shows oc . showl cs+       | oc <= 13  = showLitChar c . showl cs+       | oc <= 31  = showString "\\0" . shows oc . showl cs+       | oc <= 126 = showLitChar c . showl cs+       | otherwise = showString "\\" . shows oc . showl cs+       where oc = ord c+      showl (SearchChar f1 f2 f3 f4:cs) = +        either showString showLitChar (scToChar f1 f2 f3 f4) . showl cs+  +      showFreel [] = showString "]"+      showFreel [c] = showString (show c) . showString "]"+      showFreel (c:cs)   = showString (show c++",") . showFreel cs+      +      isFreeChar (SearchChar f1 f2 f3 f4) = +        Prelude.any ((Prelude.== Branching) . consKind) [f1,f2,f3,f4] +      isFreeChar _              = False++protectEsc p f             = f . cont+ where cont s@(c:_) | p c  = "\\&" ++ s+       cont s              = s++asciiTab = zip ['\NUL'..' ']+	   ["NUL", "SOH", "STX", "ETX", "EOT", "ENQ", "ACK", "BEL",+	    "BS",  "HT",  "LF",  "VT",  "FF",  "CR",  "SO",  "SI",+	    "DLE", "DC1", "DC2", "DC3", "DC4", "NAK", "SYN", "ETB",+	    "CAN", "EM",  "SUB", "ESC", "FS",  "GS",  "RS",  "US",+	    "SP"]++instance Show C_Nat where+  showsPrec d x | isFreeNat x = showsPrecNat d x+                | otherwise   = showsPrec d (fromCurry x::Integer)+++isFreeNat :: C_Nat -> Bool+isFreeNat (C_NatOr _ _)    = True+isFreeNat C_IHi            = False+isFreeNat (C_I n)          = isFreeNat n+isFreeNat (C_O n)          = isFreeNat n++showsPrecNat :: Int -> C_Nat -> ShowS+showsPrecNat _ C_IHi = Prelude.showString((:)('I')((:)('H')((:)('i')([]))))+showsPrecNat d (C_O x1) = Prelude.showParen((Prelude.>)(d)(Prelude.fromInteger((10))))(showStr)+ where+  showStr  = (Prelude..)(Prelude.showString((:)('O')((:)(' ')([]))))(showsPrecNat(Prelude.fromInteger((11)))(x1))++showsPrecNat d (C_I x1) = Prelude.showParen((Prelude.>)(d)(Prelude.fromInteger((10))))(showStr)+ where+  showStr  = (Prelude..)(Prelude.showString((:)('I')((:)(' ')([]))))(showsPrecNat(Prelude.fromInteger((11)))(x1))++showsPrecNat _ (C_NatOr i _) = Prelude.showString((:)('_')(Prelude.show(deref i)))++instance Show C_Int where+  showsPrec _ C_Zero = showChar '0'+  showsPrec d x@(C_Pos n) +    | isFreeNat n = showParen (d>10) (showString "Pos " . showsPrecNat 11 n)+    | otherwise   = showsPrec d (fromCurry x::Integer)+  showsPrec d x@(C_Neg n) +    | isFreeNat n = showParen (d>10) (showString "Neg " . showsPrecNat 11 n)+    | otherwise   = showsPrec d (fromCurry x::Integer)+  showsPrec _ (C_IntOr i _) = showChar '_' . shows (deref i)++-----------------------------------------------------------------+-- external Read instances+-----------------------------------------------------------------++instance Read C_Four where+  readsPrec _ _ = error "I won't read four"++instance (Read t0) => Read (IOVal t0) where+  readsPrec d r = readParen (d>10) +    (\ r -> [ (IOVal x1,r1) | (_,r0) <- readQualified "Prelude" "IOVal" r, +                              (x1,r1) <- readsPrec 11 r0]) r++instance Read (IO (IOVal a)) where+  readsPrec = error "no reading IO"++instance Read (C_IO a) where+  readsPrec = error "no reading IO"++instance Read C_Success where+  readsPrec d r = Prelude.readParen(Prelude.False)+                  (\ r -> [(,)(C_Success)(r0) | +                           (_,r0) <- readQualified "Prelude" "Success" r])(r)++instance Read a => Read (Prim a) where+  readsPrec p s = map (\(x,y) -> (PrimValue x,y)) (readsPrec p s)++instance Read a => Read (List a) where+    readsPrec p = map (\ (x,y) -> (fromHaskellList x,y)) . readsPrec p++instance Read C_Char where+  readsPrec p s = map (\ (x,y) -> (toCurry x,y))+                      (((readsPrec p)::ReadS Char) s)++  readList s = map (\ (x,y) -> (map toCurry x,y))+                      ((readList::ReadS String) s)++instance Read (a->b) where+  readsPrec = error "reading FUNCTION"++instance Read C_Nat where+  readsPrec d r =  +       readParen False  (\ r -> [(C_IHi,r0)  | (_ ,r0) <- readQualified "Prelude" "IHi" r]) r+    ++ readParen (d>10) (\ r -> [(C_O x1,r1) | (_ ,r0) <- readQualified "Prelude" "O"   r, +                                               (x1,r1) <- readsPrec 11 r0]) r+    ++ readParen (d>10) (\ r -> [(C_I x1,r1) | (_ ,r0) <- readQualified "Prelude" "I"   r, +                                               (x1,r1) <- readsPrec 11 r0]) r+    ++ [(toCurry i,r0) | (i::Integer,r0) <- reads r]++instance Read C_Int where+  readsPrec d r = +       readParen (d>10) (\ r -> [(C_Neg x1,r1)  | (_ ,r0) <- readQualified "Prelude" "Neg" r, +                                                  (x1,r1) <- readsPrec 11 r0]) r+    ++ readParen False  (\ r -> [(C_Zero,r0)    | (_ ,r0) <- readQualified "Prelude" "Zero" r]) r +    ++ readParen (d>10) (\ r -> [(C_Pos x1,r1)  | (_ ,r0) <- readQualified "Prelude" "Pos" r,+                                                  (x1,r1) <- readsPrec 11 r0]) r+    ++ [(toCurry i,r0) | (i::Integer,r0) <- reads r]+++-----------------------------------------------------------------+-- external BaseCurry instances+-----------------------------------------------------------------++instance (BaseCurry t0) => BaseCurry (IOVal t0) where+  nf f (IOVal x1) state0 = nfCTC(\ v1 state1 -> f(IOVal(v1)) (state1))(x1) (state0)+  nf f x state = f(x) (state)++  gnf f (IOVal x1) state0 = gnfCTC(\ v1 state1 -> f(IOVal(v1)) (state1))(x1) (state0)+  gnf f x state = f(x) (state)++  generator i    = IOVal (generator i)++  failed  = IOValFail++  branching r bs = IOValOr r (map preturn bs)++  consKind (IOValOr _ _) = Branching+  consKind (IOValFail _) = Failed+  consKind _ = Val++  exceptions (IOValFail x) = x++  orRef (IOValOr x _) = x++  branches (IOValOr _ bs) = map unsafePerformIO bs++instance (BaseCurry t0) => BaseCurry (IO (IOVal t0)) where+  nf f x state = f(x) (state)+  gnf f x state = f(x)(state)++  failed x = preturn (IOValFail x)++  generator u       = preturn (generator u)++  branching r bs = preturn (IOValOr r bs)++  consKind x = consKind (unsafePerformIO x)++  exceptions x = exceptions (unsafePerformIO x)++  orRef x = orRef (unsafePerformIO x)++  branches x = unsafePerformIO (x Prelude.>>= \ (IOValOr _ bs) -> preturn bs)++instance (BaseCurry t0) => BaseCurry (C_IO t0) where+  nf f x state = f(x)(state)+  gnf f x state = f(x)(state)++  generator i    = C_IO (\ _ -> generator i)++  failed  = C_IOFail++  branching  = C_IOOr++  consKind (C_IOOr _ _) = Branching+  consKind (C_IOFail _) = Failed+  consKind _ = Val++  exceptions (C_IOFail x) = x++  orRef (C_IOOr x _) = x++  branches (C_IOOr _ x) = x+++instance BaseCurry C_Char where+  nf f (SearchChar x1 x2 x3 x4) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> Curry.RunTimeSystem.nfCTC(\ v3 state3 -> Curry.RunTimeSystem.nfCTC(\ v4 state4 -> f(SearchChar(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  nf f x store = f(x)(store)++  gnf f (SearchChar x1 x2 x3 x4) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> Curry.RunTimeSystem.gnfCTC(\ v3 state3 -> Curry.RunTimeSystem.gnfCTC(\ v4 state4 -> f(SearchChar(v1)(v2)(v3)(v4))(state4))(x4)(state3))(x3)(state2))(x2)(state1))(x1)(state0)+  gnf f x store = f(x)(store)+  ++  consKind (C_CharOr _ _) = Branching+  consKind (C_CharFail _) = Failed+  consKind _ = Val++  generator i = withRef ( \r -> SearchChar (generator r) +                                           (generator (r+1)) +                                           (generator (r+2)) +                                           (generator (r+3))) 3++  orRef      (C_CharOr x _) = x+  branches   (C_CharOr _ x) = x++  failed = C_CharFail++  exceptions (C_CharFail x) = x++  branching  = C_CharOr+++instance Generate a => BaseCurry (Prim a) where+  nf f x store = f(x)(store)++  gnf f x store = f(x)(store)++  generator i    = gen genFree +    where+      gen f = let max = maxArity (head (f 0)) in+        withRef (\r -> PrimOr (mkRef r max i)+                              (map PrimValue (f r)))+                max++  failed = PrimFail+  branching = PrimOr++  consKind (PrimOr _ _) = Branching+  consKind (PrimFail _) = Failed+  consKind _ = Val++  exceptions (PrimFail x) = x++  orRef (PrimOr x _) = x++  branches (PrimOr _ x) = x+++instance (BaseCurry t0) => BaseCurry (List t0) where+  nf f ((:<) x1 x2) state0 = Curry.RunTimeSystem.nfCTC(\ v1 state1 -> Curry.RunTimeSystem.nfCTC(\ v2 state2 -> f((:<)(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  nf f x st = f(x)(st)++  gnf f ((:<) x1 x2) state0 = Curry.RunTimeSystem.gnfCTC(\ v1 state1 -> Curry.RunTimeSystem.gnfCTC(\ v2 state2 -> f((:<)(v1)(v2))(state2))(x2)(state1))(x1)(state0)+  gnf f x st = f(x)(st)++  generator i = withRef (\ r -> ListOr (mkRef r 2 i) +                        ([List,(:<)(generator(r+1))(generator(r+2))])) 2++  failed  = ListFail++  branching  = ListOr++  consKind (ListOr _ _) = Curry.RunTimeSystem.Branching+  consKind (ListFail _) = Curry.RunTimeSystem.Failed+  consKind _ = Curry.RunTimeSystem.Val++  exceptions (ListFail x) = x++  orRef (ListOr x _) = x++  branches (ListOr _ x) = x+++-----------------------------------------------------------------+-- converting between curry and haskell+-----------------------------------------------------------------++-- In Order to integrate Haskell functions we sometimes +-- need to convert values.+-- (Do we really need both directions? Or rather convert a b for both?)+class ConvertCH a b where+  fromCurry :: a -> b+  fromCurry = error "fromCurry"+  toCurry :: b -> a+  toCurry = error "toCurry"++instance ConvertCH C_Bool Bool where+  fromCurry C_True  = True+  fromCurry C_False = False++  toCurry True  = C_True+  toCurry False = C_False++isC_True C_True = True+isC_True _      = False++instance ConvertCH C_Char Char where+  fromCurry (C_Char c) = c+  fromCurry (SearchChar f0 f1 f2 f3) = +    either (error "convert to char") id (scToChar f0 f1 f2 f3)+  toCurry c = C_Char c++instance (ConvertCH a b) => ConvertCH (List a) [b] where+  fromCurry List = []+  fromCurry (x :< xs) = fromCurry x : fromCurry xs+  fromCurry (ListOr _ _) = error "or list"++  toCurry [] = List+  toCurry (x:xs) = toCurry x :< toCurry xs++-- sometimes you need conversion of lists without converting the elements+-- eg Searchtree, Show instance++toHaskellList :: List a -> [a]+toHaskellList List = []+toHaskellList (x :< xs) = x : toHaskellList xs++fromHaskellList :: [a] -> List a+fromHaskellList [] = List+fromHaskellList (x : xs) = x :< fromHaskellList xs++-- specify result type of toCurry "..." for code generation+fromHaskellString :: String -> List C_Char+fromHaskellString = toCurry++instance ConvertCH C_Int Integer where+  fromCurry C_Zero    = 0+  fromCurry (C_Pos i) = fromCurry i+  fromCurry (C_Neg i) = negate (fromCurry i)++  toCurry n = case compare n 0 of+   LT -> C_Neg (toCurry (abs n))+   EQ -> C_Zero+   GT -> C_Pos (toCurry (abs n))++instance ConvertCH C_Nat Integer where+  fromCurry (C_I bs) = 2 Prelude.* fromCurry bs Prelude.+ 1+  fromCurry (C_O bs) = 2 Prelude.* fromCurry bs+  fromCurry C_IHi    = 1++  toCurry n = case mod n 2 of+                1 -> if m Prelude.== 0 then C_IHi else C_I (toCurry m)+                0 -> C_O (toCurry m)+    where m = Prelude.div n 2+++instance ConvertCH C_Int Int where+  fromCurry c = fromInteger (fromCurry c)+  toCurry i   = toCurry (toInteger i)++instance ConvertCH (Prim a) a where+  toCurry = PrimValue +  fromCurry (PrimValue x) = x++-------------------------------------------------------------+-- basic functions used in instances of class GenericCurry+-------------------------------------------------------------+-- obscure names come from the standard operator +-- renaming scheme of the compiler.++-- implementation of concurrent (&)+-- no other implementation+-- basic concept: if one value suspends evaluate the other +-- TODO: include state information!+concAnd :: StrEqResult -> StrEqResult -> Result StrEqResult+concAnd C_True y _ = y+concAnd x@(C_BoolOr _ _) y st = maySwitch y x st+--concAnd (C_BoolOr r xs) y = C_BoolOr r (map (flip concAnd y) xs)+concAnd x@(C_BoolFail _) _ _ = x+concAnd x@C_False _ _ = x++maySwitch :: StrEqResult -> StrEqResult -> Result StrEqResult+maySwitch C_True x _ = x+maySwitch y@(C_BoolOr _ _) (C_BoolOr r xs) st = +             C_BoolOr r (map (\ x -> concAnd y x st) xs)+maySwitch x@(C_BoolFail _) _ _ = x+maySwitch x@C_False _ _ = x+{-+startBreadth :: [StrEqResult] -> Result StrEqResult+startBreadth cs st = onLists st [] cs++instance Eq C_Bool where+  C_True == C_True = True+  C_False == C_False = True+  _ == _ = False++allSame :: Eq a => [a] -> Bool+allSame []     = True+allSame (x:xs) = all (x==) xs++onLists :: Store -> [StrEqResult] -> [StrEqResult] -> StrEqResult+onLists _ []  []      = strEqSuccess+onLists _ _   (x@(C_BoolFail _):_) = x+onLists _ _   (C_False:_)   = C_False+onLists st ors (C_True:xs) = onLists st ors xs+onLists st ors (C_BoolAnd xs:ys) = onLists st ors (xs++ys)+onLists st ors (C_BoolOr ref xs:ys) +  | isChain ref = chain (\ x st -> onLists st ors (x:ys)) ref xs st+  | otherwise   = case fromStore ref st of+  Nothing -> onLists st (insertOr ref xs ors) ys+  Just i  -> onLists st ors (xs!!i : ys)+onLists st (C_BoolOr ref xs:ors) [] = +  let inBranch i x = maybe (failed $ curryError "onLists")+                           (\st -> onLists st ors [x])+                           (addToStore ref i st)+  in  C_BoolOr ref (zipWith inBranch [0..] xs)++insertOr ref xs [] = [C_BoolOr ref xs]+insertOr ref xs (o@(C_BoolOr ref2 xs2):ys) +  | ref==ref2 = C_BoolOr ref (zipWith insertAnd xs xs2) : ys+  | otherwise = o : insertOr ref xs ys++insertAnd C_True           y       	    = y+insertAnd C_False          _       	    = C_False+insertAnd x@(C_BoolFail _) _       	    = x+insertAnd x                C_True  	    = x+insertAnd _                C_False 	    = C_False+insertAnd _                x@(C_BoolFail _) = x+insertAnd o1@(C_BoolOr ref1 xs1) o2@(C_BoolOr ref2 xs2) +  | ref1 == ref2 = C_BoolOr ref1 (zipWith insertAnd xs1 xs2)+  | otherwise    = C_BoolAnd [o1,o2]+insertAnd o@(C_BoolOr _ _) (C_BoolAnd ys)   = C_BoolAnd (o:ys)+insertAnd (C_BoolAnd ys)   o@(C_BoolOr _ _) = C_BoolAnd (o:ys)+insertAnd (C_BoolAnd xs)   (C_BoolAnd ys)   = C_BoolAnd (xs++ys)+-}+--- implementation of (==)+--- no other implementation+genEq :: Curry t0 => t0 -> t0 -> Result C_Bool+genEq x y = ghnfCTC (\x'-> ghnfCTC (eq x') y) x++--- implementation of (=:=)+--- no other implementation+--- TODO: use state information+genStrEq :: Curry t0 => t0 -> t0 -> Result StrEqResult+genStrEq a b = (\ a' -> (onceMore a') `hnfCTC` b)  `hnfCTC` a+  where+    onceMore a' b' = (\ a'' -> unify a'' b') `hnfCTC` a'+    unify x y st = checkFree (consKind x) (consKind y)+      where+      checkFree Val Val = strEq x y st++      checkFree Branching Branching  +         | drx Prelude.== dry+         = C_True+         | otherwise = branching (equalFromTo ax bx drx ay by dry) [C_True]+         where (ax,bx,drx)=genInfo (orRef x)+               (ay,by,dry)=genInfo (orRef y)++      checkFree Branching _ = +        hnfCTC (\ x' -> unify x' y) +               (branching (narrowOrRef (orRef x)) (branches x)) st++      checkFree _ Branching = +        hnfCTC (unify x)+               (branching (narrowOrRef (orRef y)) (branches y)) st++      checkFree x   y   = error $ "checkFree " ++ show (x,y)++strEqFail :: String -> StrEqResult+strEqFail s = C_False --C_SuccessFail (ErrorCall ("(=:=) for type "++s))++strEqSuccess :: StrEqResult+strEqSuccess = C_True++--hcAppend [] ys = ys+--hcAppend (x:xs) ys = x:< hcAppend xs ys++-----------------------------------------------------------------+-- external Generate instances+-----------------------------------------------------------------++instance BaseCurry b => Generate (a -> Result b) where+  genFree i  = mkBranches (generator i)+  maxArity _ = 1++mkBranches :: BaseCurry b => b -> [a -> Result b]+mkBranches x = case consKind x of+       Val       -> [const (const x)]+       Branching -> map (const . const) (branches x)++instance Generate Float where+  genFree    = error "free variable of type Float"+  maxArity _ = error "free variable of type Float"++-----------------------------------------------------------------+-- external Curry instances+-----------------------------------------------------------------++instance (Curry t0) => Curry (List t0) where+  strEq List List st = strEqSuccess+  strEq ((:<) x1 x2) ((:<) y1 y2) st = concAnd(genStrEq(x1)(y1)(st))(genStrEq(x2)(y2)(st))(st)+  strEq _ x0 _ = strEqFail(typeName(x0))++  eq List List st = C_True+  eq ((:<) x1 x2) ((:<) y1 y2) st = op_38_38(genEq(x1)(y1)(st))(genEq(x2)(y2)(st))(st)+  eq _ _ _ = C_False++  propagate f List st = List+  propagate f ((:<) x1 x2) st = (:<)(f 0 (x1)(st))(f 1 (x2)(st))++  foldCurry f c List st = c+  foldCurry f c ((:<) x1 x2) st = f(x1)(f(x2)(c)(st))(st)++  typeName _ = "[]"++  showQ  = showsPrecList (showQ 0) showQList ++instance Curry C_Four where+  strEq C_F0 C_F0 _ = strEqSuccess+  strEq C_F1 C_F1 _ = strEqSuccess+  strEq C_F2 C_F2 _ = strEqSuccess+  strEq C_F3 C_F3 _ = strEqSuccess+  strEq x0   _    _ = strEqFail(typeName(x0))++  eq C_F0 C_F0 _ = C_True+  eq C_F1 C_F1 _ = C_True+  eq C_F2 C_F2 _ = C_True+  eq C_F3 C_F3 _ = C_True+  eq _    _    _ = C_False++  propagate _ C_F0 _ = C_F0+  propagate _ C_F1 _ = C_F1+  propagate _ C_F2 _ = C_F2+  propagate _ C_F3 _ = C_F3++  foldCurry _ c C_F0 _ = c+  foldCurry _ c C_F1 _ = c+  foldCurry _ c C_F2 _ = c+  foldCurry _ c C_F3 _ = c++  typeName _ = "Four"+++instance BaseCurry a => Curry (IO (IOVal a)) where +  strEq x y = error "IO.strEq"++  eq _ _ = error "IO.eq"++  propagate _ _ = error "propagate IOVal"++  foldCurry _ _ _ = error "foldCurry IOVal"++  typeName _ = "IOVal"++  --toC_Term _ _ _ = error "IO.toC_Term"+  --fromC_Term _   = error "IO.fromC_Term"+++instance BaseCurry a => Curry (C_IO a) where+  strEq _ _ = error "strEq IO"++  eq _ _ = error "eq IO"++  --subst store x = x++  propagate _ _ = error "propagate IO"++  foldCurry _ _ _ = error "foldCurry IO"++  typeName _ = "IO"++  --toC_Term _ _ (C_IOFreeVar r) = C_Free(C_Int(Prelude.toInteger(r)))+  --toC_Term _ _ _ = C_Data (C_Int 1) (toCurry "IO") List++  --fromC_Term (C_Free (C_Int r)) = C_IOFreeVar(Prelude.fromInteger(r))+  --fromC_Term _ = error "no converting IO"++instance Curry C_Char where+  strEq x@(C_Char c1) (C_Char c2) _+    | c1 Prelude.== c2 = C_True+  strEq c1@(SearchChar _ _ _ _) (C_Char c2) st = strEq c1 (charToSc c2) st +  strEq (C_Char c1) c2@(SearchChar _ _ _ _) st = strEq (charToSc c1) c2 st +  strEq (SearchChar x1 x2 x3 x4) (SearchChar y1 y2 y3 y4) st = concAnd (genEq(x1)(y1)st)(concAnd(genStrEq(x2)(y2)st)(concAnd(genStrEq(x3)(y3)st)(genStrEq(x4)(y4)st)st)st)st+  strEq _ x _ = strEqFail (typeName x)+++  eq (C_Char x1) (C_Char y1)             _  = toCurry (x1 Prelude.== y1)+  eq c1@(SearchChar _ _ _ _) (C_Char c2) st = eq c1 (charToSc c2) st+  eq (C_Char c1) c2@(SearchChar _ _ _ _) st = eq (charToSc c1) c2 st+  eq (SearchChar x1 x2 x3 x4) (SearchChar y1 y2 y3 y4) st = op_38_38 (genEq (x1)(y1)st) (op_38_38 (genEq(x2)(y2)st) (op_38_38(genEq(x3)(y3)st)(genEq(x4)(y4)st)st)st)st+  eq _ _ _ = C_False++  propagate _ c@(C_Char _) _ = c+  propagate f (SearchChar f0 f1 f2 f3) st = +    SearchChar (f 0 f0 st) (f 1 f1 st) (f 2 f2 st) (f 3 f3 st)++  foldCurry _ c (C_Char _) _ = c+  foldCurry f c (SearchChar f0 f1 f2 f3) st = f f0 (f f1 (f f2 (f f3 c st)st)st)st++  typeName _ = "Char"++  showQList = showList  ++  --toC_Term _ _ (C_Char c) = C_Data (C_Int (toInteger (ord c))) (toCurry (show c)) List+  --toC_Term _ _ (C_CharFreeVar r) = C_Free(C_Int(Prelude.toInteger(r)))++  --fromC_Term (C_Data (C_Int (i::Integer)) _ List) = C_Char (chr (fromInteger i))+  --fromC_Term (C_Data (C_IntFreeVar _) name List) = C_Char (read (fromCurry name))+  --fromC_Term (C_Free (C_Int r)) = C_CharFreeVar(Prelude.fromInteger(r))+++instance (Generate a,Show a,Read a,Eq a) => Curry (Prim a) where+  strEq x@(PrimValue v1) (PrimValue v2) _+    | v1 Prelude.== v2 = C_True --C_Success+    | otherwise = strEqFail (typeName x)++  eq (PrimValue v1) (PrimValue v2) _ = toCurry (v1 Prelude.== v2)++  propagate _ (PrimValue v1) _ = PrimValue v1++  foldCurry _ c (PrimValue _) _ = c++  --toC_Term _ _ (PrimValue x1) = let sx = show x1 in+  --    C_Data (C_Int (string2int sx)) (toCurry sx) List+  --toC_Term _ _ (PrimFreeVar r) = C_Free(C_Int(Prelude.toInteger(r)))++  --fromC_Term (C_Data _ name List) = PrimValue (read (fromCurry name))+  --fromC_Term (C_Free (C_Int r)) = PrimFreeVar(Prelude.fromInteger(r))+ +  typeName _ = "Prim"++++-----------------------------------------------------------------+-- external Curry instances+-----------------------------------------------------------------++instance Eq (a->b) where+  (==) = error "comparing FUNCTION"++++++infix  4 ===+infixr 0 & ++-----------------------------------------------------------------------+-- IO starter+-----------------------------------------------------------------------++preturn = Prelude.return++optChangeStore :: a -> (b -> Store -> a) -> ((Int -> Store) -> a) +               -> OrRef -> Branches b -> Store -> a+optChangeStore err det br = +  manipulateStore err det (\ _ -> br) (\ _ -> det)++curryIO :: Curry a => (Result (C_IO a)) -> IO a+curryIO x = let st = emptyStore in ioStart st (x st)++curryIOVoid :: Curry a => (Result (C_IO a)) -> IO ()+curryIOVoid x = curryIO x >> Prelude.return ()++ioStart :: Curry a => Store -> C_IO a -> IO a+ioStart st (C_IO act)            = act st Prelude.>>= curryDo st+ioStart _  (C_IOFail es)         = printExceptions es+ioStart st (C_IOOr ref bs)       =+  optChangeStore +    (printExceptions (curryError "ioStart"))+    (flip ioStart)+    (\st -> searchValC_IO [] (zipWith (mkChoice st) [0..] bs))+    ref +    bs +    st++curryDo :: Curry a => Store -> IOVal a -> IO a+curryDo _  (IOVal x)        = Prelude.return x+curryDo _  (IOValFail es)   = printExceptions es+curryDo st (IOValOr ref bs) =     +  optChangeStore +    (printExceptions (curryError "curryDo")) +    (\ x st -> x Prelude.>>= curryDo st)+    (\st -> searchIOVal [] (zipWith (mkChoice st) [0..] bs))+    ref +    bs+    st++mkChoice :: BaseCurry a => (Int -> Store) -> Int -> a -> (Store,a)+mkChoice st i x = (st i,x)++searchValC_IO :: Curry a => [C_Exceptions] -> [(Store,C_IO a)] -> IO a+searchValC_IO es []     = +  mapM_ printException es >> error "no solution in branching io value"+searchValC_IO _ ((st,C_IO act)   : _)  = act st Prelude.>>= curryDo st+searchValC_IO es ((_ ,C_IOFail e@(ErrorCall _)) : xs) = +  searchValC_IO (e:es) xs+searchValC_IO es ((_ ,C_IOFail e) : xs) = searchValC_IO es xs+searchValC_IO es ((st,C_IOOr ref bs) : xs) =  +  optChangeStore+    (searchValC_IO es xs)+    (\ x st -> case x of+        C_IO act   -> act st Prelude.>>= curryDo st+        C_IOOr _ _ -> searchValC_IO es ((st,x):xs)+        C_IOFail _ -> searchValC_IO es xs)+    -- switch arguments of (++) for breadth first (bad.), cf. also below+    (\ st -> searchValC_IO es (zipWith (mkChoice st) [0..] bs ++ xs))+    ref bs st++searchIOVal :: Curry a => [C_Exceptions] -> [(Store,IO (IOVal a))] -> IO a+searchIOVal es []                = +  mapM_ printException es >> error "no solution in branching io value"+searchIOVal es ((st,act) : stacts) = do+  x <- act+  case x of+    IOVal a        -> Prelude.return a+    IOValFail e@(ErrorCall _) -> searchIOVal (e:es) stacts+    IOValFail _    -> searchIOVal es stacts+      -- switch arguments of (++) for breadth first (bad.)+    IOValOr ref bs -> +      optChangeStore +        (searchIOVal (curryError "inconsistent Store":es) stacts)+        (\ x st -> searchIOVal es ((st,x):stacts))+        (\st -> searchIOVal es (zipWith (mkChoice st) [0..] bs ++ stacts))+        ref bs st++-- this is the place to change for implicit breadth first search+searchVal :: (Store -> a -> b) -> Store -> OrRef -> Branches a -> b+searchVal cont store ref [] =  error "top io failed"+searchVal cont store ref (x:bs) = cont store x++printException :: C_Exceptions -> IO ()+printException (PatternMatchFail s) = +  hPutStrLn stderr ("non-exhaustive patterns in function "++s)+printException (AssertionFailed s) = +  hPutStrLn stderr ("assertion failed with label "++s)+printException (IOException s) = +  hPutStrLn stderr ("io exception: " ++ s)+printException (ErrorCall s) = +  hPutStrLn stderr ("error : " ++s)+printException PreludeFailed = hPutStrLn stderr "Prelude.failed"++printExceptions :: C_Exceptions -> IO a+printExceptions e = +  printException e >> error "program error"++-----------------------------------------------------------------------+-- Int and Float+-----------------------------------------------------------------------+++instance Eq C_Int where+  x == y = (fromCurry x::Integer) Prelude.== fromCurry y++instance Num C_Int where+  fromInteger x = toCurry x+  x + y = toCurry ((fromCurry x::Integer) + fromCurry y)+  x * y = toCurry ((fromCurry x::Integer) * fromCurry y)+  +  abs (C_Neg x) = C_Pos x+  abs x = x++  signum (C_Pos _) = C_Pos C_IHi+  signum (C_Neg _) = C_Neg C_IHi+  signum x = x++instance Eq a => Eq (Prim a) where+  (PrimValue x) == (PrimValue y) = x Prelude.== y++instance (Num a) => Num (Prim a) where+  (PrimValue x) + (PrimValue y) = PrimValue (x+y)+  (PrimValue x) - (PrimValue y) = PrimValue (x-y)+  (PrimValue x) * (PrimValue y) = PrimValue (x*y)+  negate (PrimValue x) = PrimValue (negate x)+  abs    (PrimValue x) = PrimValue (abs x)+  signum (PrimValue x) = PrimValue (signum x)+  fromInteger x = PrimValue (fromInteger x)++instance Enum a => Enum (Prim a) where +    toEnum i = PrimValue (toEnum i)+    fromEnum (PrimValue x) = fromEnum x++instance Real a => Real (Prim a) where +    toRational (PrimValue x) = toRational x++instance Integral a => Integral (Prim a) where +    quotRem (PrimValue x) (PrimValue y) = let (x',y') = quotRem x y in +                                           (PrimValue x', PrimValue y')+    toInteger (PrimValue x) = toInteger x++instance Ord a => Ord (Prim a) where+   (PrimValue x) <= (PrimValue y) = x<=y++-----------------------------------------------------------------------+-- T0 is unit (), needed for IO primitives+-----------------------------------------------------------------------++instance ConvertCH T0 () where+  toCurry () = T0+  fromCurry T0 = () ++instance (ConvertCH a ha, ConvertCH b hb) => ConvertCH (T2 a b) (ha,hb) where+  toCurry (x,y) = T2 (toCurry x) (toCurry y)+  fromCurry (T2 x y) = (fromCurry x, fromCurry y) ++instance (ConvertCH a ha, ConvertCH b hb, ConvertCH c hc) =>+         ConvertCH (T3 a b c) (ha,hb,hc) where+  toCurry (x,y,z) = T3 (toCurry x) (toCurry y) (toCurry z)+  fromCurry (T3 x y z) = (fromCurry x, fromCurry y, fromCurry z) ++-----------------------------------------------------------------------+-- Maybe+-----------------------------------------------------------------------++instance (ConvertCH a b) => ConvertCH (C_Maybe a) (Maybe b) where+  fromCurry C_Nothing  = Nothing+  fromCurry (C_Just x) = Just (fromCurry x)++  toCurry Nothing  = C_Nothing+  toCurry (Just x) = C_Just (toCurry x)+++---------------------------------------------------------------------------------+-- external functions for Prelude+---------------------------------------------------------------------------------++($#) :: (Curry a, Curry b) => Prim (a -> Result b) -> a -> Result b+($#) cont x = prepApply ghnfCTC x cont ++($!) :: (Curry a,Curry b) => Prim (a -> Result b) -> a -> Result b+($!) cont x = prepApply hnfCTC x cont++($!!) :: (Curry a, Curry b) => Prim (a -> Result b) -> a -> Result b+($!!) cont x = prepApply nfCTC x cont++($##) :: (Curry a, Curry b) => Prim (a -> Result b) -> a -> Result b+($##) cont x = prepApply gnfCTC x cont++prim_error :: Curry a => C_String -> Result a+prim_error s _ = Curry.RunTimeSystem.failed (ErrorCall (fromCurry s))++failed :: Curry a => Result a+failed _ = Curry.RunTimeSystem.failed PreludeFailed ++(==) :: Curry a => a -> a -> Result C_Bool+(==) = genEq ++prim_ord :: C_Char -> Result C_Int+prim_ord cc _ = toCurry (ord (fromCurry cc))++prim_chr :: C_Int -> Result C_Char+prim_chr ci _ = toCurry (chr (fromCurry ci))++(===) :: Curry a => a -> a -> Result C_Bool --C_Success+(===) = genStrEq+ +success :: C_Success+success = C_Success++--concAnd' x y st = startBreadth [x,y] st++(&) :: C_Success -> C_Success -> Result C_Success+ -- (&) x y st = boolToSuccess (concAnd' (successToBool x) (successToBool y) st)+(&) x y st = boolToSuccess +               (concAnd (successToBool x st) +                        (successToBool y st) st) st++boolToSuccess C_True            _  = C_Success+boolToSuccess C_False           _  = C_SuccessFail (ErrorCall "&")+boolToSuccess (C_BoolFail e)    _  = C_SuccessFail e+boolToSuccess (C_BoolOr r xs)   st = mapOr boolToSuccess r xs st+++successToBool :: C_Success -> Result C_Bool+successToBool C_Success                _  = C_True+successToBool (C_SuccessFail e)        _  = C_BoolFail e+successToBool (C_SuccessOr r xs)       st = mapOr successToBool r xs st++--andBreadth :: List C_Bool -> Result C_Bool+--andBreadth xs st = startBreadth (toHaskellList xs) st++-- TODO: C_IO without State??? also other io-functions.+(>>=) :: (Curry a,Curry b) => C_IO a -> Prim (a -> Result (C_IO b)) -> Result (C_IO b)+(>>=) m f _ = C_IO (hnfCTC (exec f) m)++exec :: (Curry a,Curry b) => Prim (a -> Result (C_IO b)) -> C_IO a -> Result (IO (IOVal b))+exec f (C_IO m) st = m st Prelude.>>= \ x -> prim_do f x st++-- if it wasn't io, we could just write +--exec f st (C_IO m) = m st Prelude.>>= hnfCTC (fromIOVal f) st+-- with fromIOVal simply being+--fromIOVal::(Curry a,Curry b)=>Prim(a->C_IO b)->State->IOVal a->IO(IOVal b)+--fromIOVal f st (IOVal res) = hnfCTC exec2 st (apply f res)+-- and everything would work fine. But then for the susp and or cases+-- we would use unsafe io...+-- Thus, prim_do has to copy the code of ctcStore False+-- IMPORTANT: This code should correspond to BaseCurry.RunTimeSystem.ctcStore++prim_do ::  (Curry a,Curry b) => +            Prim (a -> Result (C_IO b)) -> IOVal a ->  Result (IO (IOVal b))+prim_do f x state = case x of+  IOVal res      -> hnfCTC exec2 (apply f res state) state+  IOValFail es   -> Prelude.return (IOValFail es)+  IOValOr ref bs -> +    optChangeStore+       (Curry.RunTimeSystem.failed $ curryError "prim_do")+       (\ x st -> x Prelude.>>= \ x' -> prim_do f x' st)+       (\ st -> Prelude.return (IOValOr ref +                  (zipWith (\ i x -> x Prelude.>>= \ x' -> cont x' (st i)) +                           [0..] bs)))+       ref bs state+  where+    cont x st = prim_do f x st++exec2 :: C_IO b -> Result (IO (IOVal b))+exec2 (C_IO f) = f +++return :: a -> Result (C_IO a)+return a _ = C_IO (\ _ -> Prelude.return (IOVal a))++prim_putChar :: C_Char -> Result (C_IO T0)+prim_putChar = ioFunc1 putChar ++getChar :: Result (C_IO C_Char)+getChar = ioFunc0 Prelude.getChar+ +prim_readFile :: C_String -> Result (C_IO C_String)+prim_readFile = ioFunc1 readFile ++prim_writeFile :: C_String -> C_String -> Result (C_IO T0)+prim_writeFile = ioFunc2 writeFile ++prim_appendFile :: C_String -> C_String -> Result (C_IO T0)+prim_appendFile = ioFunc2 appendFile ++catchFail :: Curry a => C_IO a -> C_IO a -> Result (C_IO a)+catchFail (C_IO act) err _ = +  C_IO (\ st -> catch (act st) (const (hnfCTC exec2 err st)))+catchFail (C_IOFail _) err _ = err+catchFail (C_IOOr ref bs) err st =+  optChangeStore +    err+    (flip catchFail err)+    (\st -> searchValCatch (zipWith (mkChoice st) [0..] bs) err)+    ref bs st++searchValCatch :: Curry a => [(Store,C_IO a)] -> C_IO a -> C_IO a+searchValCatch []     err = err+searchValCatch ((st,C_IO act)   : _)  err = catchFail (C_IO act) err st+searchValCatch ((_ ,C_IOFail _) : xs) err = searchValCatch xs err+searchValCatch ((st,C_IOOr ref bs) : xs)  err =  +  optChangeStore +    (searchValCatch xs err)+    (\ x st -> catchFail x err st)+    (\ st -> searchValCatch (zipWith (mkChoice st) [0..] bs ++ xs) err)+    ref bs st++++++prim_show :: (Show a,Curry a) => a -> Result C_String+prim_show x _ = toCurry (show x)++getSearchTree :: Curry a => a -> Result (C_IO (C_SearchTree a))+getSearchTree x _ = C_IO (\ state -> Prelude.return (IOVal (searchTr x state)))++ +searchTr :: Curry a => a -> Result (C_SearchTree a)+searchTr x state = transVal (nfCTC (nfCTC const) x state)+  where+    transVal x = case consKind x of+                   Val       -> C_Value x+                   Failed    -> C_Fail+                   Branching +                     | isGenerator (orRef x) -> C_Value x+                     | otherwise -> transBranching (branches x)++    transBranching []         = C_Fail+    transBranching [x]        = transVal x+    transBranching xs@(_:_:_) = C_Choice (fromHaskellList (map transVal xs))++{-+toData :: Curry a => a -> Result C_Data+toData _ st = prim_error (toCurry "toData not implemented") st --ctcStore True (toC_Term True) Nothing+++toNumData :: Curry a => a -> Result C_NumData+toNumData _ st = prim_error (toCurry "toNumData not implemented") st+  --ctcStore True (\ store x -> (conv2num (toC_Term True store x))) Nothing++++cmap _ List = List+cmap f (x :< xs) = f x :< cmap f xs++fromData :: Curry a => C_Data -> Result a+fromData _ st = prim_error (toCurry "fromData not implemented") st --fromC_Term+-}++prepApply :: (BaseCurry a,BaseCurry b) => +  ((b -> Result a) -> b -> Result a) -> b -> (Prim (b -> Result a)) -> Result a+prepApply  prep x (PrimValue f)     st = prep f x st+prepApply  prep x (PrimOr r bs)     st = mapOr (prepApply prep x) r bs st+prepApply  _    _  cont             _  = patternFail "Prelude.prepApply" cont++--apply :: (Curry b, Curry (Prim (a -> b))) => Prim (a -> b) -> a -> b+apply (PrimValue f)     x st = f x st+apply (PrimOr r bs)     x st = mapOr (\ f -> apply f x) r bs st+apply cont              _ st = patternFail "Prelude.apply" cont++-- these functions are employed for higher order+pf :: Curry b => (a -> Result b) -> Prim (a -> Result b)+pf = PrimValue ++pc :: Curry b => (a -> b) -> (Prim (a -> Result b))+pc f = PrimValue (\ x _  -> f x)++pa :: Curry c => (a -> Prim (b -> Result c)) -> Prim (a -> Result (Prim (b -> Result c)))+pa f = PrimValue (\ x _  -> f x)++cp :: (b -> c) -> (a -> b) -> a -> c+cp f g x = f (g x)+++cond :: Curry a => C_Success -> a -> Result a+cond C_Success  x _ = x+cond (C_SuccessOr r bs)     x st = mapOr (\ c -> cond c x) r bs st+cond x _ _ = patternFail "Prelude.cond" x+++ifVar :: (Curry a,Curry b) => b -> a -> a -> a+ifVar = error "ifVar not implemented"++---------------------------------------------+-- to ease connecting external functions +---------------------------------------------++extFunc1 :: (Curry a,Curry d,ConvertCH a b,ConvertCH d c) => (b->c) -> a -> Result d+extFunc1 f = gnfCTC (\ x' _ -> toCurry (f (fromCurry x'))) ++extFunc2 :: (Curry a, Curry c,Curry f,ConvertCH a b,ConvertCH c d,ConvertCH f e) => +            (b->d->e) -> a -> c -> Result f+extFunc2 f x y = +  gnfCTC (\x'->gnfCTC (\ y' _ -> toCurry (f (fromCurry x') (fromCurry y'))) y) x++extFunc3 :: (Curry c1, Curry c2, Curry c3, Curry cv,+             ConvertCH c1 h1,ConvertCH c2 h2,ConvertCH c3 h3,ConvertCH cv hv) => +            (h1->h2->h3->hv) -> c1 -> c2 -> c3 -> Result cv+extFunc3 f x y z = +  gnfCTC (\x' ->+  gnfCTC (\y' -> +  gnfCTC (\z' _ -> toCurry (f (fromCurry x') (fromCurry y') (fromCurry z'))) z ) y) x++extFunc4 :: (Curry c1, Curry c2, Curry c3, Curry c4, Curry cv,+             ConvertCH c1 h1,ConvertCH c2 h2,ConvertCH c3 h3,ConvertCH c4 h4,ConvertCH cv hv) => +            (h1->h2->h3->h4->hv) -> c1 -> c2 -> c3 -> c4 -> Result cv+extFunc4 f x1 x2 x3 x4 = +  gnfCTC (\x1' ->+  gnfCTC (\x2' -> +  gnfCTC (\x3' -> +  gnfCTC (\x4' _ -> toCurry (f (fromCurry x1') (fromCurry x2') (fromCurry x3') (fromCurry x4'))) +         x4) x3) x2) x1+++hnf2 :: (Curry a, Curry b,Curry c) => (a->b->c) -> a -> b -> Result c+hnf2 f x y = hnfCTC (\ x' -> hnfCTC (\ y' _ -> f x' y') y) x++ioFunc0 :: (Curry b,ConvertCH b a) => IO a -> Result (C_IO b)+ioFunc0 iof _ = C_IO (\ _ -> iof Prelude.>>= \hv -> Prelude.return (IOVal (toCurry hv)))+++ioFunc1 :: (Curry a,Curry d,ConvertCH a b,ConvertCH d c) => (b->IO c) -> a -> Result (C_IO d)+ioFunc1 iof x _ = C_IO (\ _ ->+           iof (fromCurry x) Prelude.>>= \hv ->+           Prelude.return (IOVal (toCurry hv)))++ioFunc2 :: (Curry a, Curry c,Curry f,ConvertCH a b,ConvertCH c d,ConvertCH f e) => +            (b->d->IO e) -> a -> c -> Result (C_IO f)+ioFunc2 iof x y _ = C_IO (\ _ ->+           iof (fromCurry x) (fromCurry y) Prelude.>>= \hv ->+           Prelude.return (IOVal (toCurry hv)))++ioFunc3 iof x y z _ = C_IO (\ _ ->+           iof (fromCurry x) (fromCurry y) (fromCurry z) Prelude.>>= \hv ->+           Prelude.return (IOVal (toCurry hv)))++ghnfCTC2 :: (Curry a, Curry b,Curry c) => (a->b->c) -> a -> b -> Result c+ghnfCTC2 f x y = ghnfCTC (\x'-> ghnfCTC (\ y' _ -> f x' y') y) x++++(=:<=) = error "function patterns not implemented"++-- from old autogenerated++data Prim t0 = PrimValue t0+  | PrimFail C_Exceptions+  | PrimOr OrRef (Branches (Prim t0))++data C_Four = C_F0+  | C_F1+  | C_F2+  | C_F3+  | C_FourFail C_Exceptions+  | C_FourOr OrRef (Branches C_Four)+  deriving (Eq)++instance BaseCurry C_Success where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = withRef(\ r -> C_SuccessOr(mkRef(r)(0)(i))([C_Success]))(0)++  failed  = C_SuccessFail++  branching  = C_SuccessOr++  consKind (C_SuccessOr _ _) = Branching+  consKind (C_SuccessFail _) = Failed+  consKind _ = Val++  exceptions (C_SuccessFail x) = x++  orRef (C_SuccessOr x _) = x++  branches (C_SuccessOr _ x) = x++++++instance BaseCurry C_Bool where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = withRef(\ r -> C_BoolOr(mkRef(r)(0)(i))([C_False,C_True]))(0)++  failed  = C_BoolFail++  branching  = C_BoolOr++  consKind (C_BoolOr _ _) = Branching+  consKind (C_BoolFail _) = Failed+  consKind _ = Val++  exceptions (C_BoolFail x) = x++  orRef (C_BoolOr x _) = x++  branches (C_BoolOr _ x) = x++++++instance BaseCurry C_Four where+  nf f x st = f(x)(st)++  gnf f x st = f(x)(st)++  generator i = withRef(\ r -> C_FourOr(mkRef(r)(0)(i))([C_F0,C_F1,C_F2,C_F3]))(0)++  failed  = C_FourFail++  branching  = C_FourOr++  consKind (C_FourOr _ _) = Branching+  consKind (C_FourFail _) = Failed+  consKind _ = Val++  exceptions (C_FourFail x) = x++  orRef (C_FourOr x _) = x++  branches (C_FourOr _ x) = x++++++
+ src/lib/Curry/Module/Pretty.curry view
@@ -0,0 +1,300 @@+--- This library provides pretty printing combinators.+--- The interface is that of +--- <a href="http://www.cs.uu.nl/~daan/download/pprint/pprint.html">Daan Leijen's library</a> +--- (<code>fill</code>, <code>fillBreak</code> and <code>indent</code>+--- are missing) with a+--- <a href="http://www.cs.kent.ac.uk/pubs/2006/2381/index.html">linear-time, bounded implementation</a> by Olaf Chitil.+---+--- @author Sebastian Fischer+--- @version October 2006+---+module Pretty (++  -- pretty printer and document type+  pretty, Doc, ++  -- basic document combinators+  empty, text, linesep, line, linebreak, group, softline, softbreak,++  -- alignment combinators+  nest, hang, align, --indent??,++  -- composition combinators+  combine, (<>), (<+>), (<$>), (</>), (<$$>), (<//>),++  -- list combinators+  compose, hsep, vsep, fillSep, sep, hcat, vcat, fillCat, cat, +  punctuate, encloseSep, hEncloseSep, fillEncloseSep, list, tupled, semiBraces,++  -- bracketing combinators+  enclose, squotes, dquotes, bquotes, parens, angles, braces, brackets,++  -- primitve type documents+  char, string, int, float,++  -- character documents+  lparen, rparen, langle, rangle, lbrace, rbrace, lbracket, rbracket,+  squote, dquote, semi, colon, comma, space, dot, backslash, equals++  ) where++import Dequeue as Q++infixl 1 <>, <+>, <$>, </>, <$$>, <//>++data Doc = Doc (Tokens -> Tokens)++deDoc (Doc d) = d++empty :: Doc+empty = text ""++text :: String -> Doc+text s = Doc (Text s)++linesep :: String -> Doc+linesep = Doc . Line++line, linebreak, softline, softbreak :: Doc+line = linesep " "+linebreak = linesep ""+softline = group line+softbreak = group linebreak++group :: Doc -> Doc+group d = Doc (Open . deDoc d . Close)++nest, hang :: Int -> Doc -> Doc+nest i d = Doc (OpenNest (\ms@(m:_) _ _ -> (m+i):ms) . deDoc d . CloseNest)+hang i d = Doc (OpenNest (\ms r w -> (w-r+i):ms) . deDoc d . CloseNest)++align :: Doc -> Doc+align = hang 0++combine :: Doc -> Doc -> Doc -> Doc+combine s d1 d2 = enclose d1 d2 s++(<>), (<+>), (<$>), (</>), (<$$>), (<//>) :: Doc -> Doc -> Doc+d1 <> d2 = Doc (deDoc d1 . deDoc d2)+(<+>) = combine space+(<$>) = combine line+(</>) = combine softline+(<$$>) = combine linebreak+(<//>) = combine softbreak++compose :: (Doc -> Doc -> Doc) -> [Doc] -> Doc+--compose op = foldr op empty+compose _ [] = empty+compose op ds@(_:_) = foldr1 op ds -- no seperator at the end++hsep, vsep, fillSep, sep, hcat, vcat, fillCat, cat :: [Doc] -> Doc+hsep = compose (<+>)+vsep = compose (<$>)+fillSep = compose (</>)+sep = group . vsep+hcat = compose (<>)+vcat = compose (<$$>)+fillCat = compose (<//>)+cat = group . vcat++punctuate :: Doc -> [Doc] -> [Doc]+punctuate _ [] = []+punctuate d ds@(_:_) = go ds+ where+  go [x] = [x]+  go (x:xs@(_:_)) = (x <> d) : go xs++encloseSep :: Doc -> Doc -> Doc -> [Doc] -> Doc+encloseSep l r _ [] = l <> r+encloseSep l r s (d:ds) = align (enclose l r (cat (d:map (s<>) ds)))++hEncloseSep :: Doc -> Doc -> Doc -> [Doc] -> Doc+hEncloseSep l r _ [] = l <> r+hEncloseSep l r s (d:ds) = align (enclose l r (hcat (d:map (s<>) ds)))++fillEncloseSep :: Doc -> Doc -> Doc -> [Doc] -> Doc+fillEncloseSep l r _ [] = l <> r+fillEncloseSep l r s (d:ds)+  = align (enclose l r (hcat (d:withSoftBreaks (map (s<>) ds))))+ where+  withSoftBreaks [] = []+  withSoftBreaks [x] = [group (linebreak <> x)]+  withSoftBreaks (x:xs@(_:_))+    = (group (linebreak <> (group (x <> linebreak))) : withSoftBreaks xs)++list, tupled, semiBraces :: [Doc] -> Doc+list = fillEncloseSep lbracket rbracket comma+tupled = fillEncloseSep lparen rparen comma+semiBraces = fillEncloseSep lbrace rbrace semi++enclose :: Doc -> Doc -> Doc -> Doc+enclose l r d = l <> d <> r++squotes, dquotes, parens, angles, braces, brackets :: Doc -> Doc+squotes = enclose squote squote+dquotes = enclose dquote dquote+bquotes = enclose bquote bquote+parens = enclose lparen rparen+angles = enclose langle rangle+braces = enclose lbrace rbrace+brackets = enclose lbracket rbracket++char :: Char -> Doc+char c = text [c]++string :: String -> Doc+string = hcat . map (\c -> if elem c ['\n','\r'] then line else char c)++int :: Int -> Doc+int n = text (show n)++float :: Float -> Doc+float x = text (show x)++lparen, rparen, langle, rangle, lbrace, rbrace, lbracket, rbracket,+  squote, dquote, bquote, semi, colon, comma, space, dot, backslash, +  equals :: Doc+lparen = char '('+rparen = char ')'+langle = char '<'+rangle = char '>'+lbrace = char '{'+rbrace = char '}'+lbracket = char '['+rbracket = char ']'+squote = char '\''+dquote = char '\"'+bquote = char '`'+semi = char ';'+colon = char ':'+comma = char ','+space = char ' '+dot = char '.'+backslash = char '\\'+equals = char '='+++type Layout = String+type Horizontal = Bool+type Remaining = Int+type Width = Int+type Position = Int+type StartPosition = Int+type EndPosition = Int+type Out = Remaining -> Margins -> String+type OutGroupPrefix = Horizontal -> Out -> Out+type Margins = [Int]++data Tokens = Text String Tokens+            | Line String Tokens+            | Open Tokens+            | Close Tokens+            | Empty+            | OpenNest (Margins -> Remaining -> Width -> Margins) Tokens+            | CloseNest Tokens++normalise :: Tokens -> Tokens+normalise = go id+  where+  go co Empty = co Empty+    -- there should be no deferred opening brackets+  go co (Open ts) = go (co . open) ts+  go co (Close ts) = go (co . Close) ts+  go co (Line s ts) = co . Line s . go id $ ts+  go co (Text s ts) = Text s (go co ts)+  go co (OpenNest f ts) = OpenNest f (go co ts)+  go co (CloseNest ts) = CloseNest (go co ts)++  open t = case t of Close ts -> ts; _ -> Open t++doc2Tokens (Doc d) = normalise (d Empty)+++pretty :: Width -> Doc -> String+pretty w d = noGroup (doc2Tokens d) w 1 w [0]+++length = Prelude.length . filter (not . (`elem` ([5,6,7]++[16..31])) . ord)++noGroup :: Tokens -> Width -> Position -> Out+noGroup Empty _ _ _ _ = ""+noGroup (Text t ts) w p r ms = t ++ noGroup ts w (p+l) (r-l) ms+  where+  l = length t+noGroup (Line _ ts) w p _ ms@(m:_) = +  '\n' : replicate m ' ' ++ noGroup ts w (p+1) (w-m) ms+noGroup (Open ts) w p r ms = oneGroup ts w p (p+r) (\_ c -> c) r ms+noGroup (Close ts) w p r ms = noGroup ts w p r ms -- may have been pruned+noGroup (OpenNest f ts) w p r ms = noGroup ts w p r (f ms r w)+noGroup (CloseNest ts) w p r ms = noGroup ts w p r (tail ms)++oneGroup :: Tokens -> Width -> Position -> EndPosition -> OutGroupPrefix -> Out+oneGroup (Text t ts) w p e outGrpPre = +  pruneOne ts w (p+l) e (\h c -> outGrpPre h (outText c))+  where+  l = length t+  outText c r ms = t ++ c (r-l) ms+oneGroup (Line s ts) w p e outGrpPre = +  pruneOne ts w (p + lens) e (\h c -> outGrpPre h (outLine h c))+  where+  lens = length s+  outLine h c r ms@(m:_) = +    if h then s ++ c (r-lens) ms else '\n' : replicate m ' ' ++ c (w-m) ms+oneGroup (Open ts) w p e outGrpPre =+  multiGroup ts w p e outGrpPre Q.empty p (\_ c -> c)+oneGroup (Close ts) w p e outGrpPre = outGrpPre (p<=e) (noGroup ts w p) +oneGroup (OpenNest f ts) w p e outGrpPre =+  oneGroup ts w p e (\h c -> outGrpPre h (\r ms -> c r (f ms r w)))+oneGroup (CloseNest ts) w p e outGrpPre =+  oneGroup ts w p e (\h c -> outGrpPre h (\r ms -> c r (tail ms)))++multiGroup :: Tokens -> Width -> Position -> EndPosition -> OutGroupPrefix +              -> Queue (StartPosition,OutGroupPrefix) +              -> StartPosition -> OutGroupPrefix -> Out+multiGroup (Text t ts) w p e outGrpPreOuter qs s outGrpPreInner =+  pruneMulti ts w (p+l) e outGrpPreOuter qs s +    (\h c -> outGrpPreInner h (outText c))+  where+  l = length t+  outText c r ms = t ++ c (r-l) ms+multiGroup (Line s ts) w p e outGrpPreOuter qs si outGrpPreInner =+  pruneMulti ts w (p + lens) e outGrpPreOuter qs si +    (\h c -> outGrpPreInner h (outLine h c))+  where+  lens = length s+  outLine h c r ms@(m:_) = +    if h then s ++ c (r-lens) ms else '\n': replicate m ' ' ++ c (w-m) ms+multiGroup (Open ts) w p e outGrpPreOuter qs si outGrpPreInner =+  multiGroup ts w p e outGrpPreOuter (cons (si,outGrpPreInner) qs) p (\_ c -> c)+multiGroup (Close ts) w p e outGrpPreOuter qs si outGrpPreInner =+  case matchHead qs of+    Nothing -> oneGroup ts w p e +                 (\h c -> outGrpPreOuter h +                            (\ri -> outGrpPreInner (p<=si+ri) c ri))+    Just ((s,outGrpPre),qs') ->+      multiGroup ts w p e outGrpPreOuter qs' s+        (\h c -> outGrpPre h (\ri -> outGrpPreInner (p<=si+ri) c ri))+multiGroup (OpenNest f ts) w p e outGrpPreOuter qs si outGrpPreInner =+  multiGroup ts w p e outGrpPreOuter qs si +    (\h c -> outGrpPreInner h (\r ms -> c r (f ms r w)))+multiGroup (CloseNest ts) w p e outGrpPreOuter qs si outGrpPreInner =+  multiGroup ts w p e outGrpPreOuter qs si+    (\h c -> outGrpPreInner h (\r ms -> c r (tail ms)))+++pruneOne :: Tokens -> Width -> Position -> EndPosition -> OutGroupPrefix -> Out+pruneOne ts w p e outGrpPre = +  if p <= e then oneGroup ts w p e outGrpPre +            else outGrpPre False (noGroup ts w p)++pruneMulti :: Tokens -> Width -> Position -> EndPosition -> OutGroupPrefix +              -> Queue (StartPosition,OutGroupPrefix) +              -> StartPosition -> OutGroupPrefix -> Out+pruneMulti ts w p e outGrpPreOuter qs si outGrpPreInner =+  if p <= e then multiGroup ts w p e outGrpPreOuter qs si outGrpPreInner+            else outGrpPreOuter False (\r ->+                   (case matchLast qs of+                      Nothing -> pruneOne ts w p (si+r) outGrpPreInner+                      Just ((s,outGrpPre),qs') ->+                        pruneMulti ts w p (s+r) outGrpPre qs' si outGrpPreInner)+                          r)
+ src/lib/Curry/Module/Profile.hs.include view
@@ -0,0 +1,1 @@+[ForFunction "getProcessInfos",ForFunction "garbageCollectorOff",ForFunction "garbageCollectorOn",ForFunction "garbageCollect",ForFunction "evalTime",ForFunction "evalSpace"]
+ src/lib/Curry/Module/PropertyFile.curry view
@@ -0,0 +1,56 @@+------------------------------------------------------------------------------+--- A library to read and update files containing properties in the usual+--- equational syntax, i.e., a property is defined by a line of the form+--- prop=value where prop starts with a letter.+--- All other lines (e.g., blank lines or lines starting with '#' are+--- considered as comment lines and are ignored.+---+--- @author Michael Hanus+--- @version August 2006+------------------------------------------------------------------------------++module PropertyFile(readPropertyFile,updatePropertyFile) where++import Directory+import IOExts+import Char++--- Reads a property file and returns the list of properties.+--- Returns empty list if the property file does not exist.+readPropertyFile :: String -> IO [(String,String)]+readPropertyFile file = do+  pfexists <- doesFileExist file+  if pfexists+   then do rcs <- readFile file+           return $ splitEqs . filter (\l->not (null l) && isAlpha (head l))+                             . lines $ rcs+   else return []+ where+  splitEqs [] = []+  splitEqs (eq:eqs) = case break (=='=') eq of+     (prop,_:val) -> (prop,val) : splitEqs eqs+     _            -> splitEqs eqs+++--- Update a property in a property file or add it, if it is not already+--- there.+--- @param file - the name of the property file+--- @param pname - the name of the property+--- @param pvalue - the new value of the property+updatePropertyFile :: String -> String -> String -> IO ()+updatePropertyFile file pname pval = do+  props <- readPropertyFile file+  if lookup pname props == Nothing+   then appendFile file (pname++"="++pval++"\n")+   else changePropertyInFile file pname pval++--- Change a property in a property file.+changePropertyInFile :: String -> String -> String -> IO ()+changePropertyInFile file pname pval = do+  updateFile (\rcs -> unlines . map changeProp . lines $ rcs) file+ where+  changeProp l = let (s1,s2) = break (=='=') l+                  in if null l || not (isAlpha (head l)) || null s2+                     then l+                     else if s1==pname then s1++"="++pval else l+
+ src/lib/Curry/Module/Random.curry view
@@ -0,0 +1,131 @@+------------------------------------------------------------------------------+--- Library for pseudo-random number generation in Curry.+--- <P>+--- This library provides operations for generating pseudo-random+--- number sequences.+--- For any given seed, the sequences generated by the operations+--- in this module should be <B>identical</B> to the sequnces+--- generated by the java.util.Random package.+--- <P>+--- The algorithm is a linear congruential pseudo-random number generator+--- described in Donald E. Knuth, <i>The +--- Art of Computer Programming,</i> Volume 2: <i>Seminumerical +--- Algorithms</i>, section 3.2.1.+---+--- @author Sergio Antoy (with extensions by Michael Hanus)+--- @version December 2004+------------------------------------------------------------------------------++module Random(nextInt, nextIntRange, nextBoolean, getRandomSeed) where++import Time+import System(getCPUTime)++------------------------------------------------------------------+--                       Private Operations+------------------------------------------------------------------++-- a few constants++multiplier = 25214903917+addend     = 11+powermask  = 48+mask       = 281474976710656  -- 2^powermask+intsize    = 32+intspan    = 4294967296       -- 2^intsize+intlimit   = 2147483648       -- 2^(intsize-1)++-- the basic sequence of random values++sequence seed = next : sequence next+    where next = nextseed seed++-- auxiliary private operations++nextseed seed = (seed * multiplier + addend) `mod` mask++xor x y = if (x==0) && (y==0) then 0 else lastBit + 2 * restBits+    where lastBit  = if (x `mod` 2) == (y `mod` 2) then 0 else 1+          restBits = xor (x `div` 2) (y `div` 2)++power base exp = binary 1 base exp+    where binary x b e+              = if (e == 0) then x+                else binary (x * if (e `mod` 2 == 1) then b else 1)+                            (b * b)+                            (e `div` 2)++nextIntBits seed bits = map adjust list+    where init = (xor seed multiplier) `mod` mask+          list = sequence init+          shift = power 2 (powermask - bits)+          adjust x = if arg > intlimit then arg - intspan+                                       else arg+              where arg = (x `div` shift) `mod` intspan++------------------------------------------------------------------+--                       Public Operations+------------------------------------------------------------------++--- Returns a sequence of pseudorandom, uniformly distributed 32-bits+--- integer values.  All 2<font size="-1"><sup>32+--- </sup></font> possible integer values are produced with +--- (approximately) equal probability.+---+--- @param seed - The seed of the random sequence.++nextInt :: Int -> [Int]+nextInt seed = nextIntBits seed intsize++--- Returns a pseudorandom, uniformly distributed sequence of values+--- between 0 (inclusive) and the specified value (exclusive).+--- Each value is a 32-bits positive integer.+--- All <tt>n</tt> possible values are produced with (approximately) equal+--- probability.+--- @param seed - The seed of the random sequence.+--- @param n - The bound on the random number to be returned. +---            Must be positive.++nextIntRange :: Int -> Int -> [Int]+nextIntRange seed n | n>0+    = if power_of_2 n then map adjust_a seq+      else map adjust_b (filter adjust_c seq)+    where seq = nextIntBits seed (intsize - 1)+          adjust_a x = (n * x) `div` intlimit+          adjust_b x = x `mod` n+          adjust_c x = x - (x `mod` n) + (n - 1) >= 0+          power_of_2 k = k == 2 || +                         k > 2 && k `mod` 2 == 0 && power_of_2 (k `div` 2)+                            +--- Returns a pseudorandom, uniformly distributed sequence of+--- <code>boolean</code> values.  The+--- values <code>True</code> and <code>False</code> are produced with+--- (approximately) equal probability. +--- @param seed - The seed of the random sequence.++nextBoolean :: Int -> [Bool]+nextBoolean seed = map (/= 0) (nextIntBits seed 1)+++--- Returns a time-dependent integer number as a seed for really random numbers.+--- Should only be used as a seed for pseudorandom number sequence+--- and not as a random number since the precision is limited to milliseconds++getRandomSeed :: IO Int+getRandomSeed =+  getClockTime >>= \time ->+  getCPUTime >>= \msecs ->+  let (CalendarTime y mo d h m s _) = toUTCTime time+   in return ((y+mo+d+h+m*s*msecs) `mod` mask)+                            +{-     Simple tests and examples++testInt = take 20 (nextInt 0)++testIntRange = take 120 (nextIntRange 0 6)++testBoolean = take 20 (nextBoolean 0)++reallyRandom = do seed <- getRandomSeed+                  putStrLn (show (take 20 (nextIntRange seed 100)))+-}
+ src/lib/Curry/Module/RandomExternal.curry view
@@ -0,0 +1,50 @@+--- External (more efficient) implementation of random number generation.+--- +--- @author sebf@informatik.uni-kiel.de+--- @version January 2008+---+module RandomExternal (++  split, nextInt, nextIntRange, nextBoolean,++  getRandomSeed++  ) where++--- Splits a random seed into an infinite list of uncorrelated random seeds.+---+split :: Int -> [Int]+split seed = s1 : split s2+ where (s1,s2) = prim_split $## seed++prim_split :: Int -> (Int,Int)+prim_split external++--- Computes an infinite list of random integers.+---+nextInt :: Int -> [Int]+nextInt seed = prim_nextInt $## seed++prim_nextInt :: Int -> [Int]+prim_nextInt external++--- Computes an infinite list of random integers between 0 and given bound.+--- Both 0 and the given bound may occur in the result.+---+nextIntRange :: Int -> Int -> [Int]+nextIntRange seed bound = (prim_nextIntRange $## seed) $## bound++prim_nextIntRange :: Int -> Int -> [Int]+prim_nextIntRange external++--- Computes an infinite list of random booleans.+---+nextBoolean :: Int -> [Bool]+nextBoolean seed = map (0==) (nextIntRange seed 1)++--- Computes an initial random seed.+---+getRandomSeed :: IO Int+getRandomSeed external++
+ src/lib/Curry/Module/RandomExternal.hs.include view
@@ -0,0 +1,29 @@+[ForFunction "prim_split"+,ForFunction "prim_nextInt"+,ForFunction "prim_nextIntRange"+,ForFunction "getRandomSeed"+]++import System.Random++prim_split :: C_Int -> Result (T2 C_Int C_Int)+prim_split seed _ = toCurry (fst (next g1), fst (next g2))+ where+  (g1,g2) = split (mkStdGen (fromCurry seed))++prim_nextInt :: C_Int -> Result (List C_Int)+prim_nextInt seed _ = toCurry (nextInt (fromCurry seed))++nextInt :: Int -> [Int]+nextInt = randoms . mkStdGen++prim_nextIntRange :: C_Int -> C_Int -> Result (List C_Int)+prim_nextIntRange seed bound _ =+  toCurry (nextIntRange (fromCurry seed) (fromCurry bound))++nextIntRange :: Int -> Int -> [Int]+nextIntRange seed bound = randomRs (0,bound) (mkStdGen seed)++getRandomSeed :: Result (C_IO C_Int)+getRandomSeed = ioFunc0 (getStdRandom next)+
+ src/lib/Curry/Module/Read.curry view
@@ -0,0 +1,53 @@+------------------------------------------------------------------------------+--- Library with some functions for reading special tokens.+--+--- @author Michael Hanus+--- @version January 2000+------------------------------------------------------------------------------++module Read(readNat,readInt,readHex)  where++import Char++--- Read a natural number in a string.+--- The string might contain leadings blanks and the the number is read+--- up to the first non-digit.+readNat :: String -> Int   -- result >= 0+readNat l = readNatPrefix (dropWhile (\c->c==' ') l) 0+ where+  readNatPrefix [] n = n+  readNatPrefix (c:cs) n =+   let oc = ord c in+     if oc>=ord '0' && oc<=ord '9' then readNatPrefix cs (n*10+oc-(ord '0'))+                                   else n+++--- Read a (possibly negative) integer in a string.+--- The string might contain leadings blanks and the the integer is read+--- up to the first non-digit.+readInt :: String -> Int   -- result >= 0+readInt l = readIntPrefix (dropWhile (\c->c==' ') l)+ where+  readIntPrefix []     = 0+  readIntPrefix (c:cs) = if c=='-' then - (readNat cs) else readNat (c:cs)+++--- Read a hexadecimal number in a string.+--- The string might contain leadings blanks and the the integer is read+--- up to the first non-heaxdecimal digit.+readHex :: String -> Int   -- result >= 0+readHex l = readHexPrefix (dropWhile (\c->c==' ') l) 0+ where+  readHexPrefix [] n = n+  readHexPrefix (c:cs) n =+   let cv = hex2int c in+     if cv>=0 then readHexPrefix cs (n*16+cv)+              else n++  hex2int c = if isDigit c then ord c - ord '0'+                           else if ord c >= ord 'A' && ord c <= ord 'F'+                                then ord c - ord 'A' + 10+                                else -1++-- end of library Read+
+ src/lib/Curry/Module/ReadAnswer.hs.include view
@@ -0,0 +1,1 @@+[ForFunction "prim_readAnswer",ForFunction "stdinUnbuffered",ForFunction "stdinBuffered"]
+ src/lib/Curry/Module/ReadShowTerm.curry view
@@ -0,0 +1,146 @@+------------------------------------------------------------------------------+--- Library for converting ground terms to strings and vice versa.+---+--- @author Michael Hanus+--- @version April 2005+------------------------------------------------------------------------------++module ReadShowTerm {-(showTerm,showQTerm,readQTerm,readsQTerm,+                    readsUnqualifiedTerm,readUnqualifiedTerm,readsTerm,readTerm,+                    readQTermFile,readQTermListFile,+                    writeQTermFile,writeQTermListFile)-} where++import Char(isSpace)++--- Transforms a ground(!) term into a string representation+--- in standard prefix notation.+--- Thus, showTerm suspends until its argument is ground.+--- This function is similar to the prelude function <code>show</code>+--- but can read the string back with <code>readUnqualifiedTerm</code>+--- (provided that the constructor names are unique without the module+--- qualifier).+showTerm :: _ -> String+showTerm x = prim_showTerm $## x++prim_showTerm :: _ -> String+prim_showTerm external++--- Transforms a ground(!) term into a string representation+--- in standard prefix notation.+--- Thus, showTerm suspends until its argument is ground.+--- Note that this function differs from the prelude function <code>show</code>+--- since it prefixes constructors with their module name+--- in order to read them back with <code>readQTerm</code>.+showQTerm :: _ -> String+showQTerm x = prim_showQTerm $## x++prim_showQTerm :: _ -> String+prim_showQTerm external++--- Transform a string containing a term in standard prefix notation+--- without module qualifiers into the corresponding data term.+--- The first argument is a non-empty list of module qualifiers that are tried to+--- prefix the constructor in the string in order to get the qualified constructors+--- (that must be defined in the current program!).+--- In case of a successful parse, the result is a one element list+--- containing a pair of the data term and the remaining unparsed string.++readsUnqualifiedTerm :: [String] -> String -> [(_,String)]+readsUnqualifiedTerm [] _ =+  error "ReadShowTerm.readsUnqualifiedTerm: list of module prefixes is empty"+readsUnqualifiedTerm (prefix:prefixes) s =+  readsUnqualifiedTermWithPrefixes (prefix:prefixes) s++readsUnqualifiedTermWithPrefixes :: [String] -> String -> [(_,String)]+readsUnqualifiedTermWithPrefixes prefixes s = +  (prim_readsUnqualifiedTerm $## prefixes) $## s++prim_readsUnqualifiedTerm :: [String] -> String -> [(_,String)]+prim_readsUnqualifiedTerm external++--- Transforms a string containing a term in standard prefix notation+--- without module qualifiers into the corresponding data term.+--- The first argument is a non-empty list of module qualifiers that are tried to+--- prefix the constructor in the string in order to get the qualified constructors+--- (that must be defined in the current program!).+---+--- Example: <code>readUnqualifiedTerm ["prelude"] "Just 3"</code>+--- evaluates to <code>(Just 3)</code>++readUnqualifiedTerm :: [String] -> String -> _+readUnqualifiedTerm prefixes s = case readsUnqualifiedTerm prefixes s of+  [(term,tail)]+     -> if all isSpace tail then term+        else error ("ReadShowTerm.readUnqualifiedTerm: no parse, unmatched string after term: "++tail)+  [] ->  error "ReadShowTerm.readUnqualifiedTerm: no parse"+  _  ->  error "ReadShowTerm.readUnqualifiedTerm: ambiguous parse"++--- For backward compatibility. Should not be used since their use can be problematic+--- in case of constructors with identical names in different modules.+readsTerm :: String -> [(_,String)]+readsTerm s = prim_readsUnqualifiedTerm [] $## s++--- For backward compatibility. Should not be used since their use can be problematic+--- in case of constructors with identical names in different modules.+readTerm :: String -> _+readTerm s = case result of+  [(term,tail)]+     -> if all isSpace tail then term+        else error ("ReadShowTerm.readTerm: no parse, unmatched string after term: "++tail)+  [] ->  error $ "ReadShowTerm.readTerm: no parse of string beginning with "+               ++ take 20 s+  _  ->  error "ReadShowTerm.readTerm: ambiguous parse"+ where result = prim_readsUnqualifiedTerm [] $## s++--- Transforms a string containing a term in standard prefix notation+--- with qualified constructor names into the corresponding data term.+--- In case of a successful parse, the result is a one element list+--- containing a pair of the data term and the remaining unparsed string.++readsQTerm :: String -> [(_,String)]+readsQTerm s = prim_readsQTerm $## s++prim_readsQTerm :: String -> [(_,String)]+prim_readsQTerm external++--- Transforms a string containing a term in standard prefix notation+--- with qualified constructor names into the corresponding data term.++readQTerm :: String -> _+readQTerm s = case result of+  [(term,tail)] -> if all isSpace tail then term+                   else error "ReadShowTerm.readQTerm: no parse"+  [] ->  error "ReadShowTerm.readQTerm: no parse"+  _  ->  error "ReadShowTerm.readQTerm: ambiguous parse"+ where result = readsQTerm s+++--- Reads a file containing a string representation of a term+--- in standard prefix notation and returns the corresponding data term.++readQTermFile :: String -> IO _+readQTermFile file = readFile file >>= return . readQTerm++--- Reads a file containing lines with string representations of terms+--- of the same type and returns the corresponding list of data terms.++readQTermListFile :: String -> IO [_]+readQTermListFile file = readFile file >>= return . map readQTerm . lines++--- Writes a ground term into a file in standard prefix notation.+--- @param filename - The name of the file to be written.+--- @param term - The term to be written to the file as a string.++writeQTermFile :: String -> _ -> IO ()+writeQTermFile filename term = writeFile filename (showQTerm term)++--- Writes a list of ground terms into a file.+--- Each term is written into a separate line which might be useful+--- to modify the file with a standard text editor.+--- @param filename - The name of the file to be written.+--- @param terms - The list of terms to be written to the file.++writeQTermListFile :: String -> [_] -> IO ()+writeQTermListFile filename terms =+    writeFile filename (unlines (map showQTerm terms))+
+ src/lib/Curry/Module/ReadShowTerm.hs.include view
@@ -0,0 +1,23 @@+[ForFunction "prim_showTerm"+,ForFunction "prim_showQTerm"+,ForFunction "prim_readsUnqualifiedTerm"+,ForFunction "prim_readsQTerm"+]++import Data.Char++prim_showTerm :: Curry t0 => t0 -> Result (List C_Char)+prim_showTerm = prim_show ++--because of type classes there is no need to qualify in kics+prim_showQTerm :: Curry t0 => t0 -> Result (List C_Char)+prim_showQTerm x _ = toCurry (showQ 0 x [])++prim_readsUnqualifiedTerm :: Curry t0 => +   List C_String -> C_String -> Result (List (T2 t0 C_String))+prim_readsUnqualifiedTerm _ x _ = +  fromHaskellList $ map (\ (x,y) -> T2 x (toCurry y)) $ reads $ fromCurry x++prim_readsQTerm :: Curry t0 => C_String -> Result (List (T2 t0 C_String))+prim_readsQTerm = prim_readsUnqualifiedTerm List  +
+ src/lib/Curry/Module/RedBlackTree.curry view
@@ -0,0 +1,234 @@+---------------------------------------------------------------------------+--- Library with an implementation of red-black trees:+--- <P>+--- Serves as the base for both TableRBT and SetRBT+--- All the operations on trees are generic, i.e., one has to provide+--- two explicit order predicates ("<CODE>lessThan</CODE>" and "<CODE>eq</CODE>"below) +--- on elements.+--- +--- @author Johannes Koj, Michael Hanus, Bernd Braßel+--- @version March 2005+----------------------------------------------------------------------------++module RedBlackTree +  (RedBlackTree, empty, isEmpty, lookup, update, +   tree2list, sort, newTreeLike, setInsertEquivalence, delete+  )   where ++----------------------------------------------------------------------------+-- the main interface:++--- A red-black tree consists of a tree structure and three order predicates.+--- These predicates generalize the red black tree. They define+--- 1) equality when inserting into the tree<br>+---    eg for a set eqInsert is (==), +---       for a multiset it is (\ _ _ -> False)+---       for a lookUp-table it is ((==) . fst) +--- 2) equality for looking up values +---    eg for a set eqLookUp is (==), +---       for a multiset it is (==)+---       for a lookUp-table it is ((==) . fst) +--- 3) the (less than) relation for the binary search tree++data RedBlackTree a = RedBlackTree (a->a->Bool) (a->a->Bool) (a->a->Bool) (Tree a)++--- The three relations are inserted into the structure by function empty.+--- Returns an empty tree, i.e., an empty red-black tree +--- augmented with the order predicates.++empty :: (a->a->Bool) -> (a->a->Bool) -> (a->a->Bool) -> RedBlackTree a+empty eqInsert eqLookUp lessThan = RedBlackTree eqInsert eqLookUp lessThan Empty ++--- Test on emptyness+isEmpty  (RedBlackTree _ _ _ Empty)          = True+isEmpty  (RedBlackTree _ _ _ (Tree _ _ _ _)) = False++--- Creates a new empty red black tree from with the same ordering as a give one.+newTreeLike (RedBlackTree eqIns eqLk lt _) = RedBlackTree eqIns eqLk lt Empty++--- Returns an element if it is contained in a red-black tree.+--- @param p - a pattern for an element to look up in the tree+--- @param t - a red-black tree+--- @return the contained True if p matches in t++lookup :: a -> RedBlackTree a -> Maybe a+lookup p (RedBlackTree _ eqLk lt t) = lookupTree eqLk lt p t++lookupTree :: (a->a->Bool) -> (a->a->Bool) -> a -> Tree a -> Maybe a+lookupTree _ _ _ Empty = Nothing+lookupTree eq lt p (Tree _ e l r) +     | eq p e    = Just e+     | lt p e    = lookupTree eq lt p l+     | otherwise = lookupTree eq lt p r++--- Updates/inserts an element into a RedBlackTree.+update :: a -> RedBlackTree a -> RedBlackTree a+update e (RedBlackTree eqIns eqLk lt t) = +          RedBlackTree eqIns eqLk lt (updateTree eqIns lt e t)++updateTree :: (a->a->Bool) -> (a->a->Bool) -> a -> Tree a -> Tree a+updateTree eq lt e t = let (Tree _     e2 l r) = upd t+                        in  Tree Black e2 l r+  where+    upd Empty = Tree Red e Empty Empty+    upd (Tree c e2 l r) | eq e e2   = Tree c e l r+                        | lt e e2   = balanceL (Tree c e2 (upd l) r)+                        | otherwise = balanceR (Tree c e2 l (upd r))++--- Deletes entry from red black tree.+delete :: a -> RedBlackTree a -> RedBlackTree a+delete e (RedBlackTree eqIns eqLk lt t) =+          RedBlackTree eqIns eqLk lt (blackenRoot (deleteTree eqLk lt e t))+  where+    blackenRoot Empty = Empty+    blackenRoot (Tree _ x l r) = Tree Black x l r ++deleteTree _ _ _ Empty = Empty  -- no error for non existence+deleteTree eq lt e (Tree c e2 l r) +      | eq e e2 = if l==Empty then addColor c r else +                  if r==Empty then addColor c l+                               else let el = rightMost l +                                     in delBalanceL (Tree c el (deleteTree eq lt el l) r)+      | lt e e2 = delBalanceL (Tree c e2 (deleteTree eq lt e l) r)+      | otherwise = delBalanceR (Tree c e2 l (deleteTree eq lt e r))+  where+    addColor Red tree = tree+    addColor Black Empty = Empty+    addColor Black (Tree Red x lx rx)   = Tree Black x lx rx+    addColor Black (Tree Black x lx rx) = Tree DoublyBlack x lx rx++    rightMost (Tree _ x _ rx) = if rx==Empty then x else rightMost rx+                                ++--- Transforms a red-black tree into an ordered list of its elements.+tree2list :: RedBlackTree a -> [a]+tree2list (RedBlackTree _ _ _ t) = tree2listTree t + +tree2listTree tree = t2l tree [] +   where+     t2l Empty es = es+     t2l (Tree _ e l r) es = t2l l (e : t2l r es)++--- Generic sort based on insertion into red-black trees.+--- The first argument is the order for the elements.++sort  :: (a->a->Bool) -> [a] -> [a]+sort cmp xs = tree2list (foldr update (empty (\_ _->False) (==) cmp) xs)++--- For compatibility with old version only+setInsertEquivalence :: (a->a->Bool) -> RedBlackTree a -> RedBlackTree a+setInsertEquivalence eqIns (RedBlackTree _ eqLk lt t) = RedBlackTree eqIns eqLk lt t++----------------------------------------------------------------------------+-- implementation of red-black trees:++rbt (RedBlackTree _ _ _ t) = t ++--- The colors of a node in a red-black tree.+data Color = Red | Black | DoublyBlack++--- The structure of red-black trees.+data Tree a = Tree Color a (Tree a) (Tree a)+            | Empty++isBlack :: Tree _ -> Bool+isBlack Empty = True+isBlack (Tree c _ _ _) = c==Black++isRed :: Tree _ -> Bool+isRed Empty = False+isRed (Tree c _ _ _) = c==Red++isDoublyBlack :: Tree _ -> Bool+isDoublyBlack Empty = True+isDoublyBlack (Tree c _ _ _) = c==DoublyBlack++element :: Tree a -> a+element (Tree _ e _ _) = e++left :: Tree a -> Tree a+left (Tree _ _ l _) = l++right :: Tree a -> Tree a+right (Tree _ _ _ r) = r++singleBlack Empty = Empty+singleBlack (Tree DoublyBlack x l r) = Tree Black x l r++--- for the implementation of balanceL and balanceR refer to picture 3.5, page 27, +--- Okasaki "Purely Functional Data Structures"+balanceL :: Tree a  ->  Tree a+balanceL tree +  | isRed leftTree && isRed (left leftTree)+  = let Tree _ z (Tree _ y (Tree _ x a b) c) d = tree+     in Tree Red y (Tree Black x a b) (Tree Black z c d)+  +  | isRed leftTree && isRed (right leftTree)+  = let Tree _ z (Tree _ x a (Tree _ y b c)) d = tree+     in Tree Red y (Tree Black x a b) (Tree Black z c d)++  | otherwise = tree++  where+    leftTree = left tree +        +balanceR :: Tree a  ->  Tree a+balanceR tree+  | isRed rightTree && isRed (right rightTree)+  = let Tree _ x a (Tree _ y b (Tree _ z c d)) = tree+     in Tree Red y (Tree Black x a b) (Tree Black z c d)++  | isRed rightTree && isRed (left rightTree)+  = let Tree _ x a (Tree _ z (Tree _ y b c) d) = tree+     in Tree Red y (Tree Black x a b) (Tree Black z c d)++  | otherwise = tree++  where +    rightTree = right tree+++--- balancing after deletion++delBalanceL :: Tree a  ->  Tree a+delBalanceL tree = if isDoublyBlack (left tree) then reviseLeft tree else tree++reviseLeft tree+  | r==Empty = tree+  | blackr && isRed (left r)+  = let Tree col x a (Tree _ z (Tree _ y b c) d) = tree+     in Tree col y (Tree Black x (singleBlack a) b) (Tree Black z c d)+  | blackr && isRed (right r) +  = let Tree col x a (Tree _ y b (Tree _ z c d)) = tree+     in Tree col y (Tree Black x (singleBlack a) b) (Tree Black z c d)+  | blackr +  = let Tree col x a (Tree _ y b c) = tree+     in Tree (if col==Red then Black else DoublyBlack) x (singleBlack a) (Tree Red y b c)+  | otherwise +  = let Tree _ x a (Tree _ y b c) = tree+     in Tree Black y (reviseLeft (Tree Red x a b)) c+  where+    r = right tree+    blackr = isBlack r++delBalanceR :: Tree a  ->  Tree a+delBalanceR tree = if isDoublyBlack (right tree) then reviseRight tree else tree++reviseRight tree+  | l==Empty = tree+  | blackl && isRed (left l)+  = let Tree col x (Tree _ y (Tree _ z d c) b) a = tree+     in Tree col y (Tree Black z d c) (Tree Black x b (singleBlack a))+  | blackl && isRed (right l) +  = let Tree col x (Tree _ z d (Tree _ y c b)) a = tree+     in Tree col y (Tree Black z d c) (Tree Black x b (singleBlack a))+  | blackl +  = let Tree col x (Tree _ y c b) a = tree+     in Tree (if col==Red then Black else DoublyBlack) x (Tree Red y c b) (singleBlack a)+  | otherwise +  = let Tree _ x (Tree _ y c b) a = tree+     in Tree Black y c (reviseRight (Tree Red x b a))+  where+    l = left tree+    blackl = isBlack l+
+ src/lib/Curry/Module/SetRBT.curry view
@@ -0,0 +1,75 @@+----------------------------------------------------------------------------+--- Library with an implementation of sets as red-black trees.+--- <P>+--- All the operations on sets are generic, i.e., one has to provide+--- an explicit order predicate ("<CODE>cmp</CODE>" below) on elements.+--- +--- @author Johannes Koj, Michael Hanus, Bernd Braßel+--- @version May 2003+----------------------------------------------------------------------------++module SetRBT where++import qualified RedBlackTree as RBT+import Maybe (isJust)++----------------------------------------------------------------------------+-- the main interface:++type SetRBT a = RBT.RedBlackTree a++--- Returns an empty set, i.e., an empty red-black tree +--- augmented with an order predicate.++emptySetRBT = RBT.empty (==) (==)++--- Returns true if an element is contained in a (red-black tree) set.+--- @param e - an element to be checked for containment+--- @param s - a set (represented as a red-black tree)+--- @return True if e is contained in s+elemRBT :: a -> SetRBT a -> Bool+elemRBT e = isJust . (RBT.lookup e)++--- Inserts an element into a set if it is not already there.+insertRBT :: a -> SetRBT a -> SetRBT a+insertRBT = RBT.update +++--- Inserts an element into a multiset.+--- Thus, the same element can have several occurrences in the multiset.++insertMultiRBT :: a -> SetRBT a -> SetRBT a+insertMultiRBT e = RBT.setInsertEquivalence (==) . +                   RBT.update e . +                   RBT.setInsertEquivalence (\ _ _ -> False)++--- delete an element from a set.+--- Deletes only a single element from a multi set+deleteRBT :: a -> SetRBT a -> SetRBT a+deleteRBT = RBT.delete++--- Transforms a (red-black tree) set into an ordered list of its elements.+setRBT2list :: SetRBT a -> [a]+setRBT2list = RBT.tree2list++--- Computes the union of two (red-black tree) sets.+--- This is done by inserting all elements of the first set into the+--- second set. +unionRBT :: SetRBT a -> SetRBT a -> SetRBT a+unionRBT s1 s2 = foldr insertRBT s2 (setRBT2list s1)++--- Computes the intersection of two (red-black tree) sets.+--- This is done by inserting all elements of the first set+--- contained in the second set into a new set, which order+--- is taken from the first set.+intersectRBT :: SetRBT a -> SetRBT a -> SetRBT a+intersectRBT s1 s2 = foldr insertRBT (RBT.newTreeLike s1)+                          (filter (\e->elemRBT e s2) (setRBT2list s1))+++--- Generic sort based on insertion into red-black trees.+--- The first argument is the order for the elements.++sortRBT  :: (a->a->Bool) -> [a] -> [a]+sortRBT = RBT.sort+
+ src/lib/Curry/Module/Socket.curry view
@@ -0,0 +1,87 @@+------------------------------------------------------------------------------+--- Library to support network programming with sockets.+--- In standard applications, the server side uses the operations+--- <code>listenOn</code> and <code>socketAccept</code> to provide some service+--- on a socket, and the client side uses the operation+--- <code>connectToSocket</code> to request a service.+---+--- @author Michael Hanus+--- @version May 2007+------------------------------------------------------------------------------++module Socket(Socket, listenOn, listenOnFresh, socketListen,+              socketAccept, waitForSocketAccept, connectToSocket)+ where++import System+import IO(Handle)++--- The abstract type of sockets.+data Socket++---------------------------------------------------------------------+-- Server side operations:++--- Creates a server side socket bound to a given port number.+listenOn :: Int -> IO Socket+listenOn port = prim_listenOn $# port++prim_listenOn :: Int -> IO Socket+prim_listenOn external++--- Creates a server side socket bound to a free port.+--- The port number and the socket is returned.+listenOnFresh :: IO (Int,Socket)+listenOnFresh external+++--- Defines the maximum backlog queue of a port.+socketListen :: Socket -> Int -> IO ()+socketListen s length = (prim_socketListen $## s) $# length++prim_socketListen :: Socket -> Int -> IO ()+prim_socketListen external+++--- Returns a connection of a client to a socket.+--- The connection is returned as a pair consisting of a string identifying+--- the client (the format of this string is implementation-dependent)+--- and a handle to a stream communication with the client.+--- The handle is both readable and writable.+socketAccept :: Socket -> IO (String,Handle)+socketAccept s = prim_socketAccept $## s++prim_socketAccept :: Socket -> IO (String,Handle)+prim_socketAccept external+++--- Waits until a connection of a client to a socket is available.+--- If no connection is available within the time limit, it returns Nothing,+--- otherwise the connection is returned as a pair consisting+--- of a string identifying the client+--- (the format of this string is implementation-dependent)+--- and a handle to a stream communication with the client.+--- @param socket - a socket+--- @param timeout - milliseconds to wait for input (< 0 : no time out)+waitForSocketAccept :: Socket -> Int -> IO (Maybe (String,Handle))+waitForSocketAccept s timeout = (prim_waitForSocketAccept $## s) $# timeout++prim_waitForSocketAccept :: Socket -> Int -> IO (Maybe (String,Handle))+prim_waitForSocketAccept external+++---------------------------------------------------------------------+-- Client side operations:++--- Creates a new connection to a Unix socket.+--- @param host - the host name of the connection+--- @param port - the port number of the connection+--- @return the handle of the stream (connected to the port port@host)+---         which is both readable and writable+connectToSocket :: String -> Int -> IO Handle+connectToSocket host port = (prim_connectToSocket $## host) $# port++prim_connectToSocket :: String -> Int -> IO Handle+prim_connectToSocket external++---------------------------------------------------------------------
+ src/lib/Curry/Module/Socket.hs.include view
@@ -0,0 +1,62 @@+[ForType "Socket" Nothing+,ForFunction "prim_listenOn"+,ForFunction "listenOnFresh"+,ForFunction "prim_socketListen"+,ForFunction "prim_socketAccept"+,ForFunction "prim_waitForSocketAccept"+,ForFunction "prim_connectToSocket"+]++import Network+import Network.Socket +import Control.Concurrent+import System.IO (Handle)++type C_Socket = Prim Socket++instance Read Socket where++instance Generate Socket where+  genFree  = error "no random sockets"+  maxArity = error "no narrowing on sockets"++instance ConvertCH C_Int PortID where+  toCurry (PortNumber i) = toCurry (toInteger i)+  fromCurry i = PortNumber (fromInteger (fromCurry i))++prim_listenOn :: C_Int -> Result (C_IO C_Socket)+prim_listenOn  = Curry.Module.Prelude.ioFunc1 listenOn ++listenOnFresh :: Result (C_IO (T2 C_Int C_Socket))+listenOnFresh  = Curry.Module.Prelude.ioFunc0 listenOnFreshPort++listenOnFreshPort :: IO (PortID,Socket)+listenOnFreshPort = do+  s <- listenOn (PortNumber aNY_PORT)+  p <- Network.socketPort s+  Prelude.return (p,s)+++prim_socketListen :: C_Socket -> C_Int -> Result (C_IO T0)+prim_socketListen  = Curry.Module.Prelude.ioFunc2 listen++prim_socketAccept :: C_Socket -> Result (C_IO (T2 (List C_Char) C_Handle))+prim_socketAccept  = +  ioFunc1 (\ s -> do {(h,s,_) <- Network.accept s; Prelude.return (s,One h)})++prim_waitForSocketAccept :: C_Socket -> C_Int -> Result (C_IO (C_Maybe (T2 (List C_Char) C_Handle)))+prim_waitForSocketAccept  = Curry.Module.Prelude.ioFunc2 wait++wait :: Socket -> Int -> IO (Maybe (String,IOHandle))+wait s t = do+  mv <- newEmptyMVar+  tacc <- forkIO (do {(h,s,_) <- Network.accept s; putMVar mv (Just (s,One h))})+  ttim <- forkIO (do {threadDelay (t*1000); putMVar mv Nothing})+  res <- takeMVar mv+  maybe (killThread tacc) (\_ -> killThread ttim) res+  Prelude.return res++prim_connectToSocket :: List C_Char -> C_Int -> Result (C_IO C_Handle)+prim_connectToSocket  = +  ioFunc2 (\ s i -> do {ct <- connectTo s i; Prelude.return (One ct)})+
+ src/lib/Curry/Module/Sort.curry view
@@ -0,0 +1,121 @@+------------------------------------------------------------------------------+--- A collection of useful functions for sorting and comparing+--- characters, strings, and lists.+---+--- @author Michael Hanus+--- @version February 2004+------------------------------------------------------------------------------++module Sort(quickSort,mergeSort,+            cmpChar, cmpList, cmpString,+            leqChar, leqCharIgnoreCase,leqList,+            leqString,leqStringIgnoreCase,leqLexGerman) where++import Char++--- Quicksort.+quickSort :: (a -> a -> Bool) -> [a] -> [a]+quickSort _   []     = []+quickSort leq (x:xs) = let (l,r) = split x xs+                        in quickSort leq l ++ (x:quickSort leq r)+ where+  split _ [] = ([],[])+  split e (y:ys) | leq y e   = (y:l,r)+                 | otherwise = (l,y:r)+              where (l,r) = split e ys+++--- Bottom-up mergesort.+mergeSort :: (a -> a -> Bool) -> [a] -> [a]+mergeSort leq zs =  mergeLists (genRuns zs)+ where+  -- generate runs of length 2:+  genRuns []               =  []+  genRuns [x]              =  [[x]]+  genRuns (x1:x2:xs) | leq x1 x2 =  [x1,x2] : genRuns xs+                     | otherwise =  [x2,x1] : genRuns xs++  -- merge the runs:+  mergeLists []         =  []+  mergeLists [x]        =  x+  mergeLists (x1:x2:xs) =  mergeLists (merge leq x1 x2 : mergePairs xs)++  mergePairs []         =  []+  mergePairs [x]        =  [x]+  mergePairs (x1:x2:xs) =  merge leq x1 x2 : mergePairs xs+++--- Merges two lists with respect to an ordering predicate.++merge :: (a -> a -> Bool) -> [a] -> [a] -> [a]+merge _   [] ys     = ys+merge _   (x:xs) [] = x : xs+merge leq (x:xs) (y:ys) | leq x y   = x : merge leq xs (y:ys)+                        | otherwise = y : merge leq (x:xs) ys+++--------------------------------------------------------------------+-- Comparing lists, characters and strings++--- Less-or-equal on lists.+leqList :: (a -> a -> Bool) -> [a] -> [a] -> Bool+leqList _   []     _      = True+leqList _   (_:_)  []     = False+leqList leq (x:xs) (y:ys) | x == y    = leqList leq xs ys+                          | otherwise = leq x y++--- Comparison of lists.+cmpList :: (a -> a -> Ordering) -> [a] -> [a] -> Ordering+cmpList _   []     []     = EQ+cmpList _   []     (_:_)  = LT+cmpList _   (_:_)  []     = GT+cmpList cmp (x:xs) (y:ys) | cmp x y == EQ = cmpList cmp xs ys+                          | otherwise     = cmp x y++--- Less-or-equal on characters.+leqChar :: Char -> Char -> Bool+leqChar c1 c2 = ord c1 <= ord c2++--- Comparison of characters.+cmpChar :: Char -> Char -> Ordering+cmpChar c1 c2 = if c1==c2 then EQ else if ord c1 < ord c2 then LT else GT++--- Less-or-equal on characters ignoring case considerations.+leqCharIgnoreCase :: Char -> Char -> Bool+leqCharIgnoreCase c1 c2 = ord (toUpper c1) <= ord (toUpper c2)++--- Less-or-equal on strings.+leqString :: String -> String -> Bool+leqString = leqList leqChar++--- Comparison of strings.+cmpString :: String -> String -> Ordering+cmpString = cmpList cmpChar++--- Less-or-equal on strings ignoring case considerations.+leqStringIgnoreCase :: String -> String -> Bool+leqStringIgnoreCase = leqList leqCharIgnoreCase++--- Lexicographical ordering on German strings.+--- Thus, upper/lowercase are not distinguished and Umlauts are sorted+--- as vocals.+leqLexGerman :: String -> String -> Bool+leqLexGerman []    _  = True+leqLexGerman (_:_) [] = False+leqLexGerman (x:xs) (y:ys) | x' == y'  = leqLexGerman xs ys+                           | otherwise = x' < y'+  where+    x' = glex (ord x)+    y' = glex (ord y)+    -- map umlauts to vocals and make everything lowercase:+    glex o | o >= ord 'A' && o <= ord 'Z'  =  o + (ord 'a' - ord 'A')+           | o == 228  = ord 'a'+           | o == 246  = ord 'o'+           | o == 252  = ord 'u'+           | o == 196  = ord 'a'+           | o == 214  = ord 'o'+           | o == 220  = ord 'u'+           | o == 223  = ord 's'+           | otherwise = o++-- end module Sort
+ src/lib/Curry/Module/StyledText.curry view
@@ -0,0 +1,221 @@+module StyledText (++  bold, underline, +  black, blue, cyan, green, magenta, red, white, yellow,+  bgBlack, bgBlue, bgCyan, bgGreen, bgMagenta, bgRed, bgWhite, bgYellow,++  ShowS, boldS, underlineS,+  blackS, blueS, cyanS, greenS, magentaS, redS, whiteS, yellowS,+  bgBlackS, bgBlueS, bgCyanS, bgGreenS, bgMagentaS, bgRedS, bgWhiteS, +  bgYellowS,++  Doc, boldDoc, underlineDoc, +  blackDoc, blueDoc, cyanDoc, greenDoc, magentaDoc, redDoc, whiteDoc, +  yellowDoc,+  bgBlackDoc, bgBlueDoc, bgCyanDoc, bgGreenDoc, bgMagentaDoc, bgRedDoc,+  bgWhiteDoc, bgYellowDoc,++  plainText, printStyledText {-setStyledText, appendStyledText,-} --styledHtml++  ) where++import Char+import Pretty+import AnsiCodes as Ansi+-- import GUI+--import HTML++boldChar      = chr 5+underlineChar = chr 6+endChar       = chr 7+blackChar     = chr 16+blueChar      = chr 17+cyanChar      = chr 18+greenChar     = chr 19+magentaChar   = chr 20+redChar       = chr 21+whiteChar     = chr 22+yellowChar    = chr 23+bgBlackChar   = chr 24+bgBlueChar    = chr 25+bgCyanChar    = chr 26+bgGreenChar   = chr 27+bgMagentaChar = chr 28+bgRedChar     = chr 29+bgWhiteChar   = chr 30+bgYellowChar  = chr 31++bold, underline, + black, blue, cyan, green, magenta, red, white, yellow,+ bgBlack, bgBlue, bgCyan, bgGreen, bgMagenta, bgRed, bgWhite, bgYellow+ :: String -> String+bold      = encl boldChar+underline = encl underlineChar+black     = encl blackChar+blue      = encl blueChar+cyan      = encl cyanChar+green     = encl greenChar+magenta   = encl magentaChar+red       = encl redChar+white     = encl whiteChar+yellow    = encl yellowChar+bgBlack   = encl bgBlackChar+bgBlue    = encl bgBlueChar+bgCyan    = encl bgCyanChar+bgGreen   = encl bgGreenChar+bgMagenta = encl bgMagentaChar+bgRed     = encl bgRedChar+bgWhite   = encl bgWhiteChar+bgYellow  = encl bgYellowChar++encl :: Char -> String -> String+encl c s = c : s ++ [endChar]+++type ShowS = String -> String++boldS, underlineS,+ blackS, blueS, cyanS, greenS, magentaS, redS, whiteS, yellowS,+ bgBlackS, bgBlueS, bgCyanS, bgGreenS, bgMagentaS, bgRedS, bgWhiteS, bgYellowS+ :: ShowS -> ShowS+boldS      = enclS boldChar+underlineS = enclS underlineChar+blackS     = enclS blackChar+blueS      = enclS blueChar+cyanS      = enclS cyanChar+greenS     = enclS greenChar+magentaS   = enclS magentaChar+redS       = enclS redChar+whiteS     = enclS whiteChar+yellowS    = enclS yellowChar+bgBlackS   = enclS bgBlackChar+bgBlueS    = enclS bgBlueChar+bgCyanS    = enclS bgCyanChar+bgGreenS   = enclS bgGreenChar+bgMagentaS = enclS bgMagentaChar+bgRedS     = enclS bgRedChar+bgWhiteS   = enclS bgWhiteChar+bgYellowS  = enclS bgYellowChar++enclS :: Char -> ShowS -> ShowS+enclS c s = (c:) . s . (endChar:)+++boldDoc, underlineDoc, + blackDoc, blueDoc, cyanDoc, greenDoc, magentaDoc, redDoc, whiteDoc, yellowDoc,+ bgBlackDoc, bgBlueDoc, bgCyanDoc, bgGreenDoc, bgMagentaDoc, bgRedDoc+ :: Doc -> Doc+boldDoc      = enclDoc boldChar+underlineDoc = enclDoc underlineChar+blackDoc     = enclDoc blackChar+blueDoc      = enclDoc blueChar+cyanDoc      = enclDoc cyanChar+greenDoc     = enclDoc greenChar+magentaDoc   = enclDoc magentaChar+redDoc       = enclDoc redChar+whiteDoc     = enclDoc whiteChar+yellowDoc    = enclDoc yellowChar+bgBlackDoc   = enclDoc bgBlackChar+bgBlueDoc    = enclDoc bgBlueChar+bgCyanDoc    = enclDoc bgCyanChar+bgGreenDoc   = enclDoc bgGreenChar+bgMagentaDoc = enclDoc bgMagentaChar+bgRedDoc     = enclDoc bgRedChar+bgWhiteDoc   = enclDoc bgWhiteChar+bgYellowDoc  = enclDoc bgYellowChar++enclDoc :: Char -> Doc -> Doc+enclDoc c = enclose (char c) (char endChar)+++plainText :: String -> String+plainText = filter (not . special)++special :: Char -> Bool+special n = ord n `elem` ([5,6,7]++[16..31])+++interpret+ :: [b] -> (a -> a -> a) -> (b -> b -> b) -> (b -> String -> a) -> [(b,b,b)]+ -> String -> a+interpret convs@(b:ul:cs) combine cst ast (t@(st,fg,bg):fs) s+  | null ys   = f xs+  | code == 5 = combine (f xs) $ -- bold+                 interpret convs combine cst ast ((b,fg,bg):t:fs) (tail ys)+  | code == 6 = combine (f xs) $ -- underline+                 interpret convs combine cst ast ((ul,fg,bg):t:fs) (tail ys)+  | code == 7 = combine (f xs) $ -- end+                 interpret convs combine cst ast fs (tail ys)+  | code < 24 = combine (f xs) $ -- foreground+                 interpret convs combine cst ast ((st,g,bg):t:fs) (tail ys)+  | otherwise = combine (f xs) $ -- background+                 interpret convs combine cst ast ((st,fg,g):t:fs) (tail ys)+ where+  f = ast $ cst st (cst fg bg)+  (xs,ys) = break special s+  code = ord (head ys)+  g = cs !! (code-16)+++printStyledText :: String -> IO ()+printStyledText = putStrLn . toAnsiString++toAnsiString :: String -> String+toAnsiString+  = interpret +     [Ansi.bold, Ansi.underline+     ,Ansi.black, Ansi.blue, Ansi.cyan, Ansi.green, Ansi.magenta, Ansi.red+     ,Ansi.white, Ansi.yellow+     ,Ansi.bgBlack, Ansi.bgBlue, Ansi.bgCyan, Ansi.bgGreen, Ansi.bgMagenta+     ,Ansi.bgRed, Ansi.bgWhite, Ansi.bgYellow]+     (++) (.) id [(id,id,id)]+++-- setStyledText :: WidgetRef -> String -> GuiPort -> IO ()+-- setStyledText wref s gp = do+--   setValue wref "" gp+--   appendStyledText wref s gp++-- appendStyledText :: WidgetRef -> String -> GuiPort -> IO ()+-- appendStyledText wref s gp+--   = interpret styles (>>) (++) append [([],[],[])] s+--  where+--   append [] cs = appendValue wref cs gp+--   append st@(_:_) cs = appendStyledValue wref cs st gp++--   styles = [[Bold],[Underline]] ++ +--            map ((:[]) . Fg) colors ++ +--            map ((:[]) . Bg) colors++--   colors = [Black,Blue,Turquoise,Green,Purple,Red,White,Gold]+{-+styledHtml :: String -> [HtmlExp]+styledHtml = interpret styles (++) combine span [("","","")]+ where+  combine x y = x ++ " " ++ y+  span style s+    | all isSpace style = [htxt s]+    | otherwise = [HtmlStruct "span" [("style",style)] [htxt s]]++  styles = ["font-weight: bold;","text-decoration: underline;"]+        ++ map (\c -> "color: " ++ c ++ ";") colors+        ++ map (\c -> "background-color: " ++ c ++ ";") colors++  colors = ["black","blue","cyan","green","magenta","red","white","yellow"]+-}+-- main = do+--   printStyledText text+--   writeFile "StyledText.html"+--     (showHtmlPage (HtmlPage "StyledText" [] [styledHtml text]))+--   runInitGUI "StyledText"+--     (col [TextEdit [WRef ref, Width 40, Height 40]]) init+--  where+--   ref free+--   init = setStyledText ref text+--   text = unlines $ map (uncurry ($))+--     [(bold,"bold"),(underline,"underline")+--     ,(black,"black"),(blue,"blue"),(cyan,"cyan"),(green,"green")+--     ,(magenta,"magenta"),(red,"red"),(white,"white"),(yellow,"yellow")+--     ,(bgBlack,"bgBlack"),(bgBlue,"bgBlue"),(bgCyan,"bgCyan"),(bgGreen,"bgGreen")+--     ,(bgMagenta,"bgMagenta"),(bgRed,"bgRed"),(bgWhite,"bgWhite")+--     ,(bgYellow,"bgYellow")]
+ src/lib/Curry/Module/System.curry view
@@ -0,0 +1,116 @@+------------------------------------------------------------------------------+--- Library to access parts of the system environment.+---+--- @author Michael Hanus, Bernd Brassel+--- @version August 2007+------------------------------------------------------------------------------++module System(getCPUTime,getElapsedTime,+              getArgs,getEnviron,setEnviron,unsetEnviron,+              getHostname,getPID,getProgName,+              system,exitWith,sleep) where++import Global++--- Returns the current cpu time of the process in milliseconds.++getCPUTime :: IO Int+getCPUTime external+ +--- Returns the current elapsed time of the process in milliseconds.++getElapsedTime :: IO Int+getElapsedTime external+ +--- Returns the list of the program's command line arguments.+--- The program name is not included.++getArgs :: IO [String]+getArgs external+ +--- Returns the value of an environment variable.+--- The empty string is returned for undefined environment variables.++getEnviron :: String -> IO String+getEnviron evar = do+  envs <- readGlobal environ+  maybe (prim_getEnviron $## evar) return (lookup evar envs)+  +prim_getEnviron :: String -> IO String+prim_getEnviron external+ +--- internal state of environment variables set via setEnviron+environ :: Global [(String,String)]+environ = global [] Temporary++--- Set an environment variable to a value.+--- The new value will be passed to subsequent shell commands+--- (see <code>system</code>) and visible to subsequent calls to+--- <code>getEnviron</code> (but it is not visible in the environment+--- of the process that started the program execution).++setEnviron :: String -> String -> IO ()+setEnviron evar val = do+  envs <- readGlobal environ+  writeGlobal environ ((evar,val) : filter ((/=evar) . fst) envs)+ +--- Removes an environment variable that has been set by+--- <code>setEnviron</code>.++unsetEnviron :: String -> IO ()+unsetEnviron evar = do+  envs <- readGlobal environ+  writeGlobal environ (filter ((/=evar) . fst) envs)+ +--- Returns the hostname of the machine running this process.++getHostname :: IO String+getHostname external++--- Returns the process identifier of the current Curry process.++getPID :: IO Int+getPID external+++--- Returns the name of the current program, i.e., the name of the+--- main module currently executed.++getProgName :: IO String+getProgName external+++--- Executes a shell command and return with the exit code of the command.+--- An exit status of zero means successful execution.++system :: String -> IO Int+system cmd = do+   envs <- readGlobal environ+   prim_system $## (concatMap set envs ++ cmd)+ where+   set (var,val) = "export "++var++"="++val++"; "++prim_system :: String -> IO Int+prim_system external+++--- Terminates the execution of the current Curry program+--- and returns the exit code given by the argument.+--- An exit code of zero means successful execution.++exitWith :: Int -> IO _+exitWith exitcode = prim_exitWith $# exitcode++prim_exitWith :: Int -> IO _+prim_exitWith external+++--- The evaluation of the action (sleep n) puts the Curry process+--- asleep for n seconds.++sleep :: Int -> IO ()+sleep n = prim_sleep $# n++prim_sleep :: Int -> IO ()+prim_sleep external+
+ src/lib/Curry/Module/System.hs.include view
@@ -0,0 +1,68 @@+[ForFunction "getCPUTime"+,ForFunction "getElapsedTime"+,ForFunction "getArgs"+,ForFunction "prim_getEnviron"+,ForFunction "getHostname"+,ForFunction "getPID"+,ForFunction "getProgName"+,ForFunction "prim_system"+,ForFunction "prim_sleep"+,ForFunction "prim_exitWith"+]++import qualified System.Environment as SE+import qualified System.CPUTime as SC+import System.Cmd+import System.Exit+import qualified Network.BSD as NB+import System.Posix.Process++instance ConvertCH C_Int ExitCode where+   toCurry ExitSuccess = toCurry (0::Integer)+   toCurry (ExitFailure i) = toCurry i++   fromCurry i = if hi Prelude.== 0 then ExitSuccess else ExitFailure hi+     where hi = fromCurry i++getCPUTime :: Result (C_IO C_Int)+getCPUTime = ioFunc0 (SC.getCPUTime Prelude.>>= Prelude.return . (`div` 1000000000))++getElapsedTime :: Result (C_IO C_Int)+getElapsedTime = error "getElapsedTime not provided"++getArgs :: Result (C_IO (List (List C_Char)))+getArgs = ioFunc0 SE.getArgs++prim_getEnviron :: (List C_Char) -> Result (C_IO (List C_Char))+prim_getEnviron = +  ioFunc1 (\s -> do+             env <- SE.getEnvironment+             case Prelude.lookup s env of+              Nothing -> Prelude.return ""+              Just v  -> Prelude.return v)++getHostname :: Result (C_IO (List C_Char))+getHostname = ioFunc0 NB.getHostName++getPID :: Result (C_IO C_Int)+getPID = ioFunc0 (do+                    pid <- getProcessID +                    Prelude.return (toInteger pid))++getProgName :: Result (C_IO (List C_Char))+getProgName = ioFunc0 (Curry.RunTimeSystem.getProgName)+  -- conform with haskell would be: SE.getProgName++prim_system :: (List C_Char) -> Result (C_IO C_Int)+prim_system = ioFunc1 system++prim_sleep :: C_Int -> Result (C_IO T0)+prim_sleep = ioFunc1 (\ t -> do+                          system ("sleep "++Prelude.show (t::Integer)) +                          Prelude.return ())++prim_exitWith :: Curry a => C_Int -> Result (C_IO a)+prim_exitWith e _ = C_IO (\ _ -> do+  ex <- exitWith (fromCurry e) +  Prelude.return (IOVal ex))+
+ src/lib/Curry/Module/TableRBT.curry view
@@ -0,0 +1,51 @@+---------------------------------------------------------------------------+--- Library with an implementation of tables as red-black trees:+--- <P>+--- A table is a finite mapping from keys to values.+--- All the operations on tables are generic, i.e., one has to provide+--- an explicit order predicate ("<CODE>cmp</CODE>" below) on elements.+--- Each inner node in the red-black tree contains a key-value association.+--- +--- @author Johannes Koj, Michael Hanus, Bernd Braßel+--- @version March 2005+----------------------------------------------------------------------------++module TableRBT where++import qualified RedBlackTree as RBT++----------------------------------------------------------------------------+-- the main interface:++type TableRBT key a = RBT.RedBlackTree (key,a) ++--- Returns an empty table, i.e., an empty red-black tree.+emptyTableRBT :: (a -> a -> Bool) -> TableRBT a _ +emptyTableRBT lt = RBT.empty (\ x y -> fst x==fst y) +                             (\ x y -> fst x==fst y)+                             (\ x y -> lt (fst x) (fst y))++--- tests whether a given table is empty+isEmptyTable :: TableRBT _ _ -> Bool+isEmptyTable = RBT.isEmpty++--- Looks up an entry in a table.+--- @param k - a key under which a value is stored+--- @param t - a table (represented as a red-black tree)+--- @return (Just v) if v is the value stored with key k,+---         otherwise Nothing is returned.+lookupRBT :: key -> TableRBT key a -> Maybe a+lookupRBT k = maybe Nothing (Just . snd) . RBT.lookup (k,failed)++--- Inserts or updates an element in a table.+updateRBT :: key -> a -> TableRBT key a -> TableRBT key a+updateRBT k e = RBT.update (k,e)++--- Transforms the nodes of red-black tree into a list.+tableRBT2list :: TableRBT key a -> [(key,a)]+tableRBT2list = RBT.tree2list++deleteRBT :: key -> TableRBT key a -> TableRBT key a+deleteRBT key = RBT.delete (key,failed)++-- end of TableRBT
+ src/lib/Curry/Module/Time.curry view
@@ -0,0 +1,180 @@+------------------------------------------------------------------------------+--- Library for handling date and time information.+---+--- @author Michael Hanus+--- @version April 2007+------------------------------------------------------------------------------++module Time(ClockTime,+            CalendarTime(..),ctYear,ctMonth,ctDay,ctHour,ctMin,ctSec,ctTZ,+            getClockTime,getLocalTime,toUTCTime,toClockTime,toCalendarTime,+            clockTimeToInt,calendarTimeToString,toDayString,toTimeString,+            addSeconds,addMinutes,addHours,addDays,addMonths,addYears,+            daysOfMonth,validDate,compareCalendarTime,compareClockTime,+            compareDate) where+++--- ClockTime represents a clock time in some internal representation.+data ClockTime = CTime Int++--- A calendar time is presented in the following form:+--- (CalendarTime year month day hour minute second timezone)+--- where timezone is an integer representing the timezone as a difference+--- to UTC time in seconds.+data CalendarTime = CalendarTime Int Int Int Int Int Int Int++--- The year of a calendar time.+ctYear :: CalendarTime -> Int+ctYear (CalendarTime y _ _ _ _ _ _) = y++--- The month of a calendar time.+ctMonth :: CalendarTime -> Int+ctMonth (CalendarTime _ m _ _ _ _ _) = m++--- The day of a calendar time.+ctDay :: CalendarTime -> Int+ctDay (CalendarTime _ _ d _ _ _ _) = d++--- The hour of a calendar time.+ctHour :: CalendarTime -> Int+ctHour (CalendarTime _ _ _ h _ _ _) = h++--- The minute of a calendar time.+ctMin :: CalendarTime -> Int+ctMin (CalendarTime _ _ _ _ m _ _) = m++--- The second of a calendar time.+ctSec :: CalendarTime -> Int+ctSec (CalendarTime _ _ _ _ _ s _) = s++--- The time zone of a calendar time. The value of the+--- time zone is the difference to UTC time in seconds.+ctTZ :: CalendarTime -> Int+ctTZ (CalendarTime _ _ _ _ _ _ tz) = tz+++--- Returns the current clock time.+getClockTime :: IO ClockTime+getClockTime external++--- Returns the local calendar time.+getLocalTime :: IO CalendarTime+getLocalTime = do+  ctime <- getClockTime+  toCalendarTime ctime++--- Transforms a clock time into a unique integer.+--- It is ensured that clock times that differs in at least one second+--- are mapped into different integers.+clockTimeToInt :: ClockTime -> Int+clockTimeToInt (CTime i) = i++--- Transforms a clock time into a calendar time according to the local time+--- (if possible). Since the result depends on the local environment,+--- it is an I/O operation.+toCalendarTime :: ClockTime -> IO CalendarTime+toCalendarTime ctime = prim_toCalendarTime $## ctime++prim_toCalendarTime :: ClockTime -> IO CalendarTime+prim_toCalendarTime external++--- Transforms a clock time into a standard UTC calendar time.+--- Thus, this operationa is independent on the local time.+toUTCTime :: ClockTime -> CalendarTime+toUTCTime ctime = prim_toUTCTime $## ctime++prim_toUTCTime :: ClockTime -> CalendarTime+prim_toUTCTime external++--- Transforms a calendar time (interpreted as UTC time) into a clock time.+toClockTime :: CalendarTime -> ClockTime+toClockTime d = prim_toClockTime $## d++prim_toClockTime :: CalendarTime -> ClockTime+prim_toClockTime external++--- Transforms a calendar time into a readable form.+calendarTimeToString :: CalendarTime -> String+calendarTimeToString ctime@(CalendarTime y mo d _ _ _ _) =+    shortMonths!!(mo-1) ++ " " ++ show d ++ " " +++    toTimeString ctime ++ " " ++ show y+  where shortMonths = ["Jan","Feb","Mar","Apr","May","Jun",+                       "Jul","Aug","Sep","Oct","Nov","Dec"]++--- Transforms a calendar time into a string containing the day, e.g.,+--- "September 23, 2006".+toDayString :: CalendarTime -> String+toDayString (CalendarTime y mo d _ _ _ _) =+    longMonths!!(mo-1) ++ " " ++ show d ++ ", " ++ show y+  where longMonths = ["January","February","March","April","May","June","July",+                      "August","September","October","November","December"]++--- Transforms a calendar time into a string containing the time.+toTimeString :: CalendarTime -> String+toTimeString (CalendarTime _ _ _ h mi s _) =+   digit2 h ++":"++ digit2 mi ++":"++ digit2 s+  where digit2 n = if n<10 then ['0',chr(ord '0' + n)]+                           else show n++--- Adds seconds to a given time.+addSeconds :: Int -> ClockTime -> ClockTime+addSeconds n (CTime ctime) = CTime (ctime + n)++--- Adds minutes to a given time.+addMinutes :: Int -> ClockTime -> ClockTime+addMinutes n (CTime ctime) = CTime (ctime + (n*60))++--- Adds hours to a given time.+addHours :: Int -> ClockTime -> ClockTime+addHours n (CTime ctime) = CTime (ctime + (n*3600))++--- Adds days to a given time.+addDays :: Int -> ClockTime -> ClockTime+addDays n (CTime ctime) = CTime (ctime + (n*86400))++--- Adds months to a given time.+addMonths :: Int -> ClockTime -> ClockTime+addMonths n ctime =+ let CalendarTime y mo d h mi s tz = toUTCTime ctime+     nmo = (mo-1+n) `mod` 12 + 1+ in+ if nmo>0+ then addYears ((mo-1+n) `div` 12)+               (toClockTime (CalendarTime y nmo d h mi s tz))+ else addYears ((mo-1+n) `div` 12 - 1)+               (toClockTime (CalendarTime y (nmo+12) d h mi s tz))++--- Adds years to a given time.+addYears :: Int -> ClockTime -> ClockTime+addYears n ctime = if n==0 then ctime else+  let CalendarTime y mo d h mi s tz = toUTCTime ctime+   in toClockTime (CalendarTime (y+n) mo d h mi s tz)++--- Gets the days of a month in a year.+daysOfMonth :: Int -> Int -> Int+daysOfMonth mo yr =+  if mo/=2 +  then [31,28,31,30,31,30,31,31,30,31,30,31] !! (mo-1)+  else if yr `mod` 4 == 0 && (yr `mod` 100 /= 0 || yr `mod` 400 == 0)+       then 29+       else 28++--- Is a date consisting of year/month/day valid?+validDate :: Int -> Int -> Int -> Bool+validDate y m d = m > 0 && m < 13 && d > 0 && d <= daysOfMonth m y++--- Compares two dates (don't use it, just for backward compatibility!).+compareDate :: CalendarTime -> CalendarTime -> Ordering+compareDate = compareCalendarTime++--- Compares two calendar times.+compareCalendarTime :: CalendarTime -> CalendarTime -> Ordering+compareCalendarTime ct1 ct2 =+  compareClockTime (toClockTime ct1) (toClockTime ct2)++--- Compares two clock times.+compareClockTime :: ClockTime -> ClockTime -> Ordering+compareClockTime (CTime time1) (CTime time2)+ | time1<time2 = LT+ | time1>time2 = GT+ | otherwise   = EQ
+ src/lib/Curry/Module/Time.hs.include view
@@ -0,0 +1,43 @@+[ForFunction "getClockTime"]++import System.Time hiding (getClockTime)+import qualified System.Time (getClockTime) +import Ix++instance ConvertCH C_ClockTime ClockTime where+  fromCurry (C_CTime i) = TOD (fromCurry i) 0+  toCurry (TOD i _) = C_CTime (toCurry i)++instance ConvertCH C_CalendarTime CalendarTime where+  fromCurry (C_CalendarTime y m d h min s tz ) = +             CalendarTime (fromCurry y) +                          (toEnum (fromCurry m-1))+                          (fromCurry d)+                          (fromCurry h)+                          (fromCurry min)+                          (fromCurry s)+                          0 undefined undefined undefined+                          (fromCurry tz)+                          undefined+           +  toCurry (CalendarTime y m d h min s _ _ _ _ tz _) = +          C_CalendarTime (toCurry y) +                         (toCurry (fromEnum m)+1) +                         (toCurry d)+                         (toCurry h)+                         (toCurry min)+                         (toCurry s)+                         (toCurry tz)+++getClockTime :: Result (C_IO C_ClockTime)+getClockTime = ioFunc0 (System.Time.getClockTime)++prim_toCalendarTime :: C_ClockTime -> Result (C_IO C_CalendarTime)+prim_toCalendarTime = ioFunc1 toCalendarTime++prim_toUTCTime :: C_ClockTime -> Result C_CalendarTime+prim_toUTCTime = extFunc1 toUTCTime++prim_toClockTime :: C_CalendarTime -> Result C_ClockTime+prim_toClockTime x _ = toCurry (toClockTime (fromCurry x))
+ src/lib/Curry/Module/Traversal.curry view
@@ -0,0 +1,155 @@+---------------------------------------------------------------------------+--- Library to support lightweight generic traversals+--- through tree-structured data.+--- See <a href="http://www-ps.informatik.uni-kiel.de/~sebf/projects/traversal.html">here</a>+--- for a description of the library.+---+--- @author Sebastian Fischer+--- @version February 2008+---------------------------------------------------------------------------++module Traversal (++  Traversable, noChildren,++  children, replaceChildren, mapChildren,++  family, childFamilies, mapFamily, mapChildFamilies,++  evalFamily, evalChildFamilies, fold, foldChildren,++  replaceChildrenIO, mapChildrenIO, mapFamilyIO, mapChildFamiliesIO,++  evalFamilyIO, evalChildFamiliesIO++  ) where++--- A datatype is <code>Traversable</code> if it defines a function+--- that can decompose a value into a list of children of the same type+--- and recombine new children to a new value of the original type. +---+type Traversable a b = a -> ([b], [b] -> a)++--- Traversal function for constructors without children.+---+noChildren :: Traversable _ _+noChildren x = ([], const x)++--- Yields the children of a value.+---+children :: Traversable a b -> a -> [b]+children tr = fst . tr++--- Replaces the children of a value.+--- +replaceChildren :: Traversable a b -> a -> [b] -> a+replaceChildren tr = snd . tr++--- Applies the given function to each child of a value.+---+mapChildren :: Traversable a b -> (b -> b) -> a -> a+mapChildren tr f x = replaceChildren tr x (map f (children tr x))++--- Computes a list of the given value, its children, those children, etc.+---+family :: Traversable a a -> a -> [a]+family tr x = familyFL tr x []++--- Computes a list of family members of the children of a value.+--- The value and its children can have different types.+---+childFamilies :: Traversable a b -> Traversable b b -> a -> [b]+childFamilies tra trb x = childFamiliesFL tra trb x [] ++--- Applies the given function to each member of the family of a value.+--- Proceeds bottom-up.+---+mapFamily :: Traversable a a -> (a -> a) -> a -> a+mapFamily tr f = f . mapChildFamilies tr tr f++--- Applies the given function to each member of the families of the children+--- of a value. The value and its children can have different types.+--- Proceeds bottom-up.+---+mapChildFamilies :: Traversable a b -> Traversable b b -> (b -> b) -> a -> a+mapChildFamilies tra trb = mapChildren tra . mapFamily trb++--- Applies the given function to each member of the family of a value +--- as long as possible. On each member of the family of the result the given+--- function will yield <code>Nothing</code>.+--- Proceeds bottom-up.+---+evalFamily :: Traversable a a -> (a -> Maybe a) -> a -> a+evalFamily tr f = mapFamily tr g+ where g x = maybe x (mapFamily tr g) (f x)++--- Applies the given function to each member of the families of the children+--- of a value as long as possible.+--- Similar to 'evalFamily'.+---+evalChildFamilies :: Traversable a b -> Traversable b b+                  -> (b -> Maybe b) -> a -> a+evalChildFamilies tra trb = mapChildren tra . evalFamily trb++--- Implements a traversal similar to a fold with possible default cases.+---+fold :: Traversable a a -> (a -> [r] -> r) -> a -> r+fold tr f = foldChildren tr tr f f++--- Fold the children and combine the results.+---+foldChildren :: Traversable a b -> Traversable b b+             -> (a -> [rb] -> ra) -> (b -> [rb] -> rb) -> a -> ra+foldChildren tra trb f g a = f a (map (fold trb g) (children tra a))++--- IO version of replaceChildren+---+replaceChildrenIO :: Traversable a b -> a -> IO [b] -> IO a+replaceChildrenIO tr = liftIO . replaceChildren tr++--- IO version of mapChildren+---+mapChildrenIO :: Traversable a b -> (b -> IO b) -> a -> IO a+mapChildrenIO tr f a = replaceChildrenIO tr a (mapIO f (children tr a))++--- IO version of mapFamily+---+mapFamilyIO :: Traversable a a -> (a -> IO a) -> a -> IO a+mapFamilyIO tr f a = mapChildFamiliesIO tr tr f a >>= f++--- IO version of mapChildFamilies+---+mapChildFamiliesIO :: Traversable a b -> Traversable b b+                   -> (b -> IO b) -> a -> IO a+mapChildFamiliesIO tra trb = mapChildrenIO tra . mapFamilyIO trb++--- IO version of evalFamily+---+evalFamilyIO :: Traversable a a -> (a -> IO (Maybe a)) -> a -> IO a+evalFamilyIO tr f = mapFamilyIO tr g+ where g a = f a >>= maybe (return a) (mapFamilyIO tr g)++--- IO version of evalChildFamilies+---+evalChildFamiliesIO :: Traversable a b -> Traversable b b+                    -> (b -> IO (Maybe b)) -> a -> IO a+evalChildFamiliesIO tra trb = mapChildrenIO tra . evalFamilyIO trb+++-- implementation of 'family' with functional lists for efficiency reasons++type FunList a = [a] -> [a]++concatFL :: [FunList a] -> FunList a+concatFL [] ys = ys+concatFL (x:xs) ys = x (concatFL xs ys)++familyFL :: Traversable a a -> a -> FunList a+familyFL tr x xs = x : childFamiliesFL tr tr x xs++childFamiliesFL :: Traversable a b -> Traversable b b -> a -> FunList b+childFamiliesFL tra trb x xs = concatFL (map (familyFL trb) (children tra x)) xs++liftIO :: (a -> b) -> IO a -> IO b+liftIO f ioa = ioa >>= return . f+
+ src/lib/Curry/Module/Unsafe.curry view
@@ -0,0 +1,181 @@+------------------------------------------------------------------------------+--- Library containing unsafe operations.+--- These operations should be carefully used (e.g., for testing or debugging).+--- These operations should not be used in application programs!+---+--- @author Michael Hanus+--- @version April 2005+------------------------------------------------------------------------------++module Unsafe (unsafePerformIO,trace,spawnConstraint,isVar,identicalVar,+              showAnyTerm,showAnyQTerm,showAnyExpression,showAnyQExpression,+              readsAnyUnqualifiedTerm,readAnyUnqualifiedTerm,readsAnyQTerm,+              readAnyQTerm,generateChoice,+              OrRef,try,orsWithOrRef,nrOfChoices+             )+ where++import Char(isSpace)+import Meta++--- Performs and hides an I/O action in a computation (use with care!).+unsafePerformIO :: IO a -> a+unsafePerformIO act = prim_unsafePerformIO $# act++prim_unsafePerformIO :: IO a -> a+prim_unsafePerformIO external++--- Prints the first argument as a side effect and behaves as identity on the+--- second argument.+trace :: String -> a -> a+trace s x = unsafePerformIO (putStr s >> return x)++--- Spawns a constraint and returns the second argument.+--- This function can be considered as defined by+--- "<code>spawnConstraint c x | c = x</code>".+--- However, the evaluation of the constraint and the right-hand side+--- are performed concurrently, i.e., a suspension of the constraint+--- does not imply a blocking of the right-hand side and the+--- right-hand side might be evaluated before the constraint is successfully+--- solved.+--- Thus, a computation might return a result even if some of the+--- spawned constraints are suspended (use the PAKCS/Curry2Prolog option+--- "<code>+suspend</code>" to show such suspended goals).+spawnConstraint :: Success -> a -> a+spawnConstraint external++--- Tests whether the first argument evaluates to a currently unbound+--- variable (use with care!).+isVar :: _ -> Bool+isVar v = unsafePerformIO +            (isFree v >>= return . either (const True) (const False))++prim_isVar :: _ -> Bool+prim_isVar external+++--- Tests whether both arguments evaluate to the identical currently unbound+--- variable (use with care!).+--- For instance, <code>identicalVar (id x) (fst (x,1))</code> evaluates to+--- <code>True</code> whereas <code>identicalVar x y</code> and+--- <code>let x=1 in identicalVar x x</code> evaluate to <code>False</code>+identicalVar :: a -> a -> Bool+identicalVar x y = (prim_identicalVar $! x) $! y++--- <code>let x=1 in identicalVar x x</code> evaluate to <code>False</code>+prim_identicalVar :: a -> a -> Bool+prim_identicalVar external+++--- Transforms the normal form of a term into a string representation+--- in standard prefix notation.+--- Thus, showAnyTerm evaluates its argument to normal form.+--- This function is similar to the function <code>ReadShowTerm.showTerm</code>+--- but it also transforms logic variables into a string representation+--- that can be read back by <code>Unsafe.read(s)AnyUnqualifiedTerm</code>.+--- Thus, the result depends on the evaluation and binding status of+--- logic variables so that it should be used with care!+showAnyTerm :: _ -> String+showAnyTerm x = prim_showAnyTerm $!! x++prim_showAnyTerm :: _ -> String+prim_showAnyTerm external++--- Transforms the normal form of a term into a string representation+--- in standard prefix notation.+--- Thus, showAnyQTerm evaluates its argument to normal form.+--- This function is similar to the function <code>ReadShowTerm.showQTerm</code>+--- but it also transforms logic variables into a string representation+--- that can be read back by <code>Unsafe.read(s)AnyQTerm</code>.+--- Thus, the result depends on the evaluation and binding status of+--- logic variables so that it should be used with care!+showAnyQTerm :: _ -> String+showAnyQTerm x = prim_showAnyQTerm $!! x++prim_showAnyQTerm :: _ -> String+prim_showAnyQTerm external+++--- Transform a string containing a term in standard prefix notation+--- without module qualifiers into the corresponding data term.+--- The string might contain logical variable encodings produced by showAnyTerm.+--- In case of a successful parse, the result is a one element list+--- containing a pair of the data term and the remaining unparsed string.++readsAnyUnqualifiedTerm :: [String] -> String -> [(_,String)]+readsAnyUnqualifiedTerm [] _ =+  error "ReadShowTerm.readsAnyUnqualifiedTerm: list of module prefixes is empty"+readsAnyUnqualifiedTerm (prefix:prefixes) s =+  readsAnyUnqualifiedTermWithPrefixes (prefix:prefixes) s++readsAnyUnqualifiedTermWithPrefixes :: [String] -> String -> [(_,String)]+readsAnyUnqualifiedTermWithPrefixes prefixes s = +  (prim_readsAnyUnqualifiedTerm $## prefixes) $## s++prim_readsAnyUnqualifiedTerm :: [String] -> String -> [(_,String)]+prim_readsAnyUnqualifiedTerm external+++--- Transforms a string containing a term in standard prefix notation+--- without module qualifiers into the corresponding data term.+--- The string might contain logical variable encodings produced by showAnyTerm.++readAnyUnqualifiedTerm :: [String] -> String -> _+readAnyUnqualifiedTerm prefixes s = case result of+  [(term,tail)]+     -> if all isSpace tail then term+        else error ("Unsafe.readAnyUnqualifiedTerm: no parse, unmatched string after term: "++tail)+  [] ->  error "Unsafe.readAnyUnqualifiedTerm: no parse"+  _  ->  error "Unsafe.readAnyUnqualifiedTerm: ambiguous parse"+ where result = readsAnyUnqualifiedTerm prefixes s++--- Transforms a string containing a term in standard prefix notation+--- with qualified constructor names into the corresponding data term.+--- The string might contain logical variable encodings produced by showAnyQTerm.+--- In case of a successful parse, the result is a one element list+--- containing a pair of the data term and the remaining unparsed string.++readsAnyQTerm :: String -> [(_,String)]+readsAnyQTerm s = prim_readsAnyQTerm $## s++prim_readsAnyQTerm :: String -> [(_,String)]+prim_readsAnyQTerm external++--- Transforms a string containing a term in standard prefix notation+--- with qualified constructor names into the corresponding data term.+--- The string might contain logical variable encodings produced by showAnyQTerm.++readAnyQTerm :: String -> _+readAnyQTerm s = case result of+  [(term,tail)] -> if all isSpace tail then term+                   else error "Unsafe.readAnyQTerm: no parse"+  [] ->  error "Unsafe.readAnyQTerm: no parse"+  _  ->  error "Unsafe.readAnyQTerm: ambiguous parse"+ where result = readsAnyQTerm s+++--- Transforms any expression (even not in normal form) into a string representation+--- in standard prefix notation without module qualifiers.+--- The result depends on the evaluation and binding status of+--- logic variables so that it should be used with care!+showAnyExpression :: _ -> String+showAnyExpression external++--- Transforms any expression (even not in normal form) into a string representation+--- in standard prefix notation with module qualifiers.+--- The result depends on the evaluation and binding status of+--- logic variables so that it should be used with care!+showAnyQExpression :: _ -> String+showAnyQExpression external++try :: a -> Either a (OrRef,[a])+try external++orsWithOrRef :: OrRef -> [a] -> a+orsWithOrRef external++generateChoice :: [a] -> a+generateChoice external++nrOfChoices :: IO Int+nrOfChoices external
+ src/lib/Curry/Module/Unsafe.hs.include view
@@ -0,0 +1,118 @@+[ForFunction "prim_unsafePerformIO"+,ForFunction "spawnConstraint"+,ForFunction "prim_isVar"+,ForFunction "prim_identicalVar"+,ForFunction "prim_showAnyTerm"+,ForFunction "prim_showAnyQTerm"+,ForFunction "prim_readsAnyUnqualifiedTerm"+,ForFunction "prim_readsAnyQTerm"+,ForFunction "showAnyExpression"+,ForFunction "showAnyQExpression"+]++import System.IO.Unsafe +import Data.IORef++prim_isVar :: Curry a => a -> Result C_Bool+prim_isVar x _ = case consKind x of+  Branching -> toCurry (isGenerator (orRef x))+  _         -> C_False++prim_unsafePerformIO :: Curry a => C_IO a -> Result a+prim_unsafePerformIO (C_IO action) st = unsafe (unsafePerformIO (action st)) st+ ++unsafe :: Curry a => IOVal a -> Result a+unsafe (IOVal v)        _  = v+unsafe (IOValFail e)    _  = Curry.RunTimeSystem.failed e+unsafe (IOValOr r bs)   st = mapOr (\ x -> unsafe (unsafePerformIO x)) r bs st+{-+-- the main point about unsafe:  the value of suspensions has to be stored.+unsafe (IOValSusp _ susp) = let sRef = nextSuspRef () in+  suspend False  (saveSuspValue sRef (const (tra sRef "cont" unsafe)) +                                (\st -> tra sRef "" (unsafePerformIO (susp (Just st)))))++-- Sometimes we have to make sure that suspensions are not evaluated twice.+-- Most notably this is true for suspended unsafely performed io actions .+-- This function saves its result in the store and retrieves it whenever +-- called. Only when there has been no value stored yet, the given suspension +-- is called with the store.+-- Saving suspensions values this way is a bit complicated.+-- First, look if suspension already lifted from somewhere else. +--   if so, the result has already been stored+--   if not, test if suspension can be lifted with given store+--             if so, call cont and save result in store (shared!)+--             if not, test if suspension did at least something (test sref)+--                        if so, recursive call with new suspension+--                        if not, suspend with given sRef "done Nothing"+saveSuspValue :: (Curry a,Curry b) => +             FreeVarRef -> (State -> a -> b) -> (Store -> a) -> Store -> b+saveSuspValue sRef cont susp store = +  trace "saveSuspValue " $+  case fromStore store sRef of+     Nothing -> trace "saveSusp: Nothing" $ let x = susp store in+       case consKind x of+        Suspended -> if suspRef x then saveSuspValue sRef cont (suspCont x) store +                                  else suspend False (saveSuspValue sRef cont (suspCont x))+        _ -> tr "saveSusp: not suspended" $ let res = cont (Just store) x in+          branching (nextOrRef ())+                [(\st -> Modified (addToStore st sRef res),trace "saveSusp: res" res)]+     Just v -> trace "saveSusp: Just" trV v v+  where+    tr = tra sRef+    trV x =  case consKind x of+       Branching -> case branches x of+                     [(_,b)] -> trV b+                     bs -> trace $ "Branch length " ++ (show $ length bs)+       ck -> tr (show ck)++-}++prim_identicalVar :: Curry a => a  -> a -> Result C_Bool+prim_identicalVar x y _ = case (consKind x,consKind y) of+  (Branching,Branching) -> let rx = orRef x+                               ry = orRef y in+                           if isGenerator rx && isGenerator ry+                           then toCurry (deref rx Prelude.== deref ry)+                           else C_False+  _                     -> C_False+++prim_showAnyTerm t _ = toCurry (show t)++prim_showAnyQTerm :: Curry a => a -> Result C_String+prim_showAnyQTerm x _ = toCurry (showQ 0 x "")++prim_readsAnyUnqualifiedTerm = error "ExternalFunctionsUnsafe.prim_readsAnyUnqualifiedTerm"++prim_readsAnyQTerm = error "ExternalFunctionsUnsafe.prim_readsAnyQTerm"++showAnyExpression = error "ExternalFunctionsUnsafe.prim_showAnyExpression"+++showAnyQExpression = error "ExternalFunctionsUnsafe.prim_showAnyQExpression"++--spawnConstraint :: Curry a => C_Success -> a -> a+spawnConstraint _ c x = undefined ++try :: Curry a => a -> Result (C_Either a (T2 C_OrRef (List a)))+try x _ = case consKind x of+          Val       -> C_Left x+          Branching -> C_Right (T2 (C_OrRef (orRef x)) +                                   (fromHaskellList (branches x)))+          c -> error ("try: consKind is "++show c)++orsWithOrRef :: Curry a => C_OrRef -> List a -> Result a+orsWithOrRef (C_OrRef r) xs _ = branching r (toHaskellList xs)++generateChoice :: Curry a => List a -> Result a+generateChoice xs _ = branching (mkRef 0 0 (nextRef 0)) (toHaskellList xs)+++nrOfChoices :: Result (C_IO C_Int)+nrOfChoices st = +  C_IO (\ st' -> Prelude.return (IOVal (toCurry (max (size' st) (size' st')))))+  where+    size' = storeSize ++